远程升级 Ubuntu:如何将丢失服务器的风险降至最低?

Ava*_*vra 6 linux ubuntu

背景:由于与 raid 控制器的不兼容问题,我被迫将服务器从 Ubuntu 8.04 LTS 远程升级到 10.04 LTS。

与服务器的互联网连接有些稳定,很少掉线。尽管我担心在升级时会丢失 SSH 连接,从而使服务器处于无法访问的状态。我也担心升级后服务器无法启动,以防我无法知道是什么问题。

行动计划:我正在寻找的是丢失服务器的风险降至最低的建议,我知道我所做的事情风险很大。这是我目前的行动计划:

1) 备份所有重要的本地和外部内容。

2) 使用 fsck 暂时禁用启动时磁盘检查。(如果磁盘检查需要很长时间才能完成,我将不知道发生了什么)。这将通过 fstab 通过将最后一个参数从 1 更改为 0 来完成:

UUID=5b1ff964-7608-44fd-a38d-7e43ad6b4c11 /               ext3    relatime,errors=remount-ro 0       0
Run Code Online (Sandbox Code Playgroud)

3) 使用屏幕启动所有升级过程,以便在我失去连接时可以恢复它们。IE:

sudo screen apt-get upgrade
Run Code Online (Sandbox Code Playgroud)

问题:

  • 我提出的行动计划看起来合理吗?
  • 禁用启动时磁盘检查是个坏主意吗?
  • 还能做些什么来降低丢失服务器的风险?

更新:几乎所有的回答都建议我设置 DRAC/IPMI,我现在已经完成了。这感觉是一项非常了不起的成就,肯定会使风险小得多,因为我可以通过 KVM/控制台重定向跟踪整个电源循环。为了将来的参考,这就是我所做的:

1) 安装 ipmitool 来为 IPMI v2.0 设置 IP 地址、网关等:

sudo ipmitool lan set 1 ipaddr 192.168.1.99 
sudo ipmitool lan set 1 defgw ipaddr 192.168.1.1
Run Code Online (Sandbox Code Playgroud)

2)安装free-ipmi,将网卡选择模式改为shared(我只有一个网口连接网络):

sudo ipmi-oem dell set-nic-selection shared 
Run Code Online (Sandbox Code Playgroud)

3) 在https://192.168.1.99上使用 DRAC 的 https 界面来启动控制台重定向查看器。这使我能够遵循整个启动顺序以及配置 BIOS、RAID 控制器等。太棒了。


更新 2. 完成。一切都很顺利,不到 30 分钟就完成了这项工作。我最终没有关闭磁盘检查,因为重定向的控制台让我可以随时中断它,但我让它运行到最后。

谢谢各位,你们的智慧无价!

Luk*_*404 2

如果硬件没有损坏,那么使用串行控制台就没有什么不能做的,所以这就是要走的路:

  • 远程访问串行控制台(如果系统具有 >=IPMI-2.0,则通过 LAN 进行 IPMI 串行,或者使用空调制解调器串行电缆连接到运行 minicom 的另一个系统)
  • 配置 grub 和 linux 以使用串行控制台
  • 如果可能的话,在串行上重定向系统 BIOS 接口(许多服务器系统都能够做到这一点)
  • 重新启动系统并检查您是否可以使用(BIOS)、grub、查看 dmesg、查看 init 脚本并通过串行控制台登录
  • 运行升级
  • 交叉你的手指

另外,如果可能的话,将新系统安装在另一个磁盘或分区上,这样您就可以在删除旧系统之前测试新系统。我通常使用两个磁盘系统执行此操作:我从镜像中取出一个磁盘,使用空闲磁盘创建一个新的(降级的)镜像,安装在那里,如果一切正常,我会销毁旧镜像并热添加“旧”镜像磁盘到新镜像并让它重建。

编辑:我读到它是 Dell R710,据我所知应该有 IPMI2。配置它在系统上本地运行 ipmitool,并在另一个系统上使用 ipmitool sol enable 测试 LAN 上串行功能。砰! 您有串行控制台。戴尔还能够在串行控制台上重定向 BIOS(IPMI 将依次在 LAN 上串行上重定向)。无论如何,如果出现问题,您应该这样做才能访问系统。我使用带有 BIOS、grub、系统串行控制台的空调制解调器电缆管理几个旧的 Dell PE1425,以及几个 Dell R300,以相同的方式,但使用 IPMI 串行 LAN 代替实际的串行电缆。