tar - narzędzie archiwizujące
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...]
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
info tar
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
https://www.gnu.org/software/tar/manual
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.
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.
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 /etc
lub
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 /etc
lub (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.
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.
- --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.
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.
- --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.
- --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.
- -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 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.
- --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.
- -o
- Przy tworzeniu, odpowiednik --old-archive. Przy wypakowywaniu,
odpowiednik --no-same-owner.
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
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.
Raporty o błędach można wysyłać
na adres <bug-tar@gnu.org>.
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 niniejszej strony podręcznika:
Ł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.