ZFS rollback nach Reboot

Mardor

Well-Known Member
Hallo,

ich habe ein sehr komisches Problem mit meinem Hetzner Root Server (bsdinstallimage), den ich noch nie zuvor bei meinen Servern hatte. Aktuell habe ich einen Snapshot mit einem Stand bevor ich ezjail installiert habe. Nach dem Snapshot habe ich dann über ezjail begonnen jails zu nutzen (somit existiert ein Verzeichnis /usr/jails). Nun habe ich über mein zfs rollback script den alten snapshot wieder aktiviert. Die Ausführung des Sktips funktioniert auch ohne Probleme, direkt nach dem Rollback existiert beispielsweise das Verzeichnis /usr/jails nicht mehr. Alles so weit so gut.

Wenn ich nun das System einfach reboote existiert dann plötzlich das Verzeichnis uns die alten Files wieder.

Ich gehe aktuell nicht von einem Fehler in meinem Skript aus, da die Verzeichnisse ja vor dem Reboot noch vorhanden sind. Aber trotzdem hier mal mein Shell Skript:

Code:
#! /usr/local/bin/perl -w

$num_args = $#ARGV + 1;
if ($num_args != 1) {
  print "\nUsage: zfsrollback.pl zfs-snapshot name\n";
  exit 1;
}

$arg = $ARGV[0];
@snap = `zfs list -t snapshot`;

foreach $zeile ( @snap ) {
if ( $zeile =~ /$arg/ ) {
  @splzeile = split " ", $zeile;
  print "\nRollback: $splzeile[0]\n";
  `zfs rollback -r $splzeile[0]`;
  print "\nRollback: $splzeile[0] ... done\n";
  print ""
}
}

Ich muss dazu sagen das dies mein erster rollback auf diesem System ist, somit gehe ich davon aus das dies bei einem anderen Rollback auf einen anderen Stand genauso passieren würde.

Als kleine zusätzliche Information: Ich benutze aktuell (zum ersten Mal) zfstools um mir periodische Snapshots anzufertigen. Allerdings sind beim rollback (wie üblich) alle zeitlich nachkommenden Snapshots gelöscht, somit bin ich der Meinung das das System ja auch nicht mehr auf einen Stand mit installiertem ezjail zurückgreifen sollte.

Gruß Mardor
 
Was zur...

Schonmal von zfs -H gehört? -o? *grusel* :>

Edit: Zum Thema fällt mir leider auf Anhieb nichts ein. Ist das reproduzierbar?
 
Hallo,

also wenn ich neu gebootet habe und somit das jail Verzeichnis wieder da ist, da ist auch ein Mountpoint da.

Code:
NAME  MOUNTPOINT  MOUNTED  MY.CUSTOM:PROPERTY
zroot  none  no  -
zroot/ROOT  none  no  -
zroot/ROOT/default  /  yes  -
zroot/ezjail  /usr/jails  yes  -
zroot/ezjail/basejail  /usr/jails/basejail  yes  -
zroot/ezjail/fulljail  /usr/jails/fulljail  yes  -
zroot/ezjail/newjail  /usr/jails/newjail  yes  -
zroot/tmp  /tmp  yes  -
zroot/usr  /usr  no  -
zroot/usr/home  /usr/home  yes  -
zroot/usr/ports  /usr/ports  yes  -
zroot/usr/src  /usr/src  yes  -
zroot/var  /var  no  -
zroot/var/crash  /var/crash  yes  -
zroot/var/log  /var/log  yes  -
zroot/var/mail  /var/mail  yes  -
zroot/var/tmp  /var/tmp  yes  -

Da ja ezjail eine neues dataset für die basejail anlegt, kann ich mir vorstellen das ich beim rollback zwar die übrigen datasets zurücksetze, jedoch bleibt der ezjail dataset unberührt da er zeitlich danach angelgt wurde.

Kann das sein ?

Gruß Mardor
 
Zurück
Oben