我当时正在我的工作室里尝试将不同的 Ubuntu 发行版安装在一台破旧的笔记本电脑上以播放 Pandora,我决定在等待零件(主要是充电器)到达时在我的桌面上试用它。
我运行了安装程序,一切正常。我重新启动,一切看起来都很好,我选择 Kubuntu 作为笔记本电脑的操作系统。后来,我尝试重新启动到我的 Ubuntu Studio 安装,但发现它不再是默认的启动操作系统。我想,我只需取出另一个硬盘,一切都会好起来的。
一切都不太顺利。我忘记已经移除了硬盘(第二天我要测试它),我慌了。我浏览了论坛,才弄清楚发生了什么。
但我找不到的是极其简单将 GRUB 移至旧磁盘的方法。
在过去一年左右的时间里,我对 Ubuntu 的某些方面已经相当熟悉了,但我没有弄乱过 GRUB,它只是一直有效的东西,我不需要深入研究。因此,我不知道该如何解决这个问题。我查看了其他说明,但我需要一些非常清晰和简单的说明来解释该怎么做,做这些事情的原因是什么。
在我看来,很多教程都没有说明为什么要这样做。它们只是说要做什么,这让人更难弄清楚到底出了什么问题。
我正在运行 Ubuntu Studio 作为我的主要音频工作站。如前所述,我在那台电脑上试用 Kubuntu。当我重新启动时,它已将 GRUB 移至 Kubuntu HDD。这不是一个大问题,只是当我打开电脑时有点烦人,我希望能够将此 HDD 从电脑中取出。我只是用它来测试 Kubuntu,它只有 40GB(与我的主要 1TB 驱动器相比,非常小且不必要)。
答案1
然而,我却无法找到一种将 GRUB 移动到旧磁盘的极其简单的方法。
将 GRUB 从一个 HDD 复制到另一个 HDD
是的,这非常简单,只需在终端中执行一个命令即可。
首先(为确保万无一失)使用以下命令列出硬盘
sudo fdisk -l
其结果将类似于..
Disk /dev/sda: 120.0 GB, 120034123776 bytes
255 heads, 63 sectors/track, 14593 cylinders, total 234441648 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0007329e
Device Boot Start End Blocks Id System
/dev/sda1 2048 60289023 30143488 83 Linux
/dev/sda2 60289024 71774207 5742592 83 Linux
/dev/sda3 71774208 112734207 20480000 83 Linux
Disk /dev/sdb: 320.1 GB, 320072933376 bytes
255 heads, 63 sectors/track, 38913 cylinders, total 625142448 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x0001f627
Device Boot Start End Blocks Id System
/dev/sdb1 * 2048 81922047 40960000 83 Linux
/dev/sdb3 81924094 625141759 271608833 5 Extended
Partition 3 does not start on physical sector boundary.
/dev/sdb5 81926144 486234111 202153984 83 Linux
/dev/sdb6 486236160 621045759 67404800 83 Linux
/dev/sdb7 621047808 625141759 2046976 82 Linux swap / Solaris
正如您在上面的示例输出中看到的,有两个磁盘。/dev/sda
和/dev/sdb
。如果我有 GRUB,/dev/sda
并且我想要复制它(安装它)我/dev/sdb
将从安装 grub 的硬盘 (/dev/sda) 启动,然后给出这个命令
sudo grub-install --recheck /dev/sdb
上述方法会将 GRUB 从您启动的操作系统复制到第二个硬盘。如果您从第一个磁盘删除操作系统,则 GRUB 可能会出现问题。
如果你想避免上述(可能)的问题,你可以连接第二个硬盘,然后从处理 grub 的操作系统启动(通常是最新安装的操作系统),然后执行
sudo update-grub
GRUB 脚本将识别其他 Linux 操作系统(在第二个硬盘中),您将能够在其中一个上启动。您可以执行此操作,然后在第二个硬盘中安装 Linux 操作系统(您喜欢的,依赖于第二个硬盘)的 GRUB。这样,如果您从第一个硬盘中删除操作系统,您将避免将来出现任何问题。命令是相同的。
sudo grub-install --recheck /dev/sdb