我有很多机器有时需要从图像中恢复。有一个小问题是这些机器在不同的位置,没有键盘,有时旁边甚至没有显示器,因此需要以完全无人值守的方式进行恢复。
一些细节:机器不是服务器。他们有 AMT,但仅此而已。我读过 Ghost 有一个叫做 LightsOut 的东西,但它需要安装在盒子上,这是毫无疑问的。
我理想的解决方案是一个软件,它可以制作整个磁盘的映像(磁盘在任何地方都相同;有多个分区,但所有盒子的布局也相同)并制作适合从启动的可启动恢复 iso除了“请移除恢复盘并重新启动我”之外不询问任何问题的 USB 闪存驱动器。这个想法是,非技术人员应该能够仅在技术人员的远程协助下执行恢复 - AMT 将在这里提供帮助。
我一直在玩弄适应 SystemRescueCD 的想法——启动、ssh、恢复磁盘——但我更喜欢一个完整的现有解决方案。有什么东西可以做我想要的吗?
这个问题会定期弹出,但我认为从你的描述来看,你的情况有点不同,因为你有远程可用的手。通常答案是“您这样做是在掷骰子,因为无法保证操作系统在没有外围设备的情况下可以正常工作,如果出现任何人无法帮助的错误,您将面临远程锁定自己的风险......”
我不知道AMT是什么。不知道你运行的是什么操作系统。如果它是基于 UNIX 的,您可以执行类似运行 DD 将磁盘映像到文件的操作,然后返回到该映像是将映像反向 dd 到驱动器的问题,驱动器已卸载并且您的系统完全从记忆。
在这种情况下,您可以编写一个要遵循的程序。我已经使用 Rescue Is Possible Linux (RIP) 以这种方式恢复了一些磁盘;启动它,以 root 身份登录,然后设置密码并运行 /usr/sbin/sshd 并获取 IP(如果还没有 IP,则运行 netconfig),然后您可以挂载远程共享并复制(或挂载 USB 设备)。
我已经阅读了通过卸载文件系统远程完成的恢复,并在操作系统在内存中运行的情况下进行此恢复。但请注意,这是非常危险的。路由器弹出,网卡被重置,如果您的磁盘出现问题,这意味着它正在吐出错误并且您没有看到它......您可能会浪费几个小时的工作并失去对机器的完全访问权限。
另外,如果要更换磁盘,您的映像可能无法完全正常工作,因为扇区/磁头/柱面计数可能不稳定,并且 DD 将拥有原始 MBR 的副本。许多映像实用程序(dd、partimage、gparted 等)都会因此而遇到麻烦。
要考虑的选项...重组这些系统以从内存运行并将硬盘安装为数据存储区域,就像 Devil Linux(我相信它被称为)。您可以使用从 CD 运行的发行版创建 Squid 服务器或邮件服务器或诸如此类的东西,并且它会安装一个本地磁盘(如果您需要它)仅用于数据。如果有人破解了系统,他们将无法安装自己的二进制文件,因为 CD 是只读的。使更新就像使用新 CD 和重新启动一样容易(配置可以保存在只读媒体或仅保存配置文件的 USB 驱动器上,易于备份)。
您还可以考虑从外部驱动器运行操作系统(如果它是基于 Linux 的),或者从可移动驱动器运行。然后您可以升级/更新/恢复并将驱动器运送到远程位置,如果它是可交换磁盘,最终用户只需将其中一个滑出并弹出新的。
无论如何,您必须测试程序。想出“理论上”太容易了,然后当您实际必须恢复时,它就会落空,并发现当与无法从硬盘另一侧的硬盘区分 NIC 的用户一起工作时手机不是发现您的恢复无法使用的时候。
您最后的选择是查看一个完整的备份包(可能是基于 Linux 的 Amanda,Windows 有很多选择),它将从裸机恢复您的系统。裸机恢复通常允许您从恢复磁盘启动,并允许您从最近的备份中提取数据。Ghost 和其他映像工具实际上是映像实用程序,而不是真正的数据备份(加上映像需要大量数据,就像我说的,当磁盘在需要恢复的过程中更改品牌或大小时可能会遇到麻烦)。商业备份允许差异备份和系统状态备份来帮助恢复。
我现在更喜欢的事情是找到一种方法,尽可能多地将操作系统与应用程序与数据分开。然后,您可以让操作系统与您的数据分开运行,并使其更容易恢复或迁移到新系统(这就是 Devil Linux 所做的,即操作系统从 CD 运行在内存中,而数据从驱动器运行或外部驱动器,因此您的数据可以在操作系统仅包含在 CD 上时轻松迁移或备份。Linux 可以设置为为 /root、/bin、/sbin(系统二进制文件)和另一个磁盘来保存数据和日志。
希望其中一些可能对您有用...
您可以像硬件制造商那样做,创建一个恢复分区,当主分区损坏时您可以从该分区启动。这将允许您从已知的东西启动,并在那里拥有必要的工具来将主分区恢复到已知的好位置,无论是 Ghost 映像,还是类似的东西。
如果您无法在足够低的级别访问主机来执行此操作,那么也有通过 TCP/IP 工作的 KVM 交换机。它们价格昂贵,但比每次出现问题时都派出技术人员便宜。这可能与您提到的 AMT 类似,但我对 AMT 没有经验。
多年前,我刷新大量机器的方法是创建一张包含 Ghost 和标准机器映像的可引导 CD(是的,当时的映像更小)。批处理脚本将从命令行启动 Ghost,并带有复制图像并在完成时退出的选项。之后,批处理作业将弹出 CD 并重新启动。从技术上讲,一开始有一个启动菜单,用户可以在 30 秒内选择正常启动,然后再自动启动映像。虽然它用于快速刷新(制作几份副本,然后将它们弹出到机器中并让它们做他们的事情),但似乎不需要用户交互,直到系统重新启动并在映像上运行放入您正在寻找的区域。