在 Solaris 及其变体上,它会生成当前/
文件系统的 zfs 克隆并在那里安装新内核。重新启动时,您将获得新的/
.
在我的情况下,我有一个/scripts
目录,所以如果我应该回到以前的内核,那么我/scripts
也会被回滚,这对我来说应该与我所在的内核无关。
问题
从内核升级完成到主机重新启动,如何避免丢失对文件系统所做的更改?
是否有一个我不知道的过程,因为即使您在内核升级后非常快地重新启动,也很容易创建日志条目,而您永远不会看到。
在 Solaris 及其变体上,它会生成当前/
文件系统的 zfs 克隆并在那里安装新内核。重新启动时,您将获得新的/
.
在我的情况下,我有一个/scripts
目录,所以如果我应该回到以前的内核,那么我/scripts
也会被回滚,这对我来说应该与我所在的内核无关。
问题
从内核升级完成到主机重新启动,如何避免丢失对文件系统所做的更改?
是否有一个我不知道的过程,因为即使您在内核升级后非常快地重新启动,也很容易创建日志条目,而您永远不会看到。
您描述的是引导环境(BE),它将在系统升级时自动创建或使用
beadm
命令手动创建。您可以拥有多个独立的 BE,但只能同时激活一个。您还可以单独更新/修改每个 BE。通常你会这样做来测试特定的软件版本或完整的系统升级,但不限于此。
从优势到维护多个引导环境:
我刚试了一下,
beadm mount BeName
将BeName挂载在/tmp
可写的临时目录下。您可以编写一个简单的脚本来将新文件或更改的文件同步/复制到旧 BE,反之亦然。该文档还指出 BE 上的快照是可能的(使用
beadm create BeName@snapshotNamedescription
),如果您想跟踪两个时间点之间发生的差异(使用 ),这可能会有所帮助zfs diff
。