В Solaris и вариантах он создает клон zfs текущего /
файловая система и устанавливает туда новое ядро. При перезагрузке вы получаете новый /
.
В моем случае у меня есть /scripts
каталог, поэтому, если мне когда-нибудь придется вернуться к предыдущему ядру, то мой /scripts
также будет откат, что для меня не должно зависеть от ядра, на котором я работаю.
Вопрос
Как я могу избежать потеря изменения, внесенные в файловую систему с момента завершения обновления ядра до перезагрузки хоста?
Есть ли процедура, о которой я не знаю, поскольку даже если вы очень быстро перезагружаетесь после обновления ядра, в журнал легко могли быть внесены записи, которые вы никогда не увидите.
Вы описали загрузочные среды (BE), которые будут созданы автоматически при обновлении системы или вручную с помощью beadm
команда.
У вас может быть несколько независимых ВЕ, но одновременно может быть активна только одна. Вы также можете обновлять / изменять каждую BE отдельно. Обычно вы делаете это для тестирования определенных версий программного обеспечения или полного обновления системы, но это не ограничивается этим.
Из Преимущества поддержки нескольких загрузочных сред:
Хотя одновременно может быть активна только одна загрузочная среда, вы можете подключить неактивную загрузочную среду, используя
beadm mount
команда. Затем вы можете использоватьpkg
команда с альтернативным корнем (-R
) для установки или обновления определенных пакетов в этой среде.
Я только что попробовал, beadm mount BeName
смонтирует BeName во временную директорию под /tmp
, который доступен для записи. Вы можете написать простой скрипт для синхронизации / копирования ваших новых или измененных файлов в старую BE или наоборот.
В документации также указано, что возможны снимки состояния BE (с beadm create BeName@snapshotNamedescription
), что может быть полезно, если вы хотите отслеживать различия, которые произошли между двумя моментами времени (с zfs diff
).