Ordner mit tar komprimieren?

268

Ich versuche , einen Ordner (komprimiert /var/www/) auf , ~/www_backups/$time.tarwo $timeist das aktuelle Datum.

Das habe ich:

cd /var/www && sudo tar -czf ~/www_backups $time"

Ich bin völlig verloren und bin jetzt schon stundenlang dabei. Ich bin mir nicht sicher, ob -czfes richtig ist. Ich möchte einfach den gesamten Inhalt /var/wwwin eine $time.tarDatei kopieren und die Dateiberechtigungen für alle Dateien beibehalten. Kann mir jemand helfen?

QWERTY
quelle
Sie brauchen ein "auf der anderen Seite $timeauch.
Gauteh

Antworten:

373

Für tarund gzipeinen Ordner lautet die Syntax:

tar czf name_of_archive_file.tar.gz name_of_directory_to_tar

Das -ist optional. Wenn Sie in tardas aktuelle Verzeichnis wechseln möchten, geben Sie das an ..

Verwenden Sie das dateHilfsprogramm, um Ihren Dateinamen zu erstellen (die verfügbaren Formatoptionen finden Sie auf der Manpage). Zum Beispiel:

cd /var/www && sudo tar czf ~/www_backups/$(date +%Y%m%d-%H%M%S).tar.gz .

Dies hätte eine Datei mit dem Namen erstellt 20120902-185558.tar.gz.

Unter Linux wird tarwahrscheinlich auch die BZip2-Komprimierung mit der Option janstatt unterstützt z. Und möglicherweise andere. Überprüfen Sie die Manpage auf Ihrem lokalen System.

Matte
quelle
1
Das ist perfekt, danke. Ich habe jedoch ein winziges Problem. Nachdem Sie eine TAR-Datei von / var / www erstellt haben, wird sie in den Verzeichnissen / var / www in der TAR-Datei abgelegt. Hier ist der Code, den ich gerade verwende. sudo tar -czf ~/www_backups/$time.tar /var/www/"Stellen Sie sich vor, ich habe eine Datei namens test.txt in / var / www. Nachdem ich eine Tar-Kopie der Datei erstellt habe, wird sie beim Extrahieren in die Verzeichnisse / var / www gestellt. Ist das sinnvoll? Ich hoffe es ist schwer zu erklären. Ich werde nach BZip2-Unterstützung suchen, danke für den Vorschlag!
QWERTY
1
Aus diesem Grund wechseln Sie zuerst cdzu dem Verzeichnis, das Sie packen möchten. Wenn Sie als tar cf file.tar .Letztes .den vollständigen Pfad angeben, werden die Pfade im Archiv relativ zum aktuellen Verzeichnis erstellt. Sie können auch die -COption für tar verwenden (siehe Manpage).
Mat
1
Ja, das hat viel besser funktioniert. Vielen Dank, danke!
QWERTY
3
@Qwertylicious -f(von Manpage)Read the archive from or write the archive to the specified file.The filename can be - for standard input or standard output.
Kolob Canyon
1
sudowar in der frage, hat sich nicht geändert oder in frage gestellt. Es ist jedoch keine schlechte Idee, das Backup-Zielverzeichnis auf root zu beschränken.
Mat