无论是安装Windows还是Linux操作系统,硬盘分区都是整个系统安装过程中最为棘手的环节,网上的一些Ubuntu Linux安装教程一般都是自动分区,给初学者带来很大的不便,下面我就根据多年来装系统的经验谈谈安装Ubuntu Linux系统时硬盘分区最合理的方法。
在讲硬盘分区之前,我先来普及一下硬盘的相关分类,硬盘一般分为IDE硬盘、SCSI硬盘和SATA硬盘三种,在Linux系统中,IDE接口的硬盘被称为hd,SCSI和SATA接口的硬盘则被称为sd,其中IDE硬盘基本上已经淘汰,现在市面上最常见的就是SATA接口的硬盘,第1块硬盘称为sda,第2块硬盘称为sdb……,依此类推。
一块硬盘最多有4个主分区,主分区以外的分区称为扩展分区,硬盘可以没有扩展分区,但是一定要有主分区,在主分区中要有一个激活分区用来启动Windows系统,在扩展分区中可以建立若干个逻辑分区,因此,最合理的分区方式应该最多分三个主分区,一个扩展分区,这样可以有效地利用有限的主分区,然后在扩展分区中建立逻辑分区。
在Linux系统中每一个硬盘总共最多有 16个分区,硬盘上的4个主分区,分别标识为sdal、sda2、sda3和sda4,逻辑分区则从sda5开始标识一直到sda16。
Ubuntu Linux可以把分区作为挂载点,载入目录,其中最常用的目录如下表所示:
目录 |
建议大小 |
格式 |
描述 |
/ |
10G-20G |
ext4 |
根目录 |
swap |
<2048M |
swap |
交换空间 |
/boot |
200M左右 |
ext4 |
Linux的内核及引导系统程序所需要的文件,比如 vmlinuz initrd.img文件都位于这个目录中。在一般情况下,GRUB或LILO系统引导管理器也位于这个目录;启动撞在文件存放位置,如kernels,initrd,grub。 |
/tmp |
5G左右 |
ext4 |
系统的临时文件,一般系统重启不会被保存。(建立服务器需要?) |
/home |
尽量大些 |
ext4 |
用户工作目录;个人配置文件,如个人环境变量等;所有账号分配一个工作目录。 |
如果你只是简单地想用上Ubuntu,可以这样操作:
1)如果你是直接将整个硬盘都用来装Ubuntu,机器上没有需要保存的数据,或者已经做好备份的情况下,可以直接在Ubuntu分区时选择“向导──整个硬盘”
2)如果你是做双系统,并已经在Windows下倒出一块空白空间(在磁盘管理中直接删除某个磁盘)。可以直接在Ubuntu分区时选择“向导──使用最大的连续空闲空间”
如果想更好地理解分区并实现自我定制,看看下面的内容补习一下文件系统和挂载点的概念再根据自己的实际情况结合需求而定。
一、文件系统
什么是文件系统?请看 http://man.lupaworld.com/content/other/Linux/linuxmanage/node42.html。
现在的主流文件系统就是ReiseFS和ext3,关于这两者的介绍请看
ext3 简介
( http://forum.ubuntu.org.cn/about7040.html)
ReiserFS文件系统 ( http://www.lslnet.com/linux/docs/linux-2976.htm)
ReiserFS与ext3的比较 ( http://www.91linux.com/html/article/partition/20070626/2969.html)
你在分区时可以根据自己的需要选择一种文件系统。
二、挂载点
Linux中分区要以文件系统的方式挂载到系统中的挂载点上,就如同Windows中分区也要以Fat32或NTFS格式格式化成不成的盘符一样。至少 Linux需要一个/分区(一定要打开启动选项,好像在安装过程中直接分区时不会提示,那就不用管了),一般也都会有个SWAP交换分区(这东西类似 Windows中的虚拟内存,但比那个还要专业,直接搞成一个分区形式了,而且Linux也有SWAP文件的形式出现。),当然,如果你的内存足够大,也可以不要SWAP分区。
Linux中文件系统是以/文件系统(根文件系统)呈树状组织起来的。请看wiki中的
如何分区( http://wiki.ubuntu.org.cn/index.php?title=%E5%A6%82%E4%BD%95%E5%88%86%E5%8C%BA&variant=zh-cn)。
三、如何分区
那这些文件系统都要以独立分区形式挂载吗?也不尽然,需要看你的情况和需求而定。
一般常见的分区方式有:/文件系统和一个SWAP分区;/文件系统、/home文件系统和一个SWAP分区、再详细点,再多个/boot系统、 /var文件系统等Linux目录树、不属于Linux目录树的/back(名字自己定,/file也可以,这是自己用来存放备份数据的地方)
只分一个/ 和swap也有它的好处,可以最大限度的利用硬盘空间(用户用时只要/没用完,就可以不去理会硬盘空间的问题),但这样重装系统时要先备份/home,不然重装就麻烦。(引自skyx在 http://forum.ubuntu.org.cn/viewtopic.php?t=66160的回复)如果你给Ubuntu侵害的硬盘空间比较小,比如只有8G、10G的,采取这种方式比较好,虽然默认系统装完后,/文件系统只有3个G左右,但随着你安装软件的增多,/文件系统也会越来越大的,我现在给/文件系统分了6个G,就已经被占用近5个G了。
但只划分一个/分区也比较危险,这就意味着,所有的数据都将存放在唯一一个 / 文件系统中,这对于实际的生产系统来说是不安全的(就如同我们在使用Windows时也不会只划分一个C盘)。如果分配给Ubuntu的空间大一些,则可以将/home独立挂载,也可以再根据自己需要把其它如/boot、/var等独立挂载,这样有一定好处:
引用:
/boot分区,它包含了操作系统的内核和在启动系统过程中所要用到的文件,建这个分区是有必要的,因为目前大多数的PC机要受到BIOS的限制, 况且如果有了一个单独的/boot启动分区,即使主要的根分区出现了问题,计算机依然能够启动。这个分区的大小约在60MB—120MB之间。
/usr分区,是 Linux系统存放软件的地方,如有可能应将最大空间分给它。
/home分区,是用户的home目录所在地,这个分区的大小取决于有多少用户。如果是多用户共同使用一台电脑的话,这个分区是完全有必要的,况且根用户也可以很好地控制普通用户使用计算机,如对用户或者用户组实行硬盘限量使用,限制普通用户访问哪些文件等。
/var/log分区,是系统日志记录分区,如果设立了这一单独的分区,这样即使系统的日志文件出现了问题,它们也不会影响到操作系统的主分区。
/tmp分区,用来存放临时文件。这对于多用户系统或者网络服务器来说是有必要的。这样即使程序运行时生成大量的临时文件,或者用户对系统进行了错误的操作,文件系统的其它部分仍然是安全的。因为文件系统的这一部分仍然还承受着读写操作,所以它通常会比其它的部分更快地发生问题。
/bin分区,存放标准系统实用程序。
( http://wiki.ubuntu.org.cn/index.php?title=%E5%A6%82%E4%BD%95%E5%88%86%E5%8C%BA&variant=zh-cn)
xhy 写道:
(将/boot单独分区)1 可以有几个不同的操作系统共享同一套内核 方便管理
2 boot目录的IO访问比较少,单独放在一个分区,可以防止其它目录的读写导致boot的inode损坏
3 老主板有1024柱面问题 单独在前1024柱面分一个boot分区 可以避免这个问题
4 如果做RAID或者LVM,引导管理程序可能不支持,导致找不到内核,因此单独的boot分区就很有意义了
5 方便使用dd这样的工具进行备份
6 可以用只读方式挂载boot分区 增加安全性
ps: 如果喜欢折腾系统 常常重装 那么单独分出来确实没什么用处
( http://forum.ubuntu.org.cn/viewtopic.php?t=65665)
如果将/boot单独分区,则/boot为主分区,而/分区不必是主分区。
安全的分区方案原则:系统数据和普通用户数据分离放置于不同的分区 (即使用单独的 home 分区);不经常变化的系统数据和经常变化的系统数据分离放置于不同的分区(即使用单独的 usr 分区和 var 分区)。
一般地,在一个实际系统中至少要创建单独的 home 分区。
四、图文演示
在此,我用虚拟机来给大家演示一下如何操作分区,当然,这里的数据并没有参考意义,只是让大家有一个感性认识(
PS:在手动分区过程中随时可以通过“撤销对分区设置的修改”来放弃划分错误的分区重新开始):
(一)用Desktop CD安装到空白硬盘:
注意:在用Desktop CD安装Ubuntu到空白硬盘时,只有两个分区选择:“向导──使用整个磁盘”和“手动”,如果想用整个硬盘来安装Ubuntu系统而又不进行比较细的分区,可以选择“使用整个硬盘”,安装程序会自动将整个磁盘分为/文件系统和SWAP文件系统,SWAP的大小在我的实验中略小于内存。“使用整个硬盘”比较简单,点击“前进”按钮一闪就完成了,下面我们看一下如何手动分区(只是简单地分为/、/home和SWAP,如果想分割出更多的分区参照着操作就可以了):
选择“手动”,点击“前进”
点击“New Partition Table”
点“继续”
1 选择“free space”(空闲空间)
2 点击“New partition”(新建分区)
3 选择新分区的类型:Primary(主分区)(单独安装Ubuntu到全新磁盘,/分区需要选择Primary,其它分区选择Logical逻辑分区就可以;如果是安装双系统且已安装Windows的话,/分区的类型选择Primary或者Logical都可以,其它分区选择Logical逻辑分区。)
4 输入新分区的大小(以MB为单位)
5 选择新分区的位置(你希望新分区是建在可用空间的首部还是尾部,一般默认统一选择“开始”就可以)
6 选择使用的文件系统(一般用ext3或ReiseFS)
7 选择挂载点(虽然这里有个下拉三角,但我在虚拟机实验时却无法选择,只能自己输入)
8 点击“OK”确认
创建完/文件系统后,可以看到已经建立了一个ext3文件系统的挂载到/的分区,还剩1932MB空闲空间,如图:
继续来创建并挂载到/home文件系统,与前面的操作类似,只是分区类型无需为Primary(主分区),只要为逻辑分区(Logical)就可以了:
创建并挂载完/home文件系统后,如图:
我们接着创建SWAP分区,注意这时分区大小我们用系统提供的剩余空闲空间大小就可以了,文件系统用swap,这里就不用输入挂载点了:
分区全部创建完了,如图:
在Desktop CD安装的最后一步,我们可以看到:
(二)用Ubuntu Desktop CD安装双系统
默认前提:已经提供了剩余空白分区,不论你在在分区时保留的,还是在Windows中用磁盘管理删除一个分区后得到的,又或者用分区魔术师调整得来的。
在安装程序进行到分区部分时,会比安装到空白硬盘多一项“向导──使用最大的连续空闲空间”,如图:
如果说我们为了偷懒,只要Ubuntu系统能用就行,则可以使用这一项,由系统自动为我们分割成/分区和SWAP分区,点“前进”按钮,在第7步时会得到如图提示:
可以看到,系统自动为我们将空闲空间划分为/分区和SWAP分区。
如果我们想进行比较细化的分区,就象上面的手动分区操作一样,选择“手动”,点击“前进”按钮,与上面基本大同小异,如图:
(三)用Alterate CD安装Ubuntu双系统
默认前提:已经提供了剩余空白分区,不论你在在分区时保留的,还是在Windows中用磁盘管理删除一个分区后得到的,又或者用分区魔术师调整得来的。
用Alterate CD安装Ubuntu双系统,界面与Desktop CD略有不同:
大家可以看到除了“向导──使用整个磁盘”、“向导──使用最大的连续空闲空间”和“手动”这三项我们在Desktop中也可以见到的选项之外 ,还多了一项“向导──使用整个磁盘并配置LVM”,LVM是逻辑卷管理的意思,貌似这个东东多用在服务器中,再说我们这里是要安装Ubuntu与Windows的双系统,所以这一项我们就不理会了,感兴趣的朋友可以看一下http://dotclear.org.cn/dapper/ubuntusys/ch02-ubuntu_install/30-server_installation_with_lvm#
,那里有安装服务器时使用LVM选项安装的图解,也可以自行搜索更多有关lvm的资料。
我们如果选择“向导──使用最大的连续空闲空间”,则会出现如下图提示:
我们可以看到,同Desktop CD中一样,系统自动为我们将空白分区划分为一个/主分区和一个SWAP逻辑分区。如果我们确定要让系统自动为我们划分空白分区,则选择“是”将改动写入磁盘。
我们来看一下如何手动分区,在刚才“分区方法”处选择“手动”,出现:
选择“空闲空间”,出现:
选择“创建新分区”,出现:
输入新分区大小,一般直接将前面的数字修改一下就OK了,虽然可以用百分比表示,但那样不直观,反而不美,“继续”,出现:
选择新分区的类型,此处因为是安装双系统,我们想要安装的/文件系统选择“主分区”或“逻辑分区”都可以:
选择新分区的位置,直接用默认的“开始”就可以。
这时会出现如下图的“分区设置”:
1 回车选择文件系统,常用文件系统有ext3和ReiseFS
2 回车选择挂载点
3 回车打开可启动开关(这是因为我们挂载的是/)
4 分区设定结束
返回后会看到下图,我们划分的4GB的/分区已经已经出现在分区信息中了:
继续选择“空闲空间”划分挂载其它分区。
选择“创建新分区”,出现:
输入新分区大小。
选择新分区的类型,注意除了/分区,一般选择逻辑分区就可以了。
选择新分区的位置,还是用默认的“开始”就可以。
这是我们要挂载的/home的分区设置。
/home也出现在分区信息中了。继续将剩余的空间划分为SWAP空间,选择“空闲空间”:
选择“创建新分区”,出现:
输入新分区的大小,因为是最后的分区了,所以直接用默认的剩余空间大小就可以了。
选择“新分区的类型”,还是用逻辑分区就可以了。
因为这个分区我们是要作为SWAP分区,所以这里就要选择“交换空间”,然后“分区设定结束”。
这样所有的分区都划分好了,再查看一下分区信息,如果没有错误,就选择“分区设定结束并将结果写入磁盘”,如果有错误,就选择“撤销对分区设置的修改”,一旦写入磁盘,就无法修改了,慎重慎重!