Cpio
RPM Package Manager (dawniej też Red Hat Package Manager, skrót RPM) – program służący do zarządzania (instalacji, aktualizacji, usuwania) pakietami zawierającymi oprogramowanie lub dane, oraz nazwa tych pakietów (ponieważ mają one rozszerzenie .rpm). Pakiety RPM zawierają skompresowane (we wczesnych wersjach gzipem, w nowszych bzipem2 albo LZMA) archiwum cpio zawierające dane. Posiadają także dodatkowe informacje na temat zawartości, m.in. zależności (ang. dependencies) - czyli spis programów (bibliotek) lub pakietów, które są wymagane do zainstalowania i poprawnej pracy pakietu (działa to także w druga stronę - pakiety później zainstalowane wymagające danego pakietu, uniemożliwiają jego odinstalowanie), a także sugestie dotyczące współpracy z innymi pakietami.Program do kompresji plików – program do kodowania danych w taki sposób, aby zajmowały jak najmniej danych na dysku.
tar (nazwa pochodzi od angielskiego Tape ARchiver – ARchiwizator Taśmowy) - uniksowy program do umieszczania grupy plików w jednym zbiorczym pliku (tzw. archiwum), który następnie może zostać skompresowany programami gzip, bzip2, compress lub lzma, co daje odpowiednio pliki .tar.gz (w skrócie .tgz), .tar.bz2, .tar.Z, i .tar.lzma. Istnieją również inne algorytmy kompresji które można zastosować po spakowaniu przy pomocy programu tar (narzędzia takie wtedy są prostsze, ponieważ nie muszą zajmować się nazwami plików, dowiązaniami, katalogami, prawami dostępu, co wykonuje sam program tar, i pozostawiając sobie kompresje tylko jednego pliku/strumienia). Dodawany do archiwum tar plik jest zawsze umieszczany na jego końcu.
cpio – archiwizator plików i format plików.
Oprogramowanie cpio zostało stworzone by archiwizować dane na taśmach magnetycznych i jako takie, było częścią PWB/UNIX, jak również częścią UNIX System III i UNIX Systemu V. Jednak użycie formatu tar, jego szeroko dostępnego odpowiednika, zostało uznane za lepszy wybór. Format cpio jest wykorzystywany m.in. wewnątrz pakietów RPM a Oracle Corporation rozprowadza znaczną część swojego oprogramowania w tym formacie.
Archiwum cpio[ | edytuj kod]
Archiwum cpio jest strumieniem plików i katalogów w jednym pliku, którego nazwa często kończy się rozszerzeniem .cpio. Archiwum posiada nagłówek, który pozwala aplikacjom, takim jak GNU cpio, na wyodrębnienie plików i katalogów do systemu plików. Nagłówek zawiera także informacje o nazwach plików, znacznikach czasu, właścicielach i uprawnieniach.
Archiwum cpio jest podobne w funkcjonowaniu do archiwum tar i zostało stworzone by przechowywać kopie na taśmach w przylegający sposób. Podobnie do formatu tar, archiwa cpio są często kompresowane przy użyciu programu Gzip i rozprowadzane jako pliki .cpgz.
POSIX i cpio[ | edytuj kod]
Program cpio został ujednolicony w POSIX.1-1988. Zostało to porzucone w późniejszej rewizji, począwszy od POSIX.1-2001 ze względu na 8 GB limit pliku. Zamiast niego można użyć programu pax, który jest zgodny ze standardem POSIX, do odczytu i zapisu archiwów cpio.
GNU cpio[ | edytuj kod]
Aplikacja GNU cpio jest powszechnym narzędziem, która może być użyta do dodawania danych do archiwów cpio i tar. Aplikacja cpio jest wolnym oprogramowaniem i jest dostępna ze strony domowej GNU.
Przykłady użycia[ | edytuj kod]
Jeśli chcemy dodać do archiwum całe drzewo katalogów, komenda find może dostarczyć listę plików dla programu cpio:
% find . -depth -print | cpio -ov > drzewo.cpio
Aby rozpakować pliki z archiwum cpio, przekaż archiwum do programu cpio jako jego standardowe wejście
Uwaga: Jeśli wykonamy polecenie z prawami roota, pliki, w naszym systemie plików, które już istniały, mogą zostać zastąpione przez te w obrazie cpio.
% cpio -id < plik.cpio
Flaga -i oznacza, że cpio rozpakowuje pliki, natomiast flaga -d informuje cpio, żeby tworzył katalogi, jeśli będzie to wymagane. Można też użyć flagi -v by wypisać wszystkie nazwy plików aktualnie rozpakowanych plików.
Każdy argument linii poleceń, który nie jest opcją jest uważany za globalny wzór powłoki (ang. shell globbing patter); każdy plik w archiwum, który będzie pasował do przynajmniej jednego wzoru, zostanie skopiowany z archiwum. Poniższy przykład rozpakuje plik etc/fstab z archiwum (zawartość archiwum powinna być wcześniej sprawdzona za pomocą polecenia cpio -l, jak ścieżka jest skonstruowana):
% cpio -id etc/fstab < plik.cpio
Przypisy[ | edytuj kod]
- Peek J, O'Reilly T, Loukides M. 1997. Unix Power Tools. O'Reilly & Associates, Inc. ISBN 1-56592-260-3.
- Cpio - GNU Project - Free Software Foundation (FSF), www.gnu.org [dostęp 2017-11-22] (ang.).