btrfs возвращает снимок корневого FS

Перед обновлением до Fedora 25 я сделал btrfs subvolume snapshot / /f24 . Я шляпу на небольшое свободное место, поэтому обновление не удалось. Теперь вопрос в том, как вернуть снимок? Я уже загрузился в моментальный снимок, отредактировав grub.cfg (установив rootflags=subvol=root/f24 ).

  1. этот парень говорит только btrfs subvolume delete root . Но я не уверен, что grub2 восстановит плохой grub.cfg при следующем обновлении ядра. Также delete root звуки delete root такие как операция rm -rf / like.

  2. Этот парень использовал rsync, чтобы просто скопировать данные из моментального снимка в корень. Я уверен, что это работает, но его ответ на 2013 год, и я предполагаю, что есть лучший способ просто вернуть снимок.

  3. Я несколько раз нашел «просто использовать mv », обычно вместе с apt-btrfs-snapshot . Это просто не похоже на mv /f24 / действительно будет работать. (Если это так, пожалуйста, поправьте меня.)

В конце, обратный снимок должен, конечно, снова называться root а не root/f24 . Вот некоторая информация о FS:

 $ btrfs subvolume list / ID 257 gen 419417 top level 5 path root ID 3231 gen 419430 top level 257 path root/f24 

Загрузился в снимок:

 $ btrfs subvolume show / / Name: f24 UUID: b1782609-7d9f-4725-911d-428cda2256c7 Parent UUID: 8df6fae9-770a-4d55-a4bf-6a32edf1fbd7 Received UUID: - Creation time: 2016-11-26 19:17:22 +0200 Subvolume ID: 3231 Generation: 419438 Gen at creation: 411444 Parent ID: 257 Top level ID: 257 Flags: - Snapshot(s): 

Есть ли способ сделать это в 2016 году?

One Solution collect form web for “btrfs возвращает снимок корневого FS”

Ваша ситуация несколько упрощена тем фактом, что ни ваш текущий, ни нужный субобъем – это «реальный» корень Btrfs, то есть идентификатор subvolume ID 0.

Начните с (временно) монтирования реального корня Btrfs следующим образом:

 mkdir /mnt/btrfs-root mount -o subvolid=0 /dev/somedevice /mnt/btrfs-root 

Теперь, внутри btrfs-root, вы должны уметь видеть свой «корень» subvolume, а также любые другие подвыборы, которые вы определили там. Вы можете изменить их так, как вы хотите, используя простой mv :

 cd /mnt/btrfs-top mv -i root/f24 newroot # Now at least you don't have one subvolume rooted inside another # It's a little simpler to work with. # Now just shuffle them as desired mv -i root oldroot mv -i newroot root # ...and clean up cd umount /mnt/btrfs-top rmdir /mnt/btrfs-top 

Теперь, в следующий раз, когда вы монтируете subvolume под названием «root», он будет новым.

Будьте осторожны, что вы не монтируете свою корневую файловую систему по субволике. Если вы монтируете его субвулевым, субволие не изменится, даже если вы переименуете вещи, как указано выше.

  • Если вы монтируете файловую систему, полагаясь на субволину по умолчанию, тогда вы захотите изменить субдвигу по умолчанию на новый:

     btrfs subvolume set-default 3231 / 
  • Если вы устанавливаете его с помощью явной спецификации subvolid, тогда вы захотите изменить /etc/fstab и /etc/default/grub для использования subvolid=3231 .

  • Разница между снимком fsfreeze и lvm
  • Онлайн-перезагрузка btrfs корневой файловой системы с различным объемом (снимком)
  • Использование тонкой настройки устройства на устройствах контура
  • ZFS в Linux снимок рекурсивно объема и подвыборки
  • Не удалось отправить zfs | zfs получает наборы данных в том же zpool
  • Могут ли снимки LVM привести к фрагментации?
  • Возможно ли и как объединить идентичные файлы между различными моментальными снимками в файловой системе btrfs?
  • Snapper - как отменить изменения, сохраняя отметки времени?
  • ZFS Snapshot для резервного копирования с резервным копированием
  • Временное восстановление моментального снимка LVM от root
  • bad inodes появляются после fsck () для гостей vps
  • Linux и Unix - лучшая ОС в мире.