![ESXi 启动过程/状态存储](https://linux22.com/image/551843/ESXi%20%E5%90%AF%E5%8A%A8%E8%BF%87%E7%A8%8B%2F%E7%8A%B6%E6%80%81%E5%AD%98%E5%82%A8.png)
我有一台独立的 ESXi 服务器,但重启时配置丢失,这很麻烦。我从之前的安装中恢复了配置,每次重启时都会恢复到之前的配置。
/bootbank/local.tgz
我目前的假设是,尽管状态在整点时被正确备份(这是一个 USB 安装,如果我理解autobackup.sh
正确的话,这是预期的行为),但启动过程正在读取/bootbank/state.tgz
。
/bootbank/boot.cfg
我认为这是因为(特别是该行)的内容modules
,并且因为恢复的配置来自磁盘安装,而不是 USB:
~ # cat /bootbank/boot.cfg
kernel=b.z
kernelopt=
modules=k.z --- s.z --- c.z --- oem.tgz --- license.tgz --- m.z --- state.tgz
build=4.1.0-381591
updated=2
bootstate=0
local.tgz
我应该在这里交换吗state.tgz
(记住一个是档案,一个是档案的档案,因此需要区别对待),或者这个条目是我应该针对其他地方的设置的结果?
或者,我是否应该从行中删除此条目(因为 USB 启动状态而默认modules
转到该条目)?我也需要调整吗?我问这两个问题是因为该文件的模块行中没有包含任何状态文件。local.tgz
/altbootbank/boot.cfg
通常情况下,我只是进行实验,但我担心篡改启动过程会导致启动停止!
该系统是最近修补的 4.1(免费版本 - 它不是生产系统),或多或少基于 HCL 硬件,使用 DAS 作为数据存储,并使用 2GB USB 记忆棒来安装虚拟机管理程序。
编辑
我查看了/sbin/backup.sh
(从 调用autobackup.sh
),这实际上添加了--- state.tgz
一行modules
,boot.cfg
如果 a) 它不是 USB 启动,并且 b) 它还不存在。这强烈暗示我(在我的 USB 启动环境中)它错误地存在,我应该删除它……但我仍然希望得到更有知识的人的确认。
有人能告诉我(甚至推测)为什么“嵌入式”/ USB 启动系统使用local.tgz
而“已安装”系统使用state.tgz
(AIUI,它只包含 local.tgz)吗?这可能与集群的多个配置有关吗?
答案1
无论如何,由于没有建议,我咬牙切齿地从行中删除了该--- state.tgz
参数,并且通过几次测试重启判断,配置更改现在在启动之间仍然存在。我阅读了帖子#44modules
/bootbank/boot.cfg
此主题,这表明这是可行的。local.tgz
现在看来,它是在启动时读取的state.tgz
,而不是像我希望的那样,是过时的。
我仍然不知道此条目出现在行中的原因modules
是什么,所以我会留意它是否再次出现。由于/altbootbank/
每次应用更新时都会写入一个全新的启动映像,因此我将检查新创建的启动映像boot.cfg
,以确保下次修补服务器时它不会再次出现。