2008年4月22日星期二

零命令玩转Ubuntu 8.04 之 安装篇 (硬盘安装)

警告:本文涉及硬盘分区和格式化操作,请你在参考本文在自己的电脑上安装Ubuntu的时候,一定要先做好备份工作,以免因为安装过程中一些不可控制的未知因素或错误操作导致你宝贵的数据丢失。



硬盘安装是很多Linux发行版都具有的一项功能。对硬盘安装支持最好的发行版绝对要数Redhat/Fedora/CentOS。不过这并不意味着Ubuntu的硬盘安装有多复杂。不过硬盘安装对于新手来说,应该算是一项相对比较“高级”的话题,因此本文的结构将不同于前面两篇:“LiveCD安装”和“Alternative CD安装”。本文将对安装准备做略详细的介绍。而因为硬盘安装过程,基本与Alternative CD安装一致,因此我将不再赘述,只提一些需要注意的地方。如果你觉得有必要,可以先简单的看一下Alternative CD安装一文。事实上,只要看清安装程序的每一步安装提示,整个安装过程还是非常简单的。(LiveCD安装与Alternative CD安装也一样。)

选择硬盘安装的理由也许有很多:节约刻录盘;光驱坏了/舍不得使用光驱;为了快速安装(硬盘安装确实会比光盘安装快哦!);学习硬盘安装这项技能;…… 不管是基于怎样的理由,既然选择了硬盘安装这种方式,我就假设读者已经下载了Alternative CD的ISO镜像。我们开始吧!

一、硬盘分区
因为硬盘安装的过程基本与Alternative CD的安装过程类似,因此,在安装前准备分区也许并不是必须的。不过假如安装光盘镜像正好位于需要划分出空闲分区的大分区中,在安装过程中分区会引起一些错误,因此我们选择在安装前就准备好安装Linux所需的一个SWAP和一个/分区。

Windows下的基于图形界面的无损分区工具有很多,如Norton Partition Magic(PQ Magic),Acronis Diskdirect Suite/Acronis Partition Expert,Paragon Partition Manager。个人比较推崇Acronis系列的磁盘管理工具。读者可以选择任何自己用的顺手的工具。我将用Linux下最强大的分区工具Gparted作为分区工具的演示,其他分区工具的操作也基本与之类似。我的Gparted是来自于Ubuntu 8.04的LiveCD——这就引发了一个“鸡生蛋,蛋生鸡”的矛盾了——也许本来就因为光驱损坏无法用LiveCD才选择使用硬盘安装的,这时却要用LiveCD来分区。不过正如我上面所说,我只是演示分区操作而已。至于读者如何分区,那就要靠自己解决了。 :P

引导进入LiveCD环境,打开Gparted,可以看到下面的程序界面。


点击选中硬盘,点击工具条上的“Resize/Move”按钮,打开“Resize/Move”对话框。拖动最右侧的把手,直到将空闲分区的大小满足安装Ubuntu的需要,这里是4094MB。当然,你可以可以在下方的输入框中输入适当的数值进行精确大小设定。点击“Resize/Move”确认修改。


点击选中硬盘上的“Unallocated”分区,点击工具条上的“New”按钮,新建分区。我们新建一个Extended(扩展分区),大小充满整个空闲空间。点击“Add”确认修改。(还记得准备知识中关于“扩展分区”的介绍吗?)


点击选中刚刚新建的扩展分区,点击工具条上的“New”按钮,新建一个大小为512MB的Logical(逻辑)分区,格式设置为linux swap。点击“Add”确认修改。


再在剩下的所有空闲空间中新建一个逻辑分区,大小充满整个空间,格式设置为EXT3。点击“Add”确认修改。


至此,分区编辑结束,打开“Edit” - “Apply All Operations”菜单,应用所有修改。这时会跳出一个对话框,提示即将进行分区操作,是否继续。至此,所有修改都没有真正应用到硬盘上,因此如果发现任何错误都可以按“Cancel”,并进行重新编辑。


点击“Apply”后,分区开始。


片刻后,分区操作完成。


点击“Close”。退出Gparted,重启系统进入Windows。

二、安装前准备
在准备好了分区后,下面要准备一些能够引导进入Ubuntu安装程序的文件和工具。我们需要一个适合于Windows平台的Grub软件,一个Linux内核文件vmlinuz,一个initrd.gz文件。

值得注意的是,vmlinuz和initrd.gz无法直接从Alternative CD中提取,需要在Ubuntu的网站上下载。我们选择上海交大的Ubuntu镜像站点来下载这两个文件:vmlinuzinitrd.gz

把vmlinuz,initrd.gz和ubuntu 8.04的Alternative CD的ISO镜像放在C盘根目录下。

这里下载Wingrub,用来引导Ubuntu。下载完毕后安装之。关于Wingrub的安装我就不介绍了。

安装完毕后,从开始菜单中打开Wingrub。初次运行需要进行一个Base Setup(基本设置)。选中C分区,勾上下方两个复选框。如下图:


完成基本设置后,进入Wingrub的主界面。看起来界面很复杂,不过其实并不需要做任何工作,为了有所参照,在profile下拉菜单中选中“default”。打开“Tool”菜单,点击“Install Grub”,打开Install Grub对话框。在对话框的下半部分选择Boot from boot.ini。Title设置为“grub”,Timeout设置为10。这些设置将写入Windows的boot.ini,会使得Windows的操作系统选择菜单中多出一个grub的选项。点击Install完成Grub安装。


用记事本打开C:\Grub\MENU.LST,在已有的内容下面添加:

title Ubuntu Install
root hd(0,0)
kernel /vmlinuz
initrd /initrd.gz


一些教程中建议将kernel行写成:kernel /vmlinuz root=/dev/ram0 ro ramdisk_size=32000 devfs=mount,dall,经测试,后面的那一长串内容根本不需要写。保存文件并退出。


重启后,Windows的操作系统选择菜单中会多出一项grub。选中它,并回车引导之。


这时,会进入Grub菜单。选择Ubuntu Install。回车后,Ubuntu安装程序开始启动。

三、安装系统
具体的安装过程因为和Alternative CD方式类似,我就不赘述了。主要说说几个不同的地方。

首先,刚开始安装的时候,硬盘安装会比Alternative CD方式多几个需要选择的地方。首先是语言选择。我们当然选择“中文简体”啦。


地区选择“中国”


不要侦测键盘布局


选择“China”键盘布局


再次选择“China”


这部分设置完成后,后面的步骤就和Alternative CD方式几乎完全一样了。

在分区部分,选择手动,并对/dev/sda6进行简单设置——因为SWAP会被自动设别,无需额外设置。


在“用于”部分选择“EXT3 日志文件系统”。


挂载点选择 /,可以选择格式化,也可以不格式化——因为我们新建分区的时候已经格式化过了。


后面根据提示操作即可。分区格式化结束后,会进行基本系统的安装。然后是一些基本设置,如,用户名,密码等。遇到是否需要下载安装语言包,选择“否”。基本系统安装完毕后,会提示需要安装那些额外软件。这里,按空格键选中“Ubuntu Desktop”这个选项。


安装完毕后,重启系统,就可以看到Grub菜单——这个是Ubuntu的Grub,不是Wingrub。你可以选择进入Ubuntu,进行安装中文语言包等操作。也可以引导进Windows,进行一些清理操作。

四、清理操作
Ubuntu已经安装完毕,所以有必要清理一下Windows下的设置。在Grub菜单下选择Windows,在Windows引导菜单中也选择Windows进入系统。打开Wingrub,打开“Tool” - “Install Grub”,选中“Boot from” boot.ini,点击Remove。


然后,把Wingrub程序卸载掉。

打开C盘,删除Grub文件夹,grldr,vmlinuz,initrd.gz。根据需要处理Ubuntu Alternative CD的ISO文件。好了,清理完毕。

至此,Ubuntu 8.04的硬盘安装已经全部完成。 :)

补充一点,用于Ubuntu硬盘安装的ISO文件可以位于NTFS分区之中。为了给大家清楚的演示,我附上了一张Grub命令行的截图。如图中,root (hd0,0)是一个NTFS格式的分区。vmlinuz与initrd都正确的识别了。不过,请大家注意,Linux版的Grub是不支持从NTFS分区读取文件的,因此无法完成正确引导,请使用WinGrub或Grub for DOS作为引导程序。



要查看本文所有截图,请看这里。所有截图按照时间顺序编号。

关于Ubuntu 8.04的基本设置,请关注本站后续文章。

4 条评论:

  1. 在硬盘安装的基础上加一个网络安装的内容吧。
    只需要把hd-meida的两个东西换成netboot/ubuntu-installer/i386/下的两个文件就好,可选的安装组件更多。特别当发行版释放出来比较久之后,这种安装方法就更有效果。

    回复删除
  2. @hero100era 我确实有想过要加网络安装。但是基本上,能想到纯网络方式安装的读者,基本上不需要看我写的教程了。

    回复删除
  3. 你好。用你介绍的方法,遇到个问题:我在安装过程中,它检测完键盘后,会自动检测光盘,由于我没有光盘,它就自动终止,这个该如何解决?我用的是unbutu的8.04版。

    回复删除
  4. 你好,我想请问一下,我现在的系统只有分区C:\,然后装了一个windows xp sp3的OS,我想安装一个ubuntu,我使用了你的方法(除了将系统分区那部分),当进入install ubuntu的步骤时,我的电脑提示我 Error11 : unrecognized device string,这是怎么回事啊?

    回复删除