# TAR

## 📦 Linux: Tar-Archive erstellen, komprimieren und entpacken

Mit dem `tar`-Befehl kannst du unter Linux einfach komplette Ordner archivieren und optional komprimieren. Hier ist eine vollständige, übersichtliche Anleitung mit allen wichtigen Optionen und Beispielen.

---

### 1️⃣ Einfaches Tar-Archiv erstellen

```
tar -cvf archivname.tar /pfad/zum/ordner
```

- `-c` → Neues Archiv erstellen
- `-v` → Ausgabe der Dateien im Terminal (verbose)
- `-f` → Dateiname für das Archiv

**Beispiel:**

```
tar -cvf meinArchiv.tar meinOrdner/
```

---

### 2️⃣ Archiv mit Kompression erstellen

#### a) Mit gzip (.tar.gz / .tgz)

```
tar -czvf meinArchiv.tar.gz meinOrdner/
```

`-z` → gzip-Kompression

#### b) Mit bzip2 (.tar.bz2)

```
tar -cjvf meinArchiv.tar.bz2 meinOrdner/
```

`-j` → bzip2-Kompression

#### c) Mit xz (.tar.xz)

```
tar -cJvf meinArchiv.tar.xz meinOrdner/
```

`-J` → xz-Kompression (stärkste Kompression, aber langsamer)

---

### 3️⃣ Nützliche Optionen

#### a) Verzeichniswechsel mit `-C`

```
tar -czvf meinArchiv.tar.gz -C /pfad/zum meinOrdner/
```

→ Nimmt nur `meinOrdner`, nicht den gesamten Pfad ins Archiv auf

#### b) Dateien oder Verzeichnisse ausschließen

```
tar -czvf meinArchiv.tar.gz --exclude='*.log' meinOrdner/
```

→ Schließt alle `.log`-Dateien vom Archiv aus

#### c) Archivgröße vor und nach Kompression prüfen

```
du -sh meinArchiv.tar.gz
```

---

### 4️⃣ Inhalt eines Archivs anzeigen (ohne entpacken)

#### a) Unkomprimiertes Archiv:

```
tar -tvf meinArchiv.tar
```

#### b) Komprimiertes Archiv (gzip):

```
tar -tzvf meinArchiv.tar.gz
```

---

### 5️⃣ Archiv entpacken

#### a) Unkomprimiertes Archiv:

```
tar -xvf meinArchiv.tar
```

#### b) Mit gzip:

```
tar -xzvf meinArchiv.tar.gz
```

#### c) Mit bzip2:

```
tar -xjvf meinArchiv.tar.bz2
```

#### d) Mit xz:

```
tar -xJvf meinArchiv.tar.xz
```

---

### 6️⃣ Komplettes Beispiel

**Archivieren und komprimieren:**

```
tar -czvf projekt.tar.gz projekt/
```

**Wiederherstellen / Entpacken:**

```
tar -xzvf projekt.tar.gz
```

---

### 💡 Tipps

- Nutze `--exclude`, um große, unnötige Dateien auszusparen
- Verwende `absolute Pfade` nur mit `-C`, damit dein Archiv sauber bleibt
- Du kannst mehrere Ordner/Dateien auf einmal archivieren:

```
tar -czvf backup.tar.gz /etc /var/log /home/user1
```

---

### 🧪 Test-Modus: Was würde `tar` tun?

```
tar -cvf meinArchiv.tar --dry-run meinOrdner/
```

*Simuliert die Archiv-Erstellung, ohne eine Datei zu schreiben (nur mit `--dry-run` in Kombination mit GNU tar)*

---

### 📚 Weiterführende Hilfe

```
man tar
```

Oder online: [https://man7.org/linux/man-pages/man1/tar.1.html](https://man7.org/linux/man-pages/man1/tar.1.html)