tar (od ang. Tape Archiver – „archiwizator taśmowy”) – uniksowy program do umieszczania grupy plików w jednym zbiorczym pliku (tzw. archiwum), który następnie może zostać skompresowany programami gzip, bzip2, compress lub lzma, co daje odpowiednio pliki .tar.gz (w skrócie .tgz), .tar.bz2, .tar.Z, i .tar.xz. Istnieją również inne algorytmy kompresji które można zastosować po spakowaniu przy pomocy programu tar (narzędzia takie wtedy są prostsze, ponieważ nie muszą zajmować się nazwami plików, dowiązaniami, katalogami, prawami dostępu, co wykonuje sam program tar, i pozostawiając sobie kompresje tylko jednego pliku/strumienia). Dodawany do archiwum tar plik jest zawsze umieszczany na jego końcu.

Takie skompresowane pliki tar są nazywane tarball[1].

Jak sama nazwa wskazuje, program ten był początkowo używany do przygotowania plików do archiwizacji na taśmach magnetycznych, a obecnie jest wykorzystywany do przygotowywania archiwów zapisywanych na dowolnym nośniku.

Program ten jest powszechnie używany w systemach operacyjnych typu Unix, jednak istnieją też wersje programu dla innych systemów operacyjnych.

Podstawowe opcje wiersza poleceń

edytuj
  • -c – tworzy plik w formacie tar
  • -f – określa nazwę pliku archiwum tar
  • -v – wypisuje nazwy wszystkich plików
  • -x – wyodrębnia wymienione pliki
  • -t – wyświetla zawartość archiwum
  • -r – włącza bezwarunkowe dołączanie plików do archiwum
  • -u – powoduje dołączenie do archiwum tylko tych plików, które są nowsze niż ich odpowiedniki w archiwum
  • -z – włącza kompresję programem gzip
  • -j – włącza kompresję programem bzip2
  • -Z – włącza kompresje programem compress
  • -J – włącza kompresję programem xz

Przykład użycia

edytuj

1. Tworzymy archiwum katalogu roboczego /home/robo. Wpisujemy z poziomu /home

tar -cvf moje.tar robo

Zostaje utworzony plik moje.tar

2. Wypakowujemy zawartość z wyświetleniem plików:

tar -xvf moje.tar

Z pliku moje.tar zostanie wypakowana zawartość archiwum z wypisaniem nazw plików na standardowe wyjście.

3. Sprawdzamy ile kilobajtów zajmuje archiwum

du --apparent-size -BkB moje.tar

Zostaje wyświetlona nam po lewej stronie wielkość archiwum w kilobajtach, np. 17kB moje.tar, co oznacza że archiwum zajmuje 17 kilobajtów.

4. Tworzymy nowy plik nowy

touch nowy

Zostaje utworzony nowy plik o nazwie nowy.

5. Dodajemy plik nowy do istniejącego archiwum

tar -rvf moje.tar nowy

Do naszego archiwum moje.tar został dodany plik nowy.

6. Sprawdzamy zawartość archiwum

tar -tvf moje.tar

Zostaje wyświetlona zawartość pliku moje.tar

7. Kompresujemy archiwum za pomocą gzip

gzip moje.tar

Dotychczas pliki były tylko zarchiwizowane jako moje.tar, teraz za pomocą algorytmu gzip archiwum zostało skompresowane.

8. Tworzymy katalog temp w /home/robo/

mkdir temp

Zostaje nam utworzony katalog temp w /home/robo

9. Następnie przenosimy plik moje.tar.gz do /home/robo/temp i rozpakowujemy go

tar -xvzf moje.tar.gz

Zawartość archiwum moje.tar.gz zostaje wypakowana do katalogu /home/robo/temp

Przypisy

edytuj
  1. Nazwa ta nawiązuje do mazistych grudek częściowo zestalonej ropy naftowej unoszących się na wodzie i znajdowanych na plaży po katastrofie tankowców.

Linki zewnętrzne

edytuj