Tar ein Verzeichnis, aber keine vollständigen absoluten Pfade im Archiv speichern

Ich habe den folgenden Befehl im Teil eines Backup-Shell-Skripts:

tar -cjf site1.bz2 /var/www/site1/

Wenn ich den Inhalt des Archivs aufliste, erhalte ich:

tar -tf site1.bz2
var/www/site1/style.css
var/www/site1/index.html
var/www/site1/page2.html
var/www/site1/page3.html
var/www/site1/images/img1.png
var/www/site1/images/img2.png
var/www/site1/subdir/index.html

Aber ich möchte das Teil entfernen/var/www/site1 aus Verzeichnis- und Dateinamen innerhalb des Archivs, um das Extrahieren zu vereinfachen und unnötige konstante Verzeichnisstrukturen zu vermeiden. Ich weiß es nie, falls ich gesicherte Websites an einem Ort extrahieren würde, unter dem keine Webdaten gespeichert waren/var/www.

Für das obige Beispiel hätte ich gerne:

tar -tf site1.bz2
style.css
index.html
page2.html
page3.html
images/img1.png
images/img2.png
subdir/index.html

Wenn ich also extrahiere, werden die Dateien im aktuellen Verzeichnis extrahiert und ich muss die extrahierten Dateien nicht nachträglich verschieben, sodass die Unterverzeichnisstrukturen erhalten bleiben.

Es gibt bereits viele Fragen zu tar und backup instackoverflow und an anderen Stellen im Web, aber die meisten von ihnen fordern das Löschen der gesamten Unterverzeichnisstruktur (Reduzieren) oder das Hinzufügen oder Entfernen der Initialen / in den Namen (ich weiß nicht genau, was sich beim Extrahieren ändert), aber nicht mehr.

Nachdem ich einige der hier und da gefundenen Lösungen sowie das Handbuch gelesen hatte, versuchte ich:

tar -cjf site1.bz2 -C . /var/www/site1/
tar -cjf site1.bz2 -C / /var/www/site1/
tar -cjf site1.bz2 -C /var/www/site1/ /var/www/site1/
tar -cjf site1.bz2 --strip-components=3 /var/www/site1/

Aber keiner von ihnen hat so funktioniert, wie ich es will. Einige tun nichts, andere archivieren keine Unterverzeichnisse mehr.

Es befindet sich in einem Backup-Shell-Skript, das von einem Cron gestartet wurde. Daher weiß ich nicht genau, welcher Benutzer es ausführt, wie der Pfad und das aktuelle Verzeichnis lauten. Daher ist für alles immer das Schreiben eines absoluten Pfads erforderlich, und ich würde es vorziehen, das aktuelle Verzeichnis nicht zu ändern um zu vermeiden, dass das Skript weiter beschädigt wird (da nicht nur Websites, sondern auch Datenbanken gesichert werden, sondern alles an FTP usw. gesendet wird)

Wie kann man das erreichen?

Habe ich gerade falsch verstanden, wie die Option -C funktioniert?

Antworten auf die Frage(6)

Ihre Antwort auf die Frage