Startpagina > Comprimeren & archiveren > tar

tar: Bestanden archiveren en uitpakken

Een essentieel hulpmiddel om meerdere bestanden en mappen te bundelen tot één .tar-bestand (archiveren) of om gebundelde bestanden uit te pakken (extraheren). Wordt vaak gebruikt in combinatie met compressiefuncties zoals Gzip (-z) of Bzip2 (-j).

Wat is tar?

tar staat voor 'Tape Archive' en is oorspronkelijk gemaakt om gegevens naar magneetbanden te back-uppen. Tegenwoordig is het een standaard Linux-hulpmiddel dat wordt gebruikt om meerdere bestanden en mappen te bundelen tot één bestand, waardoor ze gemakkelijker te beheren of over te dragen zijn. tar zelf bundelt alleen bestanden; compressie wordt gespecificeerd via afzonderlijke opties (-z, -j, -J).

Kernwerkingsmodi

tar werkt tegelijkertijd in één van de belangrijkste modi (aanmaken, uitpakken, lijst).

  • -c (Create): Maakt een nieuw archiefbestand aan.
  • -x (Extract): Pakt bestanden uit een archiefbestand uit.
  • -t (List): Toont de inhoud (lijst) van een archiefbestand zonder het uit te pakken.
  • -f (File): Specificeert het te bewerken archief 'bestand'. Essentieel voor bijna alle bewerkingen.

Belangrijke opties (Shell)

tar wordt gebruikt door opties te combineren. Het belangrijkste is om één van `-c`, `-x`, `-t` te kiezen.

1. Werkingsmodus (kies één)

2. Bestand en compressie specificeren

3. Doel en aanvullende functies

Gegenereerde opdracht:

Probeer de opdrachtcombinaties.

Uitleg:

`tar` Voer het commando uit.

Combineer deze opties en voer de opdracht virtueel uit met de AI.

Gebruiksscenario's (Shell)

Voorbeelden van de meest gebruikte combinaties. (De `-` voor opties kan worden weggelaten, maar het is aan te raden deze te specificeren.)

Archief aanmaken met gzip (.tar.gz)

tar -cvzf backup.tar.gz /home/user/data

c(aanmaken), v(verbose), z(gzip), f(bestand) + [resultaatbestand] + [doel]

gzip-archief uitpakken (.tar.gz)

tar -xvzf backup.tar.gz

x(uitpakken), v(verbose), z(gzip), f(bestand) + [doelbestand]

Inhoud van gecomprimeerd bestand weergeven (.tar.gz)

tar -tvf backup.tar.gz

t(lijst), v(verbose), f(bestand) (moderne tar detecteert -z automatisch)

Uitpakken naar een specifieke map

tar -xvzf backup.tar.gz -C /opt/restore

Specificeer het pad met de -C optie.

Archief aanmaken met bzip2 (.tar.bz2)

tar -cvjf archive.tar.bz2 ./docs

Gebruik de j(bzip2) optie in plaats van z.

bzip2-archief uitpakken (.tar.bz2)

tar -xvjf archive.tar.bz2

Archiveren met uitsluiting van specifieke bestanden/mappen

tar -cvzf app.tar.gz ./app --exclude="*.log" --exclude="node_modules"

Gebruik de --exclude optie. (Kan meerdere keren worden gebruikt)

Installatie

tar is standaard geïnstalleerd op bijna alle Linux-distributies (en macOS). (Meestal GNU tar). Mocht installatie om welke reden dan ook nodig zijn, dan kan het worden geïnstalleerd met de pakketnaam 'tar'.

Standaard geïnstalleerd

Aparte installatie is zelden nodig. Controleer de versie door `tar --version` in te typen.

Debian/Ubuntu (indien nodig)

sudo apt update && sudo apt install -y tar

RHEL/CentOS/Fedora (indien nodig)

sudo dnf install -y tar

Tips & Aandachtspunten

Handige tips

  • Weglaten van koppelteken (-): Volgens oude conventie kunt u het koppelteken weglaten voor de eerste groep opties, zoals `tar cvf ...` (bijv. `tar cvf` = `tar -cvf`). Het wordt echter aanbevolen om de `-` te specificeren voor duidelijkheid.
  • Automatische compressiedetectie: Moderne `tar` detecteert automatisch de compressie op basis van de bestandsextensie bij het uitpakken (-x), zelfs zonder `-z`, `-j`, of `-J`. (Bijv. u kunt gewoon `tar -xf archive.tar.gz` typen.)
  • Rechten behouden (-p): Bij het herstellen van een systeemback-up is het belangrijk om de `-p` optie te gebruiken om de bestandsrechten en het eigendom te behouden.
  • Padproblemen (-C): Als u bestanden naar een andere locatie dan de huidige wilt uitpakken, is het gebruik van de `-C /pad` optie veel efficiënter dan de bestanden later te verplaatsen.
  • Let op absolute paden: Als u bestanden archiveert (-c) met een absoluut pad zoals `/home/user`, zullen ze bij het uitpakken (-x) ook naar dat absolute pad worden uitgepakt. (Moderne tar verwijdert soms de voorloop `/` om veiligheidsredenen). Het is veiliger om relatieve paden te gebruiken, zoals `cd /home && tar -cvf user.tar ./user`.

gerelateerde commando's

Functional vergelijkbare of vaak samen gebruikte commando's.



Hétzelfde categoriecommando