Альтернатива - Снимки LVM - Вы можете прочитать о снимках LVM здесь:
http://www.tutonics.com/2012/12/lvm-guide-part-2-snapshots.html
Вкратце - моментальные снимки - это способ замораживания используемых секторов на жестком диске, говорящий системе записывать любые изменения / удалять / добавлять в зарезервированную часть жесткого диска, называемую томом моментального снимка, таким образом, откладывая решение о сохранении / отмене изменений на диске в какое-то время в будущем, насколько позволяет пространство тома снимка. И так, как только вы решите откатить изменения (или сохранить их), вы можете сделать это одной строкой.
Поначалу это может показаться сложным, но я могу заверить вас, что после первой попытки все, что нужно для использования механизма моментальных снимков, - это всего лишь два строчных скрипта (загрузка возможна!)
Гарантия - гарантия не распространяется на приведенные ниже инструкции. Используйте на свой риск!
Как?
Если у вас нет предварительно настроенной группы томов, вам, вероятно, потребуется установить новую чистую Ubuntu. Затем вам придется приложить некоторые усилия для правильной настройки системы в первый раз, но с этого момента снимок станет легким . Под «легким» я подразумеваю команды с одним вкладышем, использующие предварительно настроенные сценарии.
- Загрузитесь с Ubuntu Live CD (пока нет установки. Просто Live CD)
- Открытые аксессуары -> Терминал
Мы будем очищать жесткий диск! Пожалуйста, сделайте резервную копию чего-нибудь важного, прежде чем пройти этот этап.
Сначала удалим существующие разделы:
# fdisk /dev/sda
Enter 'd' to delete - enter for as many partitions you have
> d
> <enter>
...
Enter 'w' to write down changes
> w
Создайте загрузочный раздел и оставшуюся часть диска как другой раздел
# fdisk /dev/sda
> n
To create a new partition.
> p
For Boot Primary partition.
> 1
Press <enter> to accept the default start sector.
Enter:
> +512M
To give the boot partition a size of 512MB
> n
To create (another) new partition.
> p
Should be Primary too.
> <enter>
To accept the default value of 2 (the second partition)
> <enter>
To accept the default start sector
> <enter>
To accept the whole disk
> t
To change the type of the second partition to LVM
> 2
To choose the second partition
> 8e
To set the type to 'LVM Linux'
> w
To write changes and exit.
Чтобы убедиться, что изменения сработали, выполните:
# fdisk --list
Вы должны получить что-то вроде этого:
Device Boot Start End Blocks Id System
/dev/sda1 2048 524287 261120 83 Linux
/dev/sda2 524288 488397167 243936440 8e Linux LVM
Удалите все предыдущие группы томов / логические тома:
# lvdisplay
Будет отображать логические тома, которые вы можете иметь в системе
# lvremove <existing_logical_volume_name>
Если какой-либо том установки, который может помешать этой установке, необходимо удалить.
# vgdisplay
Покажет любую существующую группу томов в системе
# vgremove <existing_volume_group>
То же, что и для групп томов.
Создайте группу томов vgsnap
# vgcreate vgsnap /dev/sda2
Должен привести с:
Volume group "vgsnap" successfully created
Создайте логический том
# lvcreate --extents 100%FREE --name lvroot vgsnap
Корневой логический том, начиная со 100% устройства.
# lvresize --size -30G /dev/mapper/vgsnap-lvroot
Это снимет 30G для томов подкачки и моментального снимка. Конечно, вы можете выбрать меньшие размеры для обмена / снимка.
> 'y'
for the warning shown.
И создайте раздел подкачки:
# lvcreate --size 15G --name lvswap vgsnap
Примечание: теперь мы оставляем 15 ГБ неиспользуемого дискового пространства, зарезервированного для будущего снимка.
Установка Ubuntu
Закройте теримнал и запустите установщик.
Выберите «Использовать LVM ...» (Вы также можете включить шифрование всего диска, но я его не проверял ...)
Выберите «Что-то еще» и нажмите «Продолжить». На этом этапе вы найдете определенное количество томов / dev / mapper / .... Некоторые из них генерируются автоматически (lvsnap- *) - вы можете пока их игнорировать.
Выберите: / dev / mapper / vgsnap-lvroot volume. Выберите «ext4» в качестве формата и установите как «/»
Выберите том / dev / mapper / vgsnap-lvswap и выберите «область подкачки»
Если вы хотите создать зашифрованный диск (я понятия не имею, будет ли это работать со снимками?), Вы, вероятно, захотите выбрать / dev / sda2 и отметить «том для шифрования». Не проверял это хотя ..
Примечание. Неиспользуемые 15G остаются свободными для тома снимка.
Выберите: / dev / sda1 раздел. Отформатируйте его как 'ext2' и смонтируйте как '/ boot'
Ниже - выберите раздел / dev / sda1 в качестве загрузочного
Установить!
Использование снимка
Следующие шаги покажут, как использовать снимок в любой момент времени:
Монтирование снимка:
Создать том снимка
# lvcreate --size 15G --snapshot --name lvsnap /dev/mapper/vgsnap-lvroot
Создайте каталог монтирования
# mkdir /mnt/vgsnap-lvsnap
Смонтировать снимок как монтируемый только для чтения
# mount -o ro /dev/vgsnap/lvsnap /mnt/vgsnap-lvsnap
Снимок включен!
В этот момент вы можете начать портить вашу систему, устанавливать бета-драйверы и даже (нет! Это просто неуместно).
Отныне вы можете в любой момент (насколько позволяет размер снимка ..) вернуться в предыдущее состояние или, если вас устраивает новый вид, сохранить его.
Автоматический мониторинг свободного места на томе моментального снимка: с помощью подправленной версии скрипта, представленной здесь:
http://blog.rimuhosting.com/2012/02/20/cron-script-for-checking-disk-space/
Я создал скрипт monitor_snapshot ,
Как использовать / установить? - Примерно так же, как со ссылкой выше:
# cd /etc/cron.hourly
# copy /home/<user>/Downloads/monitor_snapshot
# chmod +x monitor_snapshot
Прежде чем запускать его в первый раз, лучше отредактируйте его значения, такие как адрес электронной почты (куда следует отправлять уведомления и т. Д.). При правильной настройке демон cron будет запускать скрипт каждые X часов / дней - как вы решите - и уведомить вас, когда снимок будет заполнен.
Чтобы проверить скрипт, выполните:
# sh /etc/cron.hourly/monitor_snapshot
Будет напечатан процент (количество) свободного места в снимке.
Важный! Как только вы закончите с вашими тестами / установками - откатитесь или сохраните изменения - и размонтируйте снимок!
Откат изменений: (См. Скрипт rollback_snapshot , со следующими инструкциями, ссылка в конце документа)
# lvconvert --merge /dev/vgsnap/lvsnap
Это также отключит моментальный снимок, но все ваши изменения будут отменены. Кроме того, вы увидите предупреждение о том, что возврат произойдет только при следующей активации, поэтому:
# reboot
Примечание. Если вы пропустите слияние, ваши изменения будут приняты после того, как вы отключите моментальный снимок.
Передача изменений - размонтирование снимка: (см. Скрипт commit_snapshot со следующими инструкциями - ссылка в конце документа)
# umount /mnt/vgsnap-lvsnap
Will unmount (commit0 the snapshot
# lvremove /dev/mapper/vgsnap-lvsnap
# rm -rf /mnt/vgsnap-lvsnap/
# rm /etc/cron.hourly/monitor_snapshot
Remove the cron daemon script (that is unused)
Повторная установка снимка: (См. Сценарий перемонтирования со следующими инструкциями - ссылка в конце документа) Как и прежде:
# lvcreate --size 15G --snapshot --name lvsnap /dev/mapper/vgsnap-lvroot
# mkdir /mnt/vgsnap-lvsnap
# mount -o ro /dev/vgsnap/lvsnap /mnt/vgsnap-lvsnap
Если вы сохранили monitor_snapshot в вашей домашней директории, вы можете восстановить его обратно:
# cp /home/<user>/monitor_snapshot /etc/cron.hourly/
# chmod +x /etc/cron.hourly/monitor_snapshot
Это все, ребята! Следующие инструкции предназначены только для бросивших курить;)
Сброс тома снимка (если больше не требуется)
# rmdir /mnt/vgsnap-lvsnap
# lvremove /dev/vgsnap/lvsnap
(Вы также можете изменить размер корневого раздела или раздела подкачки, чтобы занять недостающие 15G, зарезервированные для раздела подкачки).
Отказ от группы томов - возможно только путем удаления томов группы томов, что, вероятно, означает удаление установки ОС. Но, разумеется, нет необходимости удалять группу томов ...
Чтобы удалить группу томов:
# vgremove vgsnap
Важная заметка! - форматирование / запуск fdisk и удаление всех разделов НЕ удалит ни тома, ни группу, так как они записаны на другой части диска ... Итак, просто используйте инструкции по удалению, приведенные выше, и удалите тома и группу, если это необходимо.