我希望能够启动操作系统的备份版本,以防我意外更改某些内容,这样我就无法跳过 grub 菜单。有软件可以实现这个功能吗?使用时间移位可以实现吗?
答案1
(我还没有评论的特权,请原谅我违反了礼仪):
您的备份的格式和位置是什么?
编辑 grub 菜单是通过编辑/etc/grub.d/40_custom
脚本来完成的。这可以让 grub 在生成文件时知道您的启动选项grub.cfg
。每当发出命令时,该文件都会自动生成update-grub
。所有这些都需要通过在命令前面加上命令来授予管理员权限sudo
,然后再次提供您的密码(这样做是为了保护操作系统堆栈免受恶意软件的侵害)。
答案2
我也有同样的问题。
到目前为止我发现:
https://community.spiceworks.com/how_to/725-backup-and-restore-your-system-grub
https://ubuntuforums.org/showthread.php?t=2356742
这个看起来简单又可靠:https://www.addictivetips.com/ubuntu-linux-tips/back-up-the-linux-bootloader-to-usb-for-emergencies/
它解释了一切,但简而言之,备份的命令是:
dd if=/dev/sda of=/home/username/master-boot-record.txt count=1 bs=512
而对于恢复,则是相反的:
dd if=/home/username/master-boot-record.txt of=/dev/sda count=1 bs=512
(查看链接以获得关于如何执行此操作的完整说明。请小心更改“用户名”和 sda 以适合您的系统,并且不要输入任何错误。)
整个 grub 配置备份,根据同一站点:
mkdir -p ~/grub-backup
cp /etc/default/grub ~/grub-backup/
sudo cp -R /etc/grub.d/ ~/grub-backup/
(出于显而易见的原因,所有备份文件都必须导出到另一个磁盘或 USB 驱动器!)在执行任何操作之前,请务必阅读整页以了解整个过程https://www.addictivetips.com/ubuntu-linux-tips/back-up-the-linux-bootloader-to-usb-for-emergencies/
对于软件,我知道boot-repair
(但如果您只想备份内容,请不要运行修复),但该选项并非总是可用。它还运行脚本boot-info
(如果您愿意,可以在没有启动修复的情况下安装),它提供有关启动系统的非常有用的信息。
就我个人而言,我会尝试备份所有可以备份的 Grub 文件,因为我有过丢失文件10_linux
和30_os-prober
无法通过重新安装恢复的糟糕经历grub-common
...
因此,据我了解,Grub 系统只需按照我提供的 dd 命令的链接进行操作,但您可以像我尝试做的那样,添加 etc/grub.d 文件夹内容和其他 grub 配置文件的备份。
它们位于 和etc/grub.d
中/etc/default/grub
(最终是 MBR 的一部分)。
您可能有一些备份文件夹,如/etc/grub.d.bak
和/etc/grub.d/backup
,您可以将它们的内容导出到 USB 记忆棒或其他磁盘。
在此链接中,有一个有趣的补充,关于分区表的备份:
如何修复 GRUB:我该如何修复 grub?(安装 Windows 后如何恢复 Ubuntu?)
将分区表备份到文本文件并保存到外部设备。
sudo sfdisk -d /dev/sda > PTsda.txt
这仅适用于 MBR (msdos) 系统。如果您的 Ubuntu 安装在 GPT 分区驱动器中,则您只能在 UEFI 模式下安装 Windows 或将驱动器转换回 MBR (msdos)。
确实,一个可以自动执行所有备份的软件或脚本真的很有用而且很酷!