![我安装了 WD Passport USB 驱动程序;如何让 grub 正常工作?](https://linux22.com/image/810419/%E6%88%91%E5%AE%89%E8%A3%85%E4%BA%86%20WD%20Passport%20USB%20%E9%A9%B1%E5%8A%A8%E7%A8%8B%E5%BA%8F%EF%BC%9B%E5%A6%82%E4%BD%95%E8%AE%A9%20grub%20%E6%AD%A3%E5%B8%B8%E5%B7%A5%E4%BD%9C%EF%BC%9F.png)
我对 Ubuntu 还很陌生,在 Natty 发布后不久就安装了它(32 位,因为有人推荐)。安装过程选择将 Natty 放在外部 USB 硬盘上,即 500 MB 的 WD Passport,我很喜欢这个(这样就不会干扰我的 Windows 分区)。但是,在启动时,除非我按 F12(在我的戴尔电脑上)选择启动选项,然后选择启动到 Passport,否则计算机会直接启动到 Windows。然后我得到 grub 并选择启动到 Ubuntu。我并不介意这一点;很明显 grub 安装在了 Passport 上。没什么大不了的。
但是我最近刚刚在 Passport 上安装了 64 位 Natty,选择了“将 Ubuntu 11.04 升级到 Ubuntu 11.04”选项。一切顺利,我的大部分设置都保存了(以及我的所有数据),但它似乎安装了另一个 grub 实例。现在,当我启动计算机时,我必须按 F12 选择 Passport(就像我以前做的那样),然后在 grub 中选择“Ubuntu 的早期版本”,此时会出现另一个 grub 屏幕,让我选择正确的操作系统(64 位版本)。
我不介意选择 Passport,但之后我更希望只显示一个 grub 屏幕,而不是连续显示两个。我该怎么做?
mdk@Tabasco:~$ sudo fdisk -l
Disk /dev/sda: 500.1 GB, 500107862016 bytes
255 heads, 63 sectors/track, 60801 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xe49667b6
Device Boot Start End Blocks Id System
/dev/sda1 1 5 40131 de Dell Utility
/dev/sda2 6 1918 15358976 7 HPFS/NTFS
/dev/sda3 * 1918 35363 268649893+ 7 HPFS/NTFS
/dev/sda4 35363 60802 204334080 f W95 Ext'd (LBA)
/dev/sda5 35363 60802 204333056 7 HPFS/NTFS
Disk /dev/sdb: 500.1 GB, 500074283008 bytes
201 heads, 9 sectors/track, 539915 cylinders
Units = cylinders of 1809 * 512 = 926208 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00038a56
Device Boot Start End Blocks Id System
/dev/sdb1 * 2 269958 244175360 7 HPFS/NTFS
/dev/sdb2 269958 539915 244175873 5 Extended
/dev/sdb5 269958 535292 239993856 83 Linux
/dev/sdb6 535293 539915 4180992 82 Linux swap / Solaris
Disk /dev/sdc: 1299 MB, 1299594240 bytes
40 heads, 62 sectors/track, 1023 cylinders
Units = cylinders of 2480 * 512 = 1269760 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000
Device Boot Start End Blocks Id System
答案1
我通过清除外部驱动器并在内部硬盘驱动器的一个分区上重新安装 Ubuntu 来“解决”这个问题。由于 grub 已安装在外部驱动器上,因此该过程也会将其清除。我想这不太优雅,但它解决了问题并让我重新安装了 64 位 Ubuntu 11.04。
也许值得注意的是,尽管 32 位 Ubuntu 在外部硬盘上的运行速度似乎与在内部硬盘上的运行速度一样快,但 64 位 Ubuntu 在内部硬盘上的运行速度似乎更快。(我预计启动速度会更快,因为这需要大量从驱动器读取数据,但令我惊讶的是,系统整体运行速度更快。)
答案2
“早期版本的 Ubuntu”包含较旧的内核。请确保您的系统是最新的,然后重新生成启动菜单。启动到 64 位 Ubuntu,打开终端并运行:
sudo apt-get update
sudo apt-get upgrade
sudo update-grub
重新启动以进行测试。如果没有任何变化,则可能是错误。如果您不需要 32 位 Ubuntu,请将其删除。