table of contents
- bookworm-backports 1:4.26.2-1~bpo12+1
- testing 1:4.26.2-1
- unstable 1:4.26.2-1
TAR(1) | Podręcznik GNU TAR | TAR(1) |
NAZWA¶
tar - narzędzie archiwizujące
SKŁADNIA¶
Składnia tradycyjna¶
tar {A|c|d|r|t|u|x}[GnSkUWOmpsMBiajJzZhPlRvwo] [ARG...]
Składnia uniksowa¶
tar -A [OPCJE] -f ARCHIWUM ARCHIWUM...
tar -c [-f ARCHIWUM] [OPCJE] [PLIK...]
tar -d [-f ARCHIWUM] [OPCJE] [PLIK...]
tar -r [-f ARCHIWUM] [OPCJE] [PLIK...]
tar -t [-f ARCHIWUM] [OPCJE] [SKŁADOWA...]
tar -u [-f ARCHIWUM] [OPCJE] [PLIK...]
tar -x [-f ARCHIWUM] [OPCJE] [SKŁADOWA...]
Składnia GNU¶
tar {--catenate|--concatenate} [OPCJE] --file ARCHIWUM ARCHIWUM...
tar --create [--file ARCHIWUM] [OPCJE] [PLIK...]
tar {--diff|--compare} [--file ARCHIWUM] [OPCJE] [PLIK...]
tar --delete [--file ARCHIWUM] [OPCJE] [SKŁADOWA...]
tar --append [--file ARCHIWUM] [OPCJE] [PLIK...]
tar --list [--file ARCHIWUM] [OPCJE] [SKŁADOWA...]
tar --test-label [--file ARCHIWUM] [OPCJE] [ETYKIETA...]
tar --update [--file ARCHIWUM] [OPCJE] [PLIK...]
tar {--extract|--get} [--file ARCHIWUM] [OPCJE] [SKŁADOWA...]
UWAGA¶
Niniejsza strona podręcznika jest streszczeniem opisu GNU tar. Pełne informacje, w tym przykłady i zalecane sposoby użycia opisano w Podręczniku GNU Tar, dostępnym w formacie texinfo. Jeśli tar i czytnik info są prawidłowo zainstalowane w tym systemie, polecenie
powinno dać dostęp do pełnego podręcznika.
Podręcznik można przeglądać również korzystając z trybu info edytora emacs(1) oraz w różnych formatach pod adresem
W przypadku rozbieżności między niniejszym podręcznikiem systemowym a Podręcznikiem GNU Tar, ten ostatni należy uważać za rozstrzygający.
OPIS¶
GNU tar to program archiwizujący, zaprojektowany do umieszczania wielu plików w pliku pojedynczym (archiwum) oraz modyfikowania takich archiwów. Archiwum może być zwykłym plikiem lub urządzeniem (np. napędem taśmowym; stąd pochodzi zresztą nazwa programu, będąca skrótem od taśmowy archiwizator), zlokalizowanym na komputerze lokalnym lub zdalnym.
Style składni opcji¶
Opcje GNU tar można podać w trzech różnych stylach składni. W składni tradycyjnej pierwszy argument jest zlepkiem liter opcji, a wszystkie następne argumenty dostarczają argumenty opcjom, które ich wymagają. Argumenty są odczytywane w tej samej kolejności, co litery opcji. Wszelkie słowa wiersza poleceń, które pozostaną po przetworzeniu wszystkich opcji, są traktowane jako argumenty niebędące opcjami: plikami lub nazwami części archiwum.
Na przykład opcja c wymaga utworzenia archiwum, opcja v żąda większej szczegółowości komunikatów, a opcja f przyjmuje argument, który ustawia nazwę przedmiotowego archiwum. Poniższe polecenie, zapisane w składni tradycyjnej, poleca programowi tar na umieszczenie wszystkich plików z katalogu /etc w pliku archiwum etc.tar, szczegółowo wypisując archiwizowane pliku:
tar cfv etc.tar /etc
W składni uniksowej lub składni z krótkimi opcjami, każdą literę opcji poprzedza pojedyncza kreska, podobnie jak w innych narzędziach wiersza poleceń. Jeśli opcja przyjmuje argument, umiejscowiony jest on po opcji, albo jako oddzielne słowo wiersza poleceń, albo bezpośrednio (bez spacji) po opcji. Jednakże, jeśli opcja przyjmuje argument opcjonalny, argument musi być podany po literze opcji bez rozdzielenia spacją np. -g/tmp/snar.db.
Po kresce, można zlepić ze sobą dowolną liczbę opcji nieprzyjmujących argumentów np. -vkp. Opcja przyjmująca argument (obowiązkowy lub opcjonalny) może pojawić się na końcu takiego sklejenia np. -vkpf a.tar.
Przykład podany wyżej, wyglądałby następująco w składni z krótkimi opcjami:
tar -cvf etc.tar /etclub
tar -c -v -f etc.tar /etc
E składni GNU lub składni z długimi opcjami, każda opcja zaczyna się od dwóch kresek i ma znaczącą nazwę, składającą się z małych liter i kresek. Długą opcję można skrócić do początkowych liter, o ile dany skrót nie będzie wieloznaczny. Argumenty do długich opcji podaje się albo jako osobne słowa wiersza poleceń, występujące zaraz za opcją lub rozdzielając go od opcji znakiem równości, bez dodatkowych spacji. Argumenty opcjonalne można podawać tylko w ten ostatni sposób.
Oto kilka możliwości zapisania polecenia przykładowego w tej składni:
tar --create --file etc.tar --verbose /etclub (skracając pewne opcje):
tar --cre --file=etc.tar --verb /etc
Można łączyć jednoczesne korzystanie ze wszystkich składni, choć nie zaleca się tego w przypadku starych opcji.
Tryb operacji:¶
Opcje z poniższej tabeli przekazują GNU tar rodzaj operacji, jaką ma wykonać. Należy podać dokładnie jedną. Znaczenie argumentów niebędących opcjami, zależy od żądanego trybu operacji.
- -A, --catenate, --concatenate
- Dołącza archiwa na końcu innego archiwum. Argumenty
są traktowane jako nazwy archiwów do
przyłączenia. Wszystkie archiwa muszą mieć ten
sam format jak archiwum, do którego następuje
dołączenie, w innym przypadku archiwum może
być nieodczytywalne w innych implementacjach programu tar
niż GNU. Proszę zauważyć, że gdy poda
się kilka archiwów, składowe z archiwów innych
niż pierwsze, będą dostępne w końcowym
archiwum tylko wtedy, gdy użyje się opcji -i
(--ignore-zeros).
Nie można łączyć ze sobą archiwów skompresowanych.
- -c, --create
- Tworzy nowe archiwum. Argumenty dostarczają nazwy plików do zarchiwizowania. Katalogi są archiwizowane rekurencyjnie, chyba że podano opcję --no-recursion.
- -d, --diff, --compare
- Znajduje różnice pomiędzy archiwum i systemem plików. Argumenty są opcjonalne i podają składowe archiwum do porównania. Jeśli nie poda się argumentu, przyjmowany jest bieżący katalog roboczy.
- --delete
- Usuwa z archiwum. Argumenty dostarczają nazwy składowe
archiwum do usunięcia. Należy podać co najmniej jeden
argument.
Opcja nie działa na archiwach skompresowanych. Jest dostępna tylko w składni długich opcji.
- -r, --append
- Dołącza pliki na końcu archiwum. Argumenty mają takie samo znaczenie jak w opcji -c (--create).
- -t, --list
- Wypisuje zawartość archiwum. Argumenty są opcjonalne. Gdy występują, określają nazwy składowych do wypisania.
- --test-label
- Sprawdza etykietę archiwum i wychodzi. Przy użyciu bez
argumentów, wypisuje etykietę archiwum (jeśli
występuje) i wychodzi ze statusem 0. Jeśli poda
się jeden lub więcej argumentów w wierszu polecenia,
tar porównuje etykietę z każdym argumentem.
Wychodzi z kodem 0 jeśli znajdzie dopasowanie lub z kodem
1 w przeciwnym przypadku. Nie jest wypisywane żadne
wyjście, chyba że poda się jednocześnie
opcję -v (--verbose).
Nie występuje krótki odpowiednik tej opcji.
- -u, --update
- Dodaje pliki, które są nowsze niż odpowiadające im kopie w archiwum. Argumenty mają takie samo znaczenie, jak przy opcjach -c i -r. Proszę zauważyć, że nowsze pliki nie zastępują swoich starszych kopii w archiwum, lecz są dodawane na końcu archiwum. Z tego względu wynikowe archiwum zawiera kilka składowych o tej samej nazwie, odpowiadających różnym wersjom tego samego pliku.
- -x, --extract, --get
- Rozpakowuje pliki z archiwum. Argumenty są opcjonalne. Gdy się je poda, określają nazwy składowych archiwum do wypakowania.
- --show-defaults
- Pokazuje wbudowane wartości domyślne różnych opcji tar i wychodzi.
- -?, --help
- Wyświetla krótkie podsumowanie opcji i kończy działanie.
- --usage
- Wyświetla listę dostępnych opcji i wychodzi.
- --version
- Wypisuje wersję programu oraz informacje o prawach autorskich i wychodzi.
OPCJE¶
Modyfikatory operacji¶
- --check-device
- Sprawdza numer urządzenia przy tworzeniu archiwów przyrostowych (domyślnie).
- -g, --listed-incremental=PLIK
- Obsługuje nowy format GNU przyrostowych kopii zapasowych.
PLIK jest nazwą pliku migawki, w którym
tar przechowuje dodatkowe informacje używane do decydowania,
które pliki uległy zmianie od poprzedniej przyrostowej kopii
i z tego względu muszą być zrzucone ponownie.
Jeśli PLIK nie będzie istniał przy tworzeniu
archiwum, zostanie utworzony, a do wynikowego archiwum zostaną
dodane wszystkie pliki (zrzut poziomu 0). Aby utworzyć
przyrostowe archiwa niezerowego poziomu N, konieczna jest kopia
pliku migawki utworzonego dla poziomu N-1, który
należy podać jako PLIK.
Przy wypisywaniu oraz wypakowywaniu, faktyczna zawartość PLIKU nie jest sprawdzana, jest on potrzebny tylko ze względu na wymagania składni. Z tego względu często podaje się w tym miejscu /dev/null.
- --hole-detection=METODA
- Używa METODY do wykrywania dziur w rzadkich plikach. Opcja wymusza --sparse. Prawidłowymi wartościami METODY są seek i raw. Domyślną jest seek, natomiast tam, gdzie nie ma zastosowania, korzysta się z raw.
- -G, --incremental
- Obsługuje archiwum przyrostowe w starym formacie GNU.
- --ignore-failed-read
- Zakazuje kończenia działania programu z niezerowym kodem wyjścia po napotkaniu plików, które nie dają się odczytać.
- --level=LICZBA
- Ustawia poziom zrzutu dla tworzonego archiwum przyrostowego. Obecnie istotny jest tylko --level=0: wówczas tar przytnie plik migawki przed zrzutem, co wymusi utworzenie zrzutu poziomu 0.
- -n, --seek
- Zakłada, że archiwum jest przeszukiwalne. Zwykle tar automatycznie określa, czy archiwum da się przeszukać, czy nie. Opcja ta jest przeznaczona do stosowania w przypadkach, gdy to wykrycie zawiedzie. Działa tylko wtedy, gdy archiwum jest otwarte do odczytu (np. z opcjami --list lub --extract).
- --no-check-device
- Nie sprawdza numerów urządzenia przy tworzeniu archiwów przyrostowych.
- --no-seek
- Zakłada, że archiwum jest nieprzeszukiwalne.
- --occurrence[=N]
- Przetwarza tylko N-te wystąpienie każdego pliku w archiwum. Opcja ta jest prawidłowa tylko w połączeniu z jednym z podpoleceń: --delete, --diff, --extract lub --list i gdy lista plików została podana albo w wierszu poleceń albo opcją -T. Domyślnym N jest 1.
- --restrict
- Wyłącza część potencjalnie szkodliwych opcji.
- --sparse-version=GŁÓWNY[.POBOCZNY]
- Ustawia, której wersji formatu rzadkiego użyć. Opcja wymusza --sparse. Prawidłowymi wartościami są 0.0, 0.1 i 1.0. Szczegółowy opis formatów rzadkich można znaleźć w Podręczniku GNU Tar, aneksie D, rozdziale "Sparse Formats". Korzystając z czytnika info można go wyświetlić poleceniem: info tar 'Sparse Formats'.
- -S, --sparse
- Wydajnie obsługuje pliki rzadkie. Niektóre pliki w systemie plików mogą posiadać segmenty, które faktycznie nigdy nie były zapisane (często zdarza się tak z plikami baz danych tworzonymi w systemach takich jak DBM). Po podaniu tej opcji, tar postara się ustalić czy plik jest rzadki zanim go zarchiwizuje, a jeśli tak jest, zmniejszy wynikowy rozmiar archiwum tak, aby nie zrzucać pustych części pliku.
Sterowanie zamazywaniem¶
Opcje regulują działanie tar przy wypakowywaniu plików nad istniejącą kopią na dysku.
- -k, --keep-old-files
- Nie zastępuje istniejących plików podczas wypakowywania.
- --keep-newer-files
- Nie zastępuje istniejących plików, które są nowsze niż egzemplarze w archiwum.
- --keep-directory-symlink
- Nie zastępuje istniejących dowiązań symbolicznych przy wypakowywaniu.
- --no-overwrite-dir
- Zachowuje metadane istniejących katalogów.
- --one-top-level[=KATALOG]
- Wypakowuje wszystkie pliki do KATALOGU lub, jeśli nie poda się argumentu, do podkatalogu nazwanego nazwą bazową (basename) archiwum (po usunięciu z nazwy standardowych przyrostków kompresji rozpoznawalnych przez --auto-compress).
- --overwrite
- Nadpisuje istniejące pliki podczas wypakowywania.
- --overwrite-dir
- Nadpisuje metadane istniejących katalogów podczas wypakowywania (domyślne).
- --recursive-unlink
- Rekurencyjnie usuwa wszystkie pliki w katalogu przed wypakowaniem do niego.
- --remove-files
- Usuwa pliki z dysku po dodaniu ich do archiwum.
- --skip-old-files
- Nie zastępuje istniejących plików podczas wypakowywania, po chichu je pomija.
- -U, --unlink-first
- Usuwa każdy plik przed wypakowaniem do niego.
- -W, --verify
- Weryfikuje archiwum po jego utworzeniu.
Wybór strumienia wyjściowego¶
- --ignore-command-error
- Ignoruje kody zakończenia podprocesów.
- --no-ignore-command-error
- Traktuje niezerowe kody zakończenia procesów potomnych jako błąd (domyślne).
- -O, --to-stdout
- Wypakowuje pliki na standardowe wyjście.
- --to-command=POLECENIE
- Przekazuje pliki potokiem do POLECENIA. Argument jest ścieżką programu zewnętrznego, opcjonalnie z argumentami wiersza poleceń. Program ten zostanie wywołany, a zawartość wypakowywanego pliku przekazana mu na standardowe wejście. Dodatkowe dane zostaną przekazane przez następujące zmienne środowiskowe:
- TAR_FILETYPE
- Typ pliku. Pojedyncza litera o następującym znaczeniu.
f Zwykły plik d Katalog l Dowiązanie symboliczne h Dowiązanie zwykłe b Urządzenie blokowe c Urządzenie znakowe
Obecnie obsługiwane są tylko zwykłe pliki.
- TAR_MODE
- Tryb pliku, liczba ósemkowa.
- TAR_FILENAME
- Nazwa pliku.
- TAR_REALNAME
- Nazwa pliku, w postaci przechowywanej w archiwum.
- TAR_UNAME
- Nazwa właściciela pliku.
- TAR_GNAME
- Nazwa grupy posiadającej plik.
- TAR_ATIME
- Czas ostatniego dostępu. Jest to liczba dziesiętna, reprezentujące sekundy od Epoki. Jeśli archiwum zapewnia nanosekundową precyzję czasu, nanosekundy są dołączane do znacznika czasu po kropce dziesiętnej.
- TAR_MTIME
- Czas ostatniej modyfikacji.
- TAR_CTIME
- Czas ostatniej zmiany statusu.
- TAR_SIZE
- Rozmiar pliku.
- TAR_UID
- Identyfikator użytkownika właściciela pliku.
- TAR_GID
- Identyfikator grupy posiadającej plik.
Dodatkowo, poniższe zmienne zawierają informacje o trybie działania tar oraz o przetwarzanym archiwum:
- TAR_VERSION
- Numer wersji GNU tar.
- TAR_ARCHIVE
- Nazwa przetwarzanego przez tar archiwum.
- TAR_BLOCKING_FACTOR
- Bieżąca liczba jednocześnie przetwarzanych bloków ("blocking factor") tj. liczba 512-bajtowych bloków na rekord.
- TAR_VOLUME
- Kolejny numer przetwarzanej przez tar części archiwum (ustawione przy odczytywaniu archiwum wieloczęściowego).
- TAR_FORMAT
- Format przetwarzanego archiwum. Jeden z: gnu, oldgnu, posix, ustar, v7.
- TAR_SUBCOMMAND
- Krótka opcja (z początkowym dywizem) opisująca aktualne działanie tar.
Obsługa atrybutów plików¶
- --atime-preserve[=METODA]
- Zachowuje czasy dostępu zrzucanych plików, albo przez przywrócenie czasów po odczycie (METODA=replace, domyślnie), albo po prostu przez nieustawianie czasów (METODA=system)
- --delay-directory-restore
- Opóźnia ustawianie czasów modyfikacji i opóźnień rozpakowanych katalogów aż do końca rozpakowywania. Z opcji tej należy korzystać, gdy archiwum ma nietypową kolejność składowych.
- --group=NAZWA[:ID-GRUPY]
- Wymusza NAZWĘ jako grupę dodanych plików.
Jeśli nie poda się ID-GRUPY, NAZWĄ
może być nazwa użytkownika lub numeryczny
identyfikator grupy. W takim przypadku, brakująca
część (identyfikator grupy lub nazwa) zostaną
pobrane z bazy danych grup bieżącej stacji.
Przy łącznym stosowaniu z --group-map=PLIK, opcja ma wpływ tylko na pliki, których grupy właścicielskiej nie wypisano w PLIKU.
- --group-map=PLIK
- Odczytuje mapę translacji grup z PLIKU. Puste wiersze
są ignorowane. Komentarze wprowadza znak #,
kończą się z końcem wiersza. Każdy
niepusty wiersz w PLIKU określa tłumaczenie
pojedynczej grupy. Musi składać się z dwóch
pól, rozdzielonych dowolną liczbą
odstępów:
STARA-GRUPA NOWA-GRUPA[:NOWY-ID-GRUPY]
STARA-GRUPA jest albo prawidłową nazwą grupy, albo identyfikatorem grupy poprzedzonym znakiem +. Jeśli nie podano NOWEGO-ID-GRUPY, NOWA-GRUPA również musi być albo prawidłową nazwą grupy, albo +ID-GRUPY. W innym przypadku, NOWA-GRUPA i NOWY-ID-GRUPY nie muszą być umieszczone w systemowej bazie danych grup
Efektem końcowym jest sytuacja, gdzie każdy plik wejściowy z własnością grupy STARA-GRUPA zostanie przechowany w archiwum z własnością grupy NOWA-GRUPA i GID NOWY-ID-GRUPY.
- --mode=ZMIANY
- Wymusza ZMIANY trybu (symbolicznego) dodanych plików.
- --mtime=DATA-lub-PLIK
- Ustawia czas modyfikacji (mtime) dodawanych plików. DATA-lub-PLIK jest albo datą/czasem w niemal dowolnym formacie, albo nazwą istniejącego pliku. W tym drugim przypadku zostanie użyty czas modyfikacji podanego pliku.
- -m, --touch
- Nie dearchiwizuje czasu modyfikacji plików.
- --no-delay-directory-restore
- Odwołuje działanie wcześniejszej opcji --delay-directory-restore.
- --no-same-owner
- Wypakowuje pliki jako użytkownik uruchamiający program tar (domyślne dla zwykłych użytkowników).
- --no-same-permissions
- Stosuje umask użytkownika przy wypakowywaniu uprawnień z archiwum (domyślne dla zwykłych użytkowników).
- --numeric-owner
- Posługuje się numerami użytkowników i grup, zamiast ich nazw.
- --owner=NAZWA[:UID]
- Wymusza NAZWĘ jako właściciela dodanych
plików. Jeśli nie poda się
ID-UŻYTKOWNIKA, NAZWĄ może być
nazwa użytkownika lub numeryczny identyfikator użytkownika.
W takim przypadku, brakująca część
(identyfikator użytkownika lub nazwa) zostaną pobrane z bazy
danych użytkowników bieżącej stacji.
Przy łącznym stosowaniu z --owner-map=PLIK, opcja ma wpływ tylko na pliki, których właściciela nie wypisano w PLIKU.
- --owner-map=PLIK
- Odczytuje mapę translacji użytkowników z
PLIKU. Puste wiersze są ignorowane. Komentarze wprowadza
znak #, kończą się z końcem wiersza.
Każdy niepusty wiersz w PLIKU określa
tłumaczenie pojedynczego użytkownika. Musi
składać się z dwóch pól, rozdzielonych
dowolną liczbą odstępów:
STARY-UŻYTKOWNIK NOWY-UŻYTKOWNIK[:NOWY-ID-UŻYTKOWNIKA]
STARY-UŻYTKOWNIK jest albo prawidłową nazwą użytkownika, albo identyfikatorem użytkownika poprzedzonym znakiem +. Jeśli nie podano NOWEGO-ID-UŻYTKOWNIKA, NOWY-UŻYTKOWNIK również musi być albo prawidłową nazwą użytkownika, albo +ID-UŻYTKOWNIKA. W innym przypadku, NOWY-UŻYTKOWNIK i NOWY-ID-UŻYTKOWNIKA nie muszą być umieszczone w systemowej bazie danych użytkowników.
Efektem końcowym jest sytuacja, gdzie każdy plik wejściowy z właścicielem STARY-UŻYTKOWNIK zostanie przechowany w archiwum z właścicielem NOWY-UŻYTKOWNIK i UID NOWY-ID-UŻYTKOWNIKA.
- -p, --preserve-permissions, --same-permissions
- Ustawia uprawnienia wypakowanych plików na zachowane w archiwum (domyślne dla superużytkownika).
- --same-owner
- Próbuje wypakować pliki z tymi samymi właścicielami jak w archiwum (domyślne dla superużytkownika).
- -s, --preserve-order, --same-order
- Przekazuje tar, że lista nazw plików do przetworzenia jest posortowana w tej samej kolejności jak pliki w archiwum.
- --sort=KOLEJNOŚĆ
- Przy tworzeniu archiwum, sortuje wpisy katalogów zgodnie z
KOLEJNOŚCIĄ, którą może
być none, name albo inode.
Domyślnym ustawieniem jest --sort=none, przechowujące składowe archiwum w tej samej kolejności, jaką zwróci system operacyjny.
Opcja --sort=name zapewnia, że kolejność w tworzonym archiwum jest jednolita i odtwarzalna.
Opcja --sort=inode ogranicza liczbę przeszukiwań na dysku przy tworzeniu archiwum, co może znacznie skrócić czas archiwizacji. Ta kolejność sortowania jest obsługiwana tylko wtedy, jeśli dany system zapewnia wymagane informacje.
Atrybuty rozszerzone plików¶
- --acls
- Włącza obsługę ACL POSIX.
- --no-acls
- Wyłącza obsługę ACL POSIX.
- --selinux
- Włącza obsługę kontekstu SELinux.
- --no-selinux
- Wyłącza obsługę kontekstu SELinux.
- --xattrs
- Włącza obsługę atrybutów rozszerzonych.
- --no-xattrs
- Wyłącza obsługę atrybutów rozszerzonych.
- --xattrs-exclude=WZORZEC
- Określa wzorzec wyłączenia kluczy atrybutów rozszerzonych. We WZORCU można korzystać tylko z wieloznaczników (wzorzec typu glob) np. --xattrs-exclude='user.*' obejmie atrybuty tylko z przestrzeni nazw użytkownika.
- --xattrs-include=WZORZEC
- Określa wzorzec włączenia kluczy atrybutów rozszerzonych. We WZORCU można korzystać tylko z wieloznaczników (wzorzec typu glob).
Wybór i przełączanie między urządzeniami¶
- -f, --file=ARCHIWUM
- Używa urządzenia lub pliku archiwum ARCHIWUM.
Jeśli nie poda się tej opcji, tar na początku
sprawdzi wartość zmiennej środowiskowej
"TAPE". Jeśli będzie ustawiona, jej
wartość zostanie użyta jako nazwa archiwum. W
przeciwnym przypadku, tar przyjmie wbudowaną
wartość domyślną. Można ją
sprawdzić opcją --show-defaults, zostanie
również wypisana na końcu wyniku polecenia tar
--help.
Nazwa archiwum posiadająca dwukropek określa plik lub urządzenie na stacji zdalnej. Część przed dwukropkiem stanowi nazwę lub adres IP stacji, a część po dwukropku jest ścieżką pliku lub urządzenia np.:
--file=remotehost:/dev/sr0
Przed nazwą stacji można podać opcjonalną nazwę użytkownika, rozdzielając je znakiem @.
Domyślnie, dostęp do zdalnej stacji następuje poprzez polecenie rsh(1). Obecnie często korzysta się w zamian z ssh(1). Można to uczynić za pomocą następującej opcji wiersza polecenia:
--rsh-command=/usr/bin/ssh
Zdalna stacja powinna mieć zainstalowane polecenie rmt(8). Jeśli jego ścieżka nie jest taka jak domyślna wartość tar, można przekazać programowi tar prawidłową ścieżkę opcją --rmt-command.
- --force-local
- Plik z archiwum jest lokalny nawet, jeżeli w jego nazwie występuje dwukropek.
- -F, --info-script=POLECENIE, --new-volume-script=POLECENIE
- Uruchamia COMMAND po osiągnięciu końca każdej taśmy (wymusza -M). Polecenie może mieć argumenty. Przy uruchomieniu, odziedziczy ono środowisko tar oraz następujące zmienne:
- TAR_VERSION
- Numer wersji GNU tar.
- TAR_ARCHIVE
- Nazwa przetwarzanego przez tar archiwum.
- TAR_BLOCKING_FACTOR
- Bieżąca liczba jednocześnie przetwarzanych bloków ("blocking factor") tj. liczba 512-bajtowych bloków na rekord.
- TAR_VOLUME
- Kolejny numer przetwarzanej przez tar części archiwum (ustawione przy odczytywaniu archiwum wieloczęściowego).
- TAR_FORMAT
- Format przetwarzanego archiwum. Jeden z: gnu, oldgnu, posix, ustar, v7.
- TAR_SUBCOMMAND
- Krótka opcja (z początkowym dywizem) opisująca aktualne działanie tar.
- TAR_FD
- Deskryptor pliku, który może służyć do przekazania nowej nazwy części archiwum programowi tar.
Jeśli info-script zawiedzie, tar wyjdzie; w przeciwnym przypadku zacznie zapisywać następną część archiwum.
- -L, --tape-length=N
- Zmienia taśmę po zapisaniu Nx1024 bajtów.
Jeśli po N poda się przyrostek oznaczający
rozmiar (zob. rozdział Przyrostki oznaczające rozmiar
poniżej), przyrostek określa mnożnik zamiast 1024.
Opcja wymusza -M.
- -M, --multi-volume
- Tworzy/wypisuje zawartość/wypakowuje archiwum wieloczęściowe.
- --rmt-command=POLECENIE
- Używa POLECENIA zamiast rmt przy uzyskiwaniu dostępu do archiwów zdalnych. Zob. opis opcji -f, powyżej.
- --rsh-command=POLECENIE
- Używa POLECENIA zamiast rsh przy uzyskiwaniu dostępu do archiwów zdalnych. Zob. opis opcji -f, powyżej.
- --volno-file=PLIK
- Przy łącznym stosowaniu z --multi-volume, tar będzie pilnował tego, nad którą częścią archiwum wieloczęściowego w PLIKU pracuje program.
Parametry bloków¶
- -b, --blocking-factor=BLOKI
- Ustawia rozmiar rekordu na BLOKIx512 bajtów.
- -B, --read-full-records
- Przy wypisywaniu lub wypakowywaniu, akceptuje niepełne rekordy wejściowe po znaczniku końca pliku.
- -i, --ignore-zeros
- Ignoruje wyzerowane bloki w archiwum. Zwykle dwa kolejne 512 bloki wypełnione zerami oznaczają koniec pliku i tar zatrzymuje odczyt po ich napotkaniu. Opcja instruuje program, aby odczytywał dalej i jest przydatna przy archiwach utworzonych z opcją -A.
- --record-size=LICZBA
- Ustawia rozmiar rekordu. LICZBA jest liczbą bajtów na rekord. Musi być wielokrotnością 512. Można użyć po niej przyrostka oznaczającego rozmiar np. --record-size=10K oznacza 10 kilobajtów. Zob. podrozdział Przyrostki oznaczające rozmiar, aby zapoznać się z listą prawidłowych przyrostków.
Wybór formatu archiwum¶
- -H, --format=FORMAT
- Tworzy archiwum w podanym formacie. Prawidłowe formaty to:
- gnu
- Format GNU tar 1.13.x.
- oldgnu
- Format GNU w programie tar <= 1.12.
- pax, posix
- Format POSIX 1003.1-2001 (pax).
- ustar
- Format POSIX 1003.1-1988 (ustar).
- v7
- Stary format tar V7.
- --old-archive, --portability
- Równoważne as --format=v7.
- --pax-option=keyword[[:]=wartość][,keyword[[:]=wartość]]...
- Kontroluje słowa kluczowe pax przy tworzeniu archiwów PAX (-H pax). Opcja odpowiada opcji -o narzędzia pax(1).
- --posix
- Równoważne --format=posix.
- -V, --label=TEKST
- Tworzy archiwum z nazwą części TEKST. Przy wypisywaniu/rozpakowywaniu używa TEKSTU jako wzorca maski do nazwy części.
Opcje kompresji¶
- -a, --auto-compress
- Używa przyrostka archiwum do określenia programu kompresującego.
- -I, --use-compress-program=POLECENIE
- Filtruje dane poprzez POLECENIE. Musi ono akceptować opcję -d służącą do rozpakowywania. Argument może posiadać opcje wiersza poleceń.
- -j, --bzip2
- Filtruje archiwum programem bzip2(1).
- -J, --xz
- Filtruje archiwum programem xz(1).
- --lzip
- Filtruje archiwum programem lzip(1).
- --lzma
- Filtruje archiwum programem lzma(1).
- --lzop
- Filtruje archiwum programem lzop(1).
- --no-auto-compress
- Nie używa przyrostka archiwum do określenia programu kompresującego.
- -z, --gzip, --gunzip, --ungzip
- Filtruje archiwum programem gzip(1).
- -Z, --compress, --uncompress
- Filtruje archiwum programem compress(1).
- --zstd
- Filtruje archiwum programem zstd(1).
Wybór lokalnego pliku¶
- --add-file=PLIK
- Dodaje PLIK do archiwum (przydatne jeśli nazwa zaczyna się minusem).
- --backup[=METODA]
- Wykonuje kopię zapasową przed usunięciem. Argument METODA, jeśli się go poda, reguluje sposób dokonywania kopii. Jego prawidłowe wartości to:
- none, off
- Nigdy nie tworzy kopii zapasowych.
- t, numbered
- Tworzy kopie numerowane.
- nil, existing
- Tworzy kopie numerowane, jeśli takie już istnieją, w innym przypadku tworzy kopie proste.
- never, simple
- Zawsze tworzy proste kopie zapasowe.
Jeśli nie poda się METODY, wartość jest pobierana ze zmiennej środowiskowej VERSION_CONTROL. Jeśli nie jest ustawiona, przyjmowana jest wartość existing.
- -C, --directory=KATALOG
- Przechodzi do KATALOGU przed dokonywaniem jakichkolwiek działań. Opcja jest zależna od kolejności tj. wpływa na wszystkie opcje za nią.
- --exclude=WZORZEC
- Wyłącza pliki pasujące do WZORCA, który jest wieloznacznikiem w stylu glob(3).
- --exclude-backups
- Wyłącza pliki kopii zapasowej i blokady.
- --exclude-caches
- Wyłącza zawartość katalogów zawierających CACHEDIR.TAG, z wyłączeniem samego pliku tag.
- --exclude-caches-all
- Wyłącza katalogi zawierające CACHEDIR.TAG i sam ten plik.
- --exclude-caches-under
- Wyłącza wszystko w katalogach zawierających CACHEDIR.TAG
- --exclude-ignore=PLIK
- Przed zrzuceniem katalogu sprawdza, czy zawiera on PLIK. Jeśli plik występuje, odczytuje z niego wzorce wykluczające. Wzorce mają wpływ tylko na katalog pliku.
- --exclude-ignore-recursive=PLIK
- Jak --exclude-ignore, tyle że wzorce z PLIKU mają wpływ na jego katalog wraz z wszystkimi podkatalogami.
- --exclude-tag=PLIK
- Wyłącza zawartość katalogów zawierających PLIK, z wyjątkiem samego PLIKU.
- --exclude-tag-all=PLIK
- Wyłącza katalogi zawierające PLIK.
- --exclude-tag-under=PLIK
- Wyłącza wszystko w katalogach zawierających PLIK.
- --exclude-vcs
- Wyłącza katalogi systemu kontroli wersji.
- --exclude-vcs-ignores
- Wyłącza pliki pasujące do wzorców odczytanych z zależnych od systemu kontroli wersji plików ignorowania. Obsługiwane są pliki: .cvsignore, .gitignore, .bzrignore i .hgignore.
- -h, --dereference
- Podąża za dowiązaniami symbolicznymi; archiwizuje pliki, na które one wskazują.
- --hard-dereference
- Podąża za dowiązaniami zwykłymi (twardymi); archiwizuje i zrzuca pliki do których się one odnoszą.
- -K, --starting-file=SKŁADOWA
- Zaczyna od podanej składowej archiwum.
- --newer-mtime=DATA
- Pracuje na plikach, których data uległa zmianie po podanej DACIE. Jeśli DATA zaczyna się od / lub . uznaje się ją za nazwę pliku; wówczas rozważana jest data modyfikacji tego pliku (mtime).
- --no-null
- Odwołuje działanie opcji --null.
- --no-recursion
- Zapobiega automatycznemu zagłębianiu się w katalogi.
- --no-unquote
- Nie usuwa znaków cytowania z plików wejściowych lub nazw składowych.
- --no-verbatim-files-from
- Traktuje każdy wiersz odczytany z listy plików, jak gdyby
był podany w wierszu polecenia. Oznacza to, że
początkowe i końcowe odstępy są usuwane, a
jeśli powstały w ten sposób łańcuch
zaczyna się od kreski, jest traktowany jako opcja wiersza polecenia
tar.
Jest to zachowanie domyślne. Opcja --no-verbatim-files-from służy do przywrócenia tego zachowania po podaniu opcji --verbatim-files-from.
Jest to opcja pozycyjna: ma wpływ na wszystkie opcje --files-from, które zostaną podane po niej, do momentu napotkania opcji --verbatim-files-from lub osiągnięcia końca wiersza, w zależności od tego co nastąpi wcześniej.
Jest wymuszona przez opcję --no-null.
- --null
- Nakazuje kolejnym opcjom -T na dosłowny odczyt nazw
rozdzielonych znakiem null (wyłącza specjalną
obsługę nazw rozpoczynających się od kreski).
Zob. też --verbatim-files-from.
- -N, --newer=DATA, --after-date=DATA
- Przechowuje tylko pliki nowsze od DATY. Jeśli DATA zaczyna się od / lub . uznaje się ją za nazwę pliku; wówczas rozważana jest data modyfikacji tego pliku (mtime).
- --one-file-system
- Archiwizuje pliki tylko z bieżącego systemu plików.
- -P, --absolute-names
- Przy tworzeniu archiwów, nie usuwa z nazw plików początkowych ukośników.
- --recursion
- Obsługuje katalogi rekurencyjnie (domyślnie).
- --suffix=ŁAŃCUCH
- Przed usunięciem wykonuje kopię zapasową, przesłaniając zwykły przyrostek. Domyślnym przyrostkiem jest ~, chyba że został przesłonięty przez zmienną środowiskową SIMPLE_BACKUP_SUFFIX.
- -T, --files-from=PLIK
- Nazwy plików do rozpakowania lub archiwizacji są pobierane z
PLIKU.
O ile nie określi się inaczej, PLIK musi zawierać listę nazw rozdzielonych znakiem LF ASCII (tj. po jednej nazwie na wiersz). Odczytywane nazwy są traktowane w ten sam sposób jak argumenty w wierszu polecenia. Usuwane są cudzysłowy i dokonywany jest podział na słowa, a każdy łańcuch rozpoczynający się od znaku - jest traktowany jako opcja wiersza polecenia tar.
Jeśli takie zachowanie jest niepożądane, można je wyłączyć opcją --verbatim-files-from.
Opcja --null informuje tar, że nazwy w PLIKU są rozdzielone znakiem NUL ASCII, a nie znakiem LF. Przydatne, gdy listę wygenerowano wskazaniem -print0 programu find(1).
- --unquote
- Usuwa znaki cytowania z plików wejściowych lub nazw składowych (domyślne).
- --verbatim-files-from
- Traktuje każdy wiersz pozyskany z listy plików jako
nazwę pliku nawet, jeśli zaczyna się od kreski. Listy
plików podaje się opcją --files-from
(-T). Domyślnym zachowaniem jest traktowanie nazw podanych w
liście plików jak gdyby były wpisane w wierszu
polecenia tj. nazwy rozpoczynające się od kreski są
przyjmowane jako opcje tar. Opcja --verbatim-files-from
wyłącza to zachowanie.
Opcja wpływa na wszystkie opcje --files-from, które zostaną podane po niej w wierszu polecenia. Jej efekt można odwrócić opcją --no-verbatim-files-from.
Opcja jest wymuszona przez opcję --null.
Zob. też --add-file.
- -X, --exclude-from=PLIK
- Wyłącza pliki o nazwach wymienionych w PLIKU.
Przekształcenia nazwy plików¶
- --strip-components=LICZBA
- Usuwa LICZBĘ początkowych części z nazw plików podczas wypakowania.
- --transform=WYRAŻENIE, --xform=WYRAŻENIE
- Używa WYRAŻENIA zamieniającego programu sed do przetworzenia nazw plików.
Opcje dopasowujące nazwy plików¶
Opcje wpływają na wzorce włączania i wyłączania.
- --anchored
- Wzorzec dopasowuje początek nazwy pliku.
- --ignore-case
- Ignoruje wielkość znaków.
- --no-anchored
- Wzorzec dopasowuje po dowolnym / (domyślne przy wyłączeniu).
- --no-ignore-case
- Dopasowanie zwracające uwagę na wielkość znaków (domyślne).
- --no-wildcards
- Dosłowne dopasowanie łańcuchów.
- --no-wildcards-match-slash
- Wieloznacznik nie dopasowuje /.
- --wildcards
- Używa wieloznacznika (domyślne przy wyłączeniach).
- --wildcards-match-slash
- Wieloznacznik dopasowuje / (domyślne przy wyłączeniach).
Wyjście informacyjne¶
- --checkpoint[=LICZBA]
- Wyświetla informacje o postępie co LICZBA rekord (domyślnie 10).
- --checkpoint-action=AKCJA
- Wykonuje AKCJĘ po każdym checkpoincie.
- --clamp-mtime
- Ustawia czas tylko, jeśli plik jest nowszy niż to, co podano opcją --mtime.
- --full-time
- Wypisuje czas pliku do jego pełnej rozdzielczości.
- --index-file=PLIK
- Wypisuje szczegółowe informacje do PLIKU.
- -l, --check-links
- Wypisuje komunikat, jeśli nie wszystkie dowiązania są zrzucone.
- --no-quote-chars=ŁAŃCUCH
- Wyłącza dodatkowe znaki cytowania do ŁAŃCUCHA.
- --quote-chars=ŁAŃCUCH
- Dodatkowe znaki cytowania do ŁAŃCUCHA.
- --quoting-style=STYL
- Ustawia styl cytowania plików i nazw składowych. Prawidłowe wartości STYLU to: literal, shell, shell-always, c, c-maybe, escape, locale, clocale.
- -R, --block-number
- Wypisuje numer rekordu wewnątrz archiwum przy każdym komunikacie.
- --show-omitted-dirs
- Podczas wypisywania lub wypakowywania, wypisuje każdy katalog niepasujący do kryteriów wyszukiwania.
- --show-transformed-names, --show-stored-names
- Pokazuje nazwy pliku lub archiwum po przekształceniu opcjami --strip i --transform.
- --totals[=SYGNAŁ]
- Wypisuje sumę bajtów po przetworzeniu archiwum. Jeśli poda się SYGNAŁ, wypisuje sumę bajtów w momencie jego otrzymania. Dozwolone sygnały to: SIGHUP, SIGQUIT, SIGINT, SIGUSR1 i SIGUSR2. W nazwach sygnałów można pominąć przedrostek SIG.
- --utc
- Wypisuje czasy modyfikacji pliku w UTC.
- -v, --verbose
- Szczegółowo wypisuje przetwarzane pliki. Każde wystąpienie tej opcji w wierszu polecenia zwiększa poziom szczegółowości o jeden. Maksymalny wynosi 3. Dokładny opis wpływu różnych poziomów szczegółowości na wyjście programu tar opisano w Podręczniku GNU Tar, w podrozdziale 2.5.2 "The '--verbose' Option".
- --warning=SŁOWO-KLUCZOWE
- Włącza lub wyłącza ostrzeżenia
identyfikowane SŁOWEM-KLUCZOWYM. Komunikaty są
wyłączane, jeśli SŁOWO-KLUCZOWE
poprzedzi się przedrostkiem no- i włączane w
przeciwnym przypadku.
Opcje --warning podane wielokrotnie łączą się.
Słowa kluczowe kontrolujące ogólne działanie tar:
- all
- Włącza wszystkie ostrzeżenia. Tak jest domyślnie.
- none
- Wyłącza wszystkie ostrzeżenia.
- filename-with-nuls
- "%s: przeczytana nazwa pliku zawiera znak NUL"
- alone-zero-block
- "Samotny blok zerowy przy %s"
Słowa kluczowe właściwe poleceniu tar --create:
- cachedir
- ""%s: zawiera znacznik katalogu pamięci podręcznej %s; %s"
- file-shrank
- "%s: Plik skurczył się o %s bajtów; jest dopełniany zerami"
- xdev
- "%s: plik w innym systemie plików; nie został zapisany"
- file-ignored
- "%s: Nieznany typ pliku; plik zignorowany"
"%s: zignorowane gniazdo z nazwą"
"%s: zignorowany plik door" - file-unchanged
- "%s: plik jest niezmieniony; nie został zapisany"
- ignore-archive
- "%s: archiwum nie może zawierać samego siebie; nie zostało zapisane"
- file-removed
- "%s: Plik usunięty zanim został przeczytany"
- file-changed
- "%s: plik zmienił się w trakcie czytania"
- failed-read
- Wyłącza ostrzeżenia o nieodczytywalnych plikach lub katalogach. To słowo kluczowe działa tylko łącznie z opcją --ignore-failed-read.
Słowa kluczowe właściwe poleceniu tar --extract:
- existing-file
- "%s: pominięcie istniejącego pliku"
- timestamp
- "%s: niemożliwie stara data %s"
"%s: znacznik czasowy %s jest przesunięty o %s s w przyszłość" - contiguous-cast
- "Wypakowywanie ciągłych plików jako zwykłych plików"
- symlink-cast
- "Próba wypakowania dowiązań symbolicznych jako dowiązań zwykłych"
- unknown-cast
- "%s: Nieznany typ pliku „%c”, odtworzony jako plik zwykły"
- ignore-newer
- "Aktualny %s jest nowszy albo w tym samym wieku"
- unknown-keyword
- "Zignorowane nieznane słowo kluczowe nagłówka rozszerzonego „%s”"
- decompress-program
- Kontroluje szczegółowe opisy niepowodzeń przy
próbie uruchomienia alternatywnych programów
rozpakowujących. To ostrzeżenie jest domyślnie
wyłączone (chyba, że podano --verbose).
Popularnym przykładem tego, co można otrzymać za
pomocą tego ostrzeżenia jest:
$ tar --warning=decompress-program -x -f archive.Z tar (child): Nie można uruchomić compress: Nie ma takiego pliku ani katalogu tar (child): próbuję gzip
Oznacza to, że tar pierwotnie spróbował rozpakować archive.Z za pomocą compress, a gdy to się nie powiodło, przełączyć się na gzip.
- record-size
- "Rozmiar rekordu = %lu bloków"
Słowa kluczowe kontrolujące wypakowanie przyrostowe:
- rename-directory
- "%s: Nazwa katalogu została zmieniona z %s"
"%s: Nazwa katalogu została zmieniona" - new-directory
- "%s: Katalog jest nowy"
- xdev
- "%s: katalog na innym urządzeniu: bez skasowania"
- bad-dumpdir
- "Zły format katalogu zrzutów: nigdy nie użyte „X”"
- -w, --interactive, --confirmation
- Pyta o zgodę na każde działanie.
Opcje kompatybilności¶
- -o
- Przy tworzeniu, odpowiednik --old-archive. Przy wypakowywaniu, odpowiednik --no-same-owner.
Przyrostki oznaczające rozmiar¶
Przyr. Jednostki Liczba bajtów b Bloki ROZMIAR x 512 B Kilobajty ROZMIAR x 1024 c Bajty ROZMIAR G Gigabajty ROZMIAR x 1024^3 K Kilobajty ROZMIAR x 1024 k Kilobajty ROZMIAR x 1024 M Megabajty ROZMIAR x 1024^2 P Petabajty ROZMIAR x 1024^5 T Terabajty ROZMIAR x 1024^4 w Słowa ROZMIAR x 2
WARTOŚĆ ZWRACANA¶
Kod zakończenia programu tar wskazuje, czy udało mu się pomyślnie zakończyć nakazane działanie, a jeśli nie, jakiego typu błąd wystąpił.
- 0
- Prawidłowe zakończenie.
- 1
- Jakieś pliki różnią się. Jeśli wywołano tar z opcją wiersza polecenia --compare (--diff, -d) oznacza to, że niektóre pliki w archiwum różnią się od ich odpowiedników na dysku. Jeśli tar podano opcję --create, --append lub --update, ten kod zakończenia oznacza, że niektóre pliki zostały zmienione przy archiwizacji, zatem wynikowe archiwum nie zawiera dokładnej kopii zestawu plików.
- 2
- Błąd krytyczny. Oznacza wystąpienie jakiegoś nieodwracalnego błędu krytycznego.
Jeśli podproces wywołany przez tar wyszedł z niezerowym kodem wyjścia, tar również wyjdzie z tym kodem. Może się to zdarzyć gdy, na przykład, podano opcję kompresowania (np. -z), a zewnętrzny program kompresujący zawiódł. Inny przykładem jest niepowodzenie programu rmt przy tworzeniu kopii zapasowej na zdalnym urządzeniu.
ZOBACZ TAKŻE¶
bzip2(1), compress(1), gzip(1), lzma(1), lzop(1), rmt(8), symlink(7), xz(1), zstd(1).
Pełny podręcznik tar: uruchomi go polecenie info tar lub tryb info edytora emacs(1).
Kopie dokumentacji GNU tar w różnych formatach można znaleźć pod adresem:
ZGŁOSZENIA BŁĘDÓW¶
Raporty o błędach można wysyłać na adres <bug-tar@gnu.org>.
PRAWA AUTORSKIE¶
Copyright © 2023 Free Software Foundation, Inc.
Licencja GPLv3+: GNU GPL w wersji 3 lub późniejszej
<https://gnu.org/licenses/gpl.html>.
Jest to wolne oprogramowanie: można je zmieniać i
rozpowszechniać. Nie ma ŻADNEJ GWARANCJI, w granicach
określonych przez prawo.
TŁUMACZENIE¶
Autorami polskiego tłumaczenia niniejszej strony podręcznika są: Łukasz Kowalczyk <lukow@tempac.okwf.fuw.edu.pl>, Andrzej Krzysztofowicz <ankry@green.mf.pg.gda.pl>, Michał Kułach <michal.kulach@gmail.com> i Kuba Basiura <kuba.basiura@gmail.com>
Niniejsze tłumaczenie jest wolną dokumentacją. Bliższe informacje o warunkach licencji można uzyskać zapoznając się z GNU General Public License w wersji 3 lub nowszej. Nie przyjmuje się ŻADNEJ ODPOWIEDZIALNOŚCI.
Błędy w tłumaczeniu strony podręcznika prosimy zgłaszać na adres listy dyskusyjnej manpages-pl-list@lists.sourceforge.net.
11 lipca 2022 r. | TAR |