Am 17.12.2013 13:25, schrieb Alex Winzer:
Hallo,
On 17.12.2013 12:19, Roman Fietze wrote:
Hallo Alex,
On Tue, 17.12.2013 10:36:30 Alex Winzer wrote:
tar -C /srv/mysql/ -zPcvf /srv/mysql/.backup/test.tar *
Unter POSIX/Linux/UNIX wir der Stern '*' von der Shell aufgeloest, d.h. an dieser Stelle uebergibst du schon mal eine Liste der sichtbaren Dateien im aktuellen PWD.
Wie waere fuer dich
tar -C /srv/mysql/ -zPcvf /srv/mysql/.backup/test.tar.gz .
???
Ne, das wäre nicht gut. Bei genauem Hinsehen besteht das Problem, dass das zu backupende Verzeichnis auch das Backup-Verzeichnis enthält. Die Verzeichnisse von MySQL sind alle sichtbar. Das nutze ich insoweit bewusst aus. Nähme ich jetzt den '.', dann würde ich mit jedem neuen Backup die bereits bestehenden Backups mit sichern.
Gruß, Alex Am 17.12.2013 13:25, schrieb Alex Winzer:> Hallo,
On 17.12.2013 12:19, Roman Fietze wrote:
Hallo Alex,
On Tue, 17.12.2013 10:36:30 Alex Winzer wrote:
tar -C /srv/mysql/ -zPcvf /srv/mysql/.backup/test.tar *
Unter POSIX/Linux/UNIX wir der Stern '*' von der Shell aufgeloest, d.h. an dieser Stelle uebergibst du schon mal eine Liste der sichtbaren Dateien im aktuellen PWD.
Wie waere fuer dich
tar -C /srv/mysql/ -zPcvf /srv/mysql/.backup/test.tar.gz .
???
Ne, das wäre nicht gut. Bei genauem Hinsehen besteht das Problem, dass das zu backupende Verzeichnis auch das Backup-Verzeichnis enthält. Die Verzeichnisse von MySQL sind alle sichtbar. Das nutze ich insoweit bewusst aus. Nähme ich jetzt den '.', dann würde ich mit jedem neuen Backup die bereits bestehenden Backups mit sichern.
Gruß, Alex
Hallo Alex, ich hab da mal ein bisschen rumprobiert bei mir. Am einfachsten wäre es, wenn Du vorher mit cd /srv/mysql in das Verzeichnis wechselst und dann tar -cf .backup/test.tar * ausführst. Dann werden alle Dateien in /srv/mysql, die auf das Muster * passen, mit relativen Pfadnamen gesichert. '.backup' passt nicht und ist nicht in der Sicherung. Wenn Du 'cd /srv/mysql' nicht machen willst, musst Du natürlich in Deinem Aufruf von tar irgendwo die absoluten Pfadnamen angeben, damit tar überhaupt die richtigen Dateien sichert. Bei der Angabe des Archivs ist das kein Problem, aber bei der Angabe der zu sichernden Dateien: Die sichert tar anscheinend so, wie sie auf der Kommandozeile stehen - dann also mit absolutem Pfad: tar -cf /srv/mysql/.backup/test.tar /srv/mysql/* führt dazu, dass volle Pfadnamen gespeichert werden - auch wenn du mit -C /srv/mysql dorthin wechselst. Wenn du mit tar -cf /srv/mysql/.backup/test.tar -C /srv/mysql * arbeitest, dann beschwert sich tar, dass es die Dateien, die bash ihm anstelle des '*' übergibt, in /srv/mysql nicht findet - die sind nämlich nur in deinem Arbeitserzeichnis zu finden. tar -cf /srv/mysql/.backup/test.tar /srv/mysql sichert alle Dateien in /srv/mysql mit relativen Pfadnamen, aber eben *alle* Dateien, also auch .backup. Ggf. könntest du da mit --exclude= arbeiten. Eine Lösung wäre tar -cf /srv/mysql/.backup/test.tar -C /srv/mysql $(ls /srv/mysql) Dann übergibt die shell an tar die Liste der Dateien in /srv/mysql, aber mit relativen Pfadnamen. Versteckte Dateien zeigt ls bekanntlich normalerweise nicht an, es sei denn, du hast da default-Einstellungen verändert. Klappt das bei Dir? Gruß, Christian -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org