我在 Ubuntu 18.04 上运行家庭服务器。它从 M2 内置驱动器 ( /dev/sda1
) 启动,基本上
- 安装另一个驱动器(
/dev/sdc1
) - 挂载 LVM 分区(
/dev/mapper/data-data
) - 启动docker,然后运行一组容器
我想测试 M2(启动)驱动器发生故障的灾难场景。我的备份存储在/dev/sdc1
(也是远程的,这是同一类型的测试)。
为了进行测试,我想
- 移除 M2 驱动器(这是为了模拟其故障,同时也防止错误损坏它)
- 插入外部 USB 驱动器(USB 驱动器 1)
- 从 Ubuntu ISO 启动(闪存在 USB 驱动器 2 上)
- 在外部驱动器上安装 Ubuntu(=在 USB 驱动器 1 上,然后移除并忘记 USB 驱动器 2)
- 安装 docker 和其他实用程序,恢复备份,启动容器等。← 由于我(希望)了解如何协调活动,因此该部分更简单。
我主要担心的是(可能还有其他我不知道的)外部 USB 驱动器是否会被识别为安装系统的“正确”驱动器. 安装的连接类型是否有限制?
另一种方法是借用一个 M2 驱动器并将现有驱动器与“恢复”驱动器交换,但我更愿意在已有的 USB 驱动器上进行测试。
此外 - 上述测试过程是否存在任何可能的问题?(特别是从“灾难”到具有 shell 提示符并启动最后一点的部分 - 我确信我会在最后一个中发现很多问题,但我能够很好地处理它们,我对引导过程并不熟悉,这让我感到不舒服)
答案1
示例grub
菜单条目直播Ubuntu ISO 映像:
menuentry "Try Ubuntu without installing 18.04.3" {
loopback loop /boot/images/ubuntu-18.04.3-desktop-amd64.iso
set gfxpayload=keep
linux (loop)/casper/vmlinuz iso-scan/filename=/boot/images/ubuntu-18.04.3-desktop-amd64.iso file=(loop)/cdrom/preseed/ubuntu.seed boot=casper quiet splash ---
initrd (loop)/casper/initrd
}
样品安装来自 mini-ISO 的 Ubuntu:
menuentry "Ubuntu mini 18.04 64bit cli expert" {
loopback loop /boot/images/ubuntu__18.04__mini64.iso
linux (loop)/linux iso-scan/filename=/boot/images/ubuntu__18.04__mini64.iso tasks=standard pkgsel/language-pack-patterns= pkgsel/install-language-support=false priority=low --
initrd (loop)/initrd.gz
}