cpio

Z Wikipedii, wolnej encyklopedii
Skocz do: nawigacji, wyszukiwania

cpio jest archiwizatorem plików i formatem plików. Oprogramowanie cpio zostało stworzone by archiwizować dane na taśmach magnetycznych i jako taki, był 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[1]. Dzięki wykorzystaniu formatu cpio przez pakiet RPM Package Manager (jest jego częścią), cpio nadal jest ważnym formatem pliku.

Archiwum cpio[edytuj | 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ł stworzony 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.

Oracle Corporation rozprowadza znaczną część swojego oprogramowania w formacie cpio.

POSIX i cpio[edytuj | 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 | edytuj kod]

Aplikacja GNU cpio jest powszechnym narzędziem, który może być użyty do dodawania danych do archiwów cpio i tar. Aplikacja cpio jest wolnym oprogramowaniem i jest dostępne ze strony domowej GNU.

Przykłady użycia[edytuj | 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 administratora systemu, 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

  1. Peek J, O'Reilly T, Loukides M. 1997. Unix Power Tools. O'Reilly & Associates, Inc. ISBN 1-56592-260-3.

Linki zewnętrzne[edytuj | edytuj kod]