how to replay a snapshot (btrfs) ?

Lentes, Bernd bernd.lentes at helmholtz-muenchen.de
Tue Jul 26 18:19:33 UTC 2016



----- Am 26. Jul 2016 um 17:59 schrieb Rashkae ubuntu at tigershaunt.com:

> On 16-07-26 08:55 AM, Lentes, Bernd wrote:
>> Hi,
>>
>> sorry for asking this simple question. But i'm new to btrfs. And all the guides
>> i found in the internet are different and none of them succeeded.
>> I made a snapshot form my / , did some changes in the configurtaion (which
>> weren't successfull), now i want to get back to the snapshot.
>>
>> This is my system:
>>
>> root at PC65472:~# btrfs sub list -ap /
>> ID 257 gen 38915 parent 5 top level 5 path <FS_TREE>/@
>> ID 258 gen 38903 parent 5 top level 5 path <FS_TREE>/@home
>> ID 285 gen 38828 parent 257 top level 257 path @/snapshots/root_190720162124
>>
>> ID 285 is my snapshot.
>>
>> root at PC65472:~# btrfs sub get-default /
>> ID 285 gen 38828 top level 257 path snapshots/root_190720162124
>>
>> I changed the snapshot to the default but i still have the configuration changes
>> i'd like to loose.
>> Also after a restart still no replay of the snapshot.
>>
> 
> I suggest not changing the default subvolume... That way lies madness
> 
> In the typical Ubuntu install, the default top level subvolume (5) is
> the default, and subvolume "@" is mounted as root.  (This is configured
> in the Grub kernel parameters as well at /etc/fstab
> 
> Your situation is a bit complicacated because you have your snapshots
> folder/subvolume as a subfolder of @.  This is how snapper program
> handles it by default, but unless your scripts need to be setup that
> way, I would change it, for your own convienience.  (If you were using
> snapper, you would also use snapper to roll back changes.  I'm not
> covering that in this message, however.

I didn't use snaper.

> 
> You can do this by booting to a live CD, but I've successfully done this
> on my live system as well, (ie, I changed root while booted to the
> system, rebooted, and was successfully rolled back.  If your doing this
> live, you'll want to make sure your not running anything that needs to
> preserve it's running state.  To this right, you would usually boot into
> some kind of single user mode.  But I can be recklessly wild when I know
> what my desktop is doing/not doing.
> 

I tried "systemctl rescue". But i couldn't login afterwards, after typing "root" system said "system is going down".
Tried several times.
I booted a live cd.

> If your default subvolume is still 285, make sure to change it back to
> 5.  I think there might be booting problems if you change the default
> subvolume.
> 

IIRC correctly default was ID 257 so i set default to 257 and rebooted without any problem.

> 1.  Mount the device that contains your snapshots.  ex: mkdir /mnt/device
> mount /dev/sda1 /mnt/device

mount /dev/vg1/lv_root /mnt/root
 
> ls /mnt/device should show sow a @ and @home directories.

yes

> 2. optional: move your snapshot folder out of the root.  mv
> /mnt/device/@/snapshots /mnt/device/

didn't

> 3. rename your old root:  mv @ delete_me
 

mv /mnt/root/ /mnt/root/old

> 4. create a new snapshot of your snapshot for use.
> btrfs subvolume snapshot /mnt/device/snapshots/root_190720162124
> /mnt/device/@
> 

btrfs sub snapshot /mnt/root/snapshots/root_190720162124 /mnt/root/@

suceeded.

> Reboot

> You should now be rolled back.

No. Ran into busybox.

Rebooted again with a live cd.

mount /dev/vg1/lv_root /mnt/root

root at ubuntu:~# ll /mnt/root/
insgesamt 0
drwxr-xr-x 1 root root   8 Jul 26 17:35 ./
drwxr-xr-x 1 root root  60 Jul 26 17:57 ../
drwxr-xr-x 1 root root 244 Jul 19 20:19 @/
drwxr-xr-x 1 root root 322 Jul 26 11:53 old/

root at ubuntu:~# ll /mnt/root/@
insgesamt 16
drwxr-xr-x 1 root root  244 Jul 19 20:19 ./
drwxr-xr-x 1 root root    8 Jul 26 17:35 ../
drwxr-xr-x 1 root root 2558 Jul 19 11:48 bin/
drwxrwxr-x 1 root root    0 Jun  8 15:19 boot/
drwxrwxr-x 1 root root    0 Jun  8 15:25 cdrom/
drwxr-xr-x 1 root root  894 Apr 20 22:15 dev/
drwxr-xr-x 1 root root 4636 Jul 19 19:28 etc/
drwxrwxr-x 1 root root    0 Jun  8 15:19 home/
lrwxrwxrwx 1 root root   32 Jul 15 11:26 initrd.img -> boot/initrd.img-4.4.0-31-generic
lrwxrwxrwx 1 root root   32 Jun 28 01:18 initrd.img.old -> boot/initrd.img-4.4.0-28-generic
drwxr-xr-x 1 root root  464 Jul 19 19:27 lib/
drwxr-xr-x 1 root root   40 Apr 20 22:07 lib64/
drwxr-xr-x 1 root root    0 Apr 20 22:07 media/
drwxr-xr-x 1 root root   10 Jul 19 11:46 mnt/
drwxr-xr-x 1 root root   28 Jun 24 13:59 opt/
drwxr-xr-x 1 root root    0 Apr 12 20:14 proc/
drwx------ 1 root root  434 Jul 19 19:24 root/
drwxr-xr-x 1 root root  252 Apr 20 22:17 run/
drwxr-xr-x 1 root root 4288 Jul 19 19:27 sbin/
drwxr-xr-x 1 root root    0 Jul 19 20:19 snapshots/
drwxr-xr-x 1 root root    0 Apr 20 22:07 srv/
...

That's the root i need.

root at ubuntu:~# btrfs sub list /mnt/root/
ID 257 gen 39220 top level 5 path @
ID 258 gen 38903 top level 5 path @home
ID 285 gen 39218 top level 257 path old/snapshots/root_190720162124
ID 300 gen 39218 top level 257 path @
 Two subvolumes @ ? Can i delete ID 257 ?

root at ubuntu:~# mv /mnt/root/@/* /mnt/root/
root at ubuntu:~# ll /mnt/root/
insgesamt 16
drwxr-xr-x 1 root root  252 Jul 26 18:12 ./
drwxr-xr-x 1 root root   60 Jul 26 17:57 ../
drwxr-xr-x 1 root root    0 Jul 26 18:12 @/
drwxr-xr-x 1 root root 2558 Jul 19 11:48 bin/
drwxrwxr-x 1 root root    0 Jun  8 15:19 boot/
drwxrwxr-x 1 root root    0 Jun  8 15:25 cdrom/
drwxr-xr-x 1 root root  894 Apr 20 22:15 dev/
drwxr-xr-x 1 root root 4636 Jul 19 19:28 etc/
drwxrwxr-x 1 root root    0 Jun  8 15:19 home/
lrwxrwxrwx 1 root root   32 Jul 15 11:26 initrd.img -> boot/initrd.img-4.4.0-31-generic
lrwxrwxrwx 1 root root   32 Jun 28 01:18 initrd.img.old -> boot/initrd.img-4.4.0-28-generic
drwxr-xr-x 1 root root  464 Jul 19 19:27 lib/
drwxr-xr-x 1 root root   40 Apr 20 22:07 lib64/
drwxr-xr-x 1 root root    0 Apr 20 22:07 media/
drwxr-xr-x 1 root root   10 Jul 19 11:46 mnt/
...

That looks good.

root at ubuntu:~# rm -rfv /mnt/root/@
rm: das Entfernen von '/mnt/root/@' ist nicht möglich: Vorgang nicht zulässig

Live cd is Ubuntu 16.04 desktop and i choose german. Message means "operation not permitted". 
Because a subvolume is mounted there ? I will leave @

I will reboot now again and keep you informed.

Bernd

 

Helmholtz Zentrum Muenchen
Deutsches Forschungszentrum fuer Gesundheit und Umwelt (GmbH)
Ingolstaedter Landstr. 1
85764 Neuherberg
www.helmholtz-muenchen.de
Aufsichtsratsvorsitzende: MinDir'in Baerbel Brumme-Bothe
Geschaeftsfuehrer: Prof. Dr. Guenther Wess, Dr. Alfons Enhsen, Renate Schlusen (komm.)
Registergericht: Amtsgericht Muenchen HRB 6466
USt-IdNr: DE 129521671




More information about the ubuntu-users mailing list