• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

[gelöst]tar:Sicherung nur auf dem aktuellen Mount/filesystem

motions

Member
Ich möchte per tar eine Verzeichnisstruktur sichern, die mehrere mount-Punkte enthält, wo z.B. CD iso-Dateien eingebunden sind. Diese zusätzlichen Mount-Punkte möchte ich NICHT sichern.
Bacula macht das z.B. standardmäßig so.
Dann wird dort der Text:
rufus-fd: /misc is a different filesystem. Will not descend from / into /misc
onefs=yes|no If set to yes (the default), Bacula will remain on a single file system. That is it will not
backup file systems that are mounted on a subdirectory. If you are using a *nix system, you may not
even be aware that there are several different filesystems as they are often automatically mounted by
the OS (e.g. /dev, /net, /sys, /proc, ...). With Bacula 1.38.0 or later, it will inform you when it decides
not to traverse into another filesystem. This can be very useful if you forgot to backup a particular
partition. An example of the informational message in the job report is:
If you wish to backup multiple filesystems, you can explicitly list each filesystem you want saved.
Otherwise, if you set the onefs option to no, Bacula will backup all mounted file systems (i.e. traverse
mount points) that are found within the FileSet.

Ich habe mich schon mal durch die man pages von tar gearbeitet, habe aber keine Option gefunden, die NUR im aktuellen Mount-Point bzw. Filesystem bleibt. Habe ich da was übersehen und es gibt doch was?
 

spoensche

Moderator
Teammitglied
Ja, es gibt da eine Option. Du gibst tar die Option exclude mit, um alle Unterverzeichnisse des Mountpoints nicht in das Archiv aufzunehmen.

Bsp.:
Code:
tar --exclude=/pfad/zum/mp/* -cjf archiv.tar.bz2 /pfad/zum/zu/sichernden/verzeichnis
 
OP
M

motions

Member
Diese -exclude option ist mir bekannt. Nur das sind viel zu viele excludes. Außerdem sind die dynamisch (d.h. da werden im Laufe eines Monats mehrere ISO-Images aus- und neue eingehängt). Das fehlerfrei zu pflegen ist mühsam.
Ich denke ich werde einfach das Basisverzeichnis für die Sicherung auf einem Temp. Mountpoint noch einmal einhängen. Dort hat er dann keine Sub-Mountpoints, so das ich das Ding sauber sichern kann.
 

framp

Moderator
Teammitglied
Man könnte wohl auch diese exclude Liste mit einem Script temporär für den tar Aufruf generieren lassen.
 
OP
M

motions

Member
josef-wien schrieb:
Ist das so schwer zu finden?
Code:
--one-file-system      beim Anlegen eines Archivs im lokalen Dateisystem bleiben
Ja, tatsächlich; das habe ich nicht gesehen :)
Ich lasse gerade mal einen Probelauf sichern und tatsächlich dumped tar dann eine Meldung, das er das Filesystem nicht hinabsteigt an dem Pfad.
Cool, damit ist das Problem gelöst!
Vielen Dank für den Tip auf das offensichtliche.
 
A

Anonymous

Gast
Eine andere Möglichkeit die sich dort anbietet wo es durchaus auch mal sein kann, das mit temporären mounts in dieses Filesystem hin und wieder auch mal Teile des Filesystems bewußt oder unbewusst verdeckt sind.

im Backupscript vor dem sichern dieses Filesystem noch einmal mit der Option "-o bind" auf einen separaten Mountpoint einhängen und dann diesen sichern. Danach wieder aushängen.

Hier am Beispiel rootfilesystem
Code:
mount -o bind / /mnt
cd /mnt
tar -cf /home/sicherung.tar .
cd -
umount /mnt

Hier im Beispeil werden alle in das Rootfilesystem gemountet Filesysteme wie zB /dev /proc /sys /home ....... automatisch nicht mit in der Sicherung aufgenommen, dafür aber zB Gerätedateien in /dev die sich im Rootfilesystem befinden und während eines frühen Bootvorganges eventuell dort auch benutzt werden aber später durch das mounten von udev überlagert werden.

Aufpassen muss man nur das man beim Erzeugen des Archives nicht den Namen des temporären Mountpointes mit sichert. Das könnte beim auspacken sonst leicht übersehen werden.

robi
 
Oben