自我几天前第一次发表有关这个主题(如何在外置USB硬盘中安装breezy)到现在,我已经从实践中学到了很多有关Ubuntu安装进程的知识,并且已经在我的外置USB硬盘上成功安装过了好多遍Ubuntu.(疯狂吧,我只是想通过多装几遍来弄清楚每次我干它一下他到底有什么反应。)
我非常乐意和大家分享我的最新体验,如果你也正在和这个问题打得火热的话。
背景(硬件平台):我有一个内置硬盘,西部数据的,上面已经装了一个Windows XP Pro系统(这个硬盘在Ubuntu的安装程序里的分区管理程序中显示为'hda')。我的外置USB硬盘是希捷的,40G大,是可移动的;这是我在沃尔马花了120美元买的。
友情提示:系统安装前你最好在你的BIOS中把CDROM设为第一启动盘,USB设备设为第二启动盘,不然在接下来的第四步你就会遇到麻烦的。(如有疏漏,欢迎指正!)
重要提示:别忘了linux是对大小写敏感的,不管是文件名还是目录名。(这里大写和小写区别可是很大的。)例如,在linux中,有一个叫“DaBruGo"和一个叫“dabrugo"的文件,他们两个可是完全不同的两个文件。
下面就是我现在如何在外置USB硬盘上成功安装Ubuntu的真经:
(1)我没有使用专家模式来安装,我只是按下Enter键来开始安装(用的是Install CD,不是Live CD哦)。
(2)在分区阶段,我让分区程序格式化我的整个外置USB硬盘。(我想这是Ubuntu的推荐分区格式吧,它会自动为你划分一个ext2或者ext3格式的分区和一个swap分区。)
注意:当处于分区阶段时寻找下面这一行:
删除整个SCSI盘(0,0,0)(sda)
一定要万分小心,在这个阶段你要选对SDA盘,而不是HDA盘,不然的话把另一个盘给整个格式化的,并且这个操作可是不可撤销的。
再唠叨一次,一定要百分百的选对你要格式化的盘。
(3)当安装程序进入GRUB多系统引导程序的安装阶段时,要把GRUB装在这个外置USB硬盘,也就是我们现在正在用的这个盘,千万可别装到别的盘符去啊!
安装程序会询问你是否要把GRUB装在你的内置硬盘(HDA)的MBR上,这时你要选否,然后在接下来画面里输入正确的路径,也就是你要把GRUB装在外置USB硬盘的地方。
友情提示:接下来安装程序会载入一些数据,然后就会弹出CD,要你重启一下系统。
(4)一定要百分把确定在系统重启前就已经取出CD(并且关闭CD舱门)。当机子重启的时候,输入rescue(以进入rescue模式)(再看一下前面我们提到的友情提示!)
也许你会问,为什么我们要要以rescue模式启动呢?这是因为在Ubuntu真正接管机子之前我们得修改一些文件,好让机子能够支持USB设备。此外,我们也需要修改一下GRUB菜单文件中的一些设置,好让GRUB正常运行。
(5)当系统启动之后他会要求你挂载一个分区。请从列表中选择一个正确的挂载点。(我的是挂载在 /mount/dev/discs/disc1/part1)
(6)当终端窗口出现(rescue模式下是出现在左上角)时,按下Ctrl-Alt-F2打开一个新的终端窗口,以后我们的编辑修改工作就要在这地儿进行了。
(7)在编辑工作开始之前,先输入一下命令:
mount -tproc proc /target/proc
chroot /target
su
注意:我是用vim来编辑这些文件的。刚开始接触vim时你会感觉他很怪异,但知道了一些用法之后就好了:按下Intert键你就可以在光标所在地输入文字了,按下ESC键你就可以离开Insert模式了,要离开并保存文件的话你可以输入':qw'。
(8)运行VIM打开模块文件,修改一下好让Ubuntu在启动时支持USB设备:
vim /etc/mkinitramfs/modules
在打开的文件的末尾,增加下面几行:
ehci-hcd
usb-storage
scsi_mod
sd_mod
注意,可一定要先保存才能退出。
(9)运行vim打开“initramfs.conf”这个文件,好让Ubuntu在运行之前有充足的时间加载对USB设备支持的模块。
vim /etc/mkinitramfs/initramfs.conf
在打开的文件开头,增加下面几行好让Ubuntu在开始运行之前停留12秒钟:
WAIT=12 (in all caps here, not sure if necessary though)
注意,要保存才能退出。(命令就是':qw')
但是,虽然我们为了让Ubuntu识别这个外置USB设备我们已经修改了这两个文件,我们仍然需要重新编译一下Ubuntu在启动时使用的这个文件initrd.img,要不光修改那两个文件也没用。
(10)重新编译initrd.img
mkinitramfs -o /boot/initrd.img-2.6.12-9-386 /lib modules/2.6.12-9-386
(11)编辑GRUB启动菜单,修正一个小错误,不然他会从一个错误的盘引导
vim /boot/grub/menu.lst
一直往下翻,直到你找到这么一段,有一个菜单列表,里面Ubuntu被提到三次(也可能最后有提到windows XP,如果你硬盘上有装的话。)
在这三个ubuntu菜单选项中都会有这么一行,里面显示有根分区的位置,行的右边可能有写着"(hd1,0)"。为什么要多此一举?因为根据 GRUB的规则,我们把GRUB装到了这个外置USB硬盘的启动块,那么他就是我们的第一硬盘(hd0,0),而不是第二硬盘(hd1,0)。
提示:如果你想从这个菜单启动Windows XP,你可以修改一下windows XP项,参照上面的把他改为(hd1,0)。
最后可一定要记得保存。
(12)离开终端窗口(键入exit,然后按下Enter键)。按下Ctrl-Alt-F1组合键回到rescue模式窗口,然后键入exit重启系统。
一定要百分百确定在系统重启前你已经取出CD。
(13)重启之后,Ubuntu就会开始安装,安装完之后进入桌面环境。用你在安装过程中设定的用户名和密码进入系统。