Cpio

cpioarchiwizator 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

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

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

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[2].

Przykłady użycia

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

  1. Peek J, O'Reilly T, Loukides M. 1997. Unix Power Tools. O'Reilly & Associates, Inc. ISBN 1-56592-260-3.
  2. Cpio - GNU Project - Free Software Foundation (FSF) [online], www.gnu.org [dostęp 2017-11-22]  (ang.).

Linki zewnętrzne

  • Podręcznik użytkownika GNU cpio
  • Strona domowa GNU cpio
  • p
  • d
  • e
Formaty archiwów
Tylko archiwizacja
  • ar
  • BagIt
  • cpio
  • LBR
  • shar
  • tar
  • WAD
Tylko kompresja
  • Brotli
  • bzip2
  • compress
  • gzip
  • LHW
  • LZ4
  • LZMA
  • LZH
  • lzip
  • lzop
  • LZS
  • LZW
  • SQ
  • xz
  • Zstandard
Kompresja i archiwizacja
Archiwa dystrybucji i systemowe
  • APK
  • app
  • APPX
  • dmg
  • deb
  • ipa
  • JAR
    • EAR
    • Java RAR
    • WAR
  • MSI
  • PKG
  • RPM
  • RUNZ
  • XAP
  • XBAP
Archiwa dokumentów