cpio
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[1]. Format cpio jest wykorzystywany m.in. wewnątrz pakietów RPM a Oracle Corporation rozprowadza znaczną część swojego oprogramowania w tym formacie.
Archiwum cpio
edytujArchiwum 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
edytujProgram 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
edytujAplikacja 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[2].
Przykłady użycia
edytujJeś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- ↑ 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) [online], www.gnu.org [dostęp 2017-11-22] (ang.).