红联Linux门户
Linux帮助

Linux分区到底怎么分才是合理的(摘自Gentoo手册)

发布时间:2010-01-27 22:55:29来源:红联作者:Arshcaria
前几天摆弄Gentoo玩,仔细看了下Gentoo的handbook,
感觉无论您是使用Gentoo还是其他的Linux发行版,都应该好好看看这个手册,写的太棒了,中文翻译的也很到位。

自从高一接触Mandrake(现在的Mandriva)以来,把玩Linux/BSD之属已有5个年头,
不算多么厉害,也该是小有经验了。
平时基本不怎么注意分区的问题,帮同学装Linux都是简单的两倍内存的swap分区,其他的通通挂到 “/ ”,嘿嘿,挺坏......
就算给自己装也是多出来boot home这两个分区而已,而且具体的大小也不大在意。
平时维护学校的邮箱服务器,也都是手动备份/var目录中的数据。
而接下来这段文字,很好的解答了如何科学的分区这个问题。



以下摘自《Gentoo Linux x86手册》
http://www.gentoo.org/doc/zh_cn/handbook/handbook-x86.xml

分区的数目主要根据你的系统环境来决定。例如,如果你有很多用户,你可能更希望把你的/home目录独立出来,因为这样做可以增加安全性,备份起来也更容易。如果你安装Gentoo用来做邮件服务器,你的/var目录应该独立出来,因为邮件都存储在/var目录中。选择一个好的文件系统将最大限度地提高你的系统性能。游戏服务器应该把/opt目录独立出来,因为大多数游戏服务端软件都安装在那。理由也与/home目录类似:安全与备份。你一定要使/usr 目录保持足够大:因为它将不仅包含大部分应用程序,而且Portage树本身就需要大约500M空间,这还不包括存储在其中的各种源代码包。

正如你所看到的,这完全取决于你想要达到什么目的。独立的分区或卷有以下优点:

* 你可以为每一个分区或卷选择最佳性能的文件系统
* 如果一个有问题的工具不停地向一个分区或卷写文件,也不会把你整个系统的可用空间都用完
* 如果需要,可以减少文件系统检测的时间,因为多个检测可以并行的进行(尽管这个优势在多磁盘系统上比多分区系统上更为明显)
* 通过对一些分区的进行只读、nosuid(忽略setuid位)、noexec(忽略可执行位)等方式挂载,安全性会大大增强

然而,多分区系统有一大缺点:如果配置的不合理,可能导致系统中一个分区有很大的空闲空间,而另一个没有空闲空间了。SCSI和SATA还有15个分区的限制。

作为分区的例子,我们向你示范一个用于演示的有20GB磁盘的笔记本(包含网站服务器、邮件服务器、gnome……):

代码 2.1: 文件系统使用实例

$ df -h
Filesystem Type Size Used Avail Use% Mounted on
/dev/sda5 ext3 509M 132M 351M 28% /
/dev/sda2 ext3 5.0G 3.0G 1.8G 63% /home
/dev/sda7 ext3 7.9G 6.2G 1.3G 83% /usr
/dev/sda8 ext3 1011M 483M 477M 51% /opt
/dev/sda9 ext3 2.0G 607M 1.3G 32% /var
/dev/sda1 ext2 51M 17M 31M 36% /boot
/dev/sda6 swap 516M 12M 504M 2%
(留作它用的未分配空间:2GB)

这里的/usr快满了(使用了83%),但是一旦所有的软件都安装好了,/usr目录就不会如此的增长了。尽管分配给/var目录的空间看似过多了,但是要记住,Portage默认使用这个分区来编译软件包。如果你想使你的/var目录保持一个合理的大小,如1GB,你需要更改/etc/make.conf 文件中的PORTAGE_TMPDIR来指定一个拥有足够的空闲空间的分区,用以编译诸如OpenOffice这样巨大的软件包。
文章评论

共有 51 条评论

  1. child7 于 2010-01-28 16:14:34发表:

    不用分这么多分区吧,三四个就好了

  2. dchwlinux 于 2010-01-28 15:58:20发表:

    回楼上的:
    完全不会。我的/home分区是两个linux共用的(分出来不就是为了共用的么?)。我共用的还有/boot和swap。如果一个单独分/home,另一个不单独分,那更是老死不相往来。写数据都写在不同分区。就算是共用了,也是分属/home下的两个目录。权限虽然一样,但是属主不同。不用root根本动不了另一个用户的东西,最多也就看看。

  3. 6shao 于 2010-01-28 14:54:27发表:

    对了,个人有个问题,假如我装两个Linux,那么独立出来的/home等分区,到底是属于哪个Linux的,系统可能自己识别吗?会不会发生错误?假如我只有一个Linux独立出来/home分区,另一个Linux不独立出来,会不会存在那个没独立出/home分区的Linux创建用户时,讲用户信息写入了那个独立的/home分区?请高手解答,谢谢!

  4. 王中云 于 2010-01-28 13:38:48发表:

    多个系统共享SWAP分区时,有时UBUNTU装两个或重装就会进行不了。关键是适当地备份重要数据以保数据安全,一个系统用一个分区是正常的。共享home等设立特区,特区要特别对待才行,否则也会出问题。

  5. iamxzg 于 2010-01-28 12:55:11发表:

    good~!

  6. 6shao 于 2010-01-28 12:27:13发表:

    感谢楼主,学习了!

  7. blueman1000 于 2010-01-28 11:19:57发表:

    /home /var 分别设置分区比较安全方便,特别是经常修改或重装系统的朋友

  8. me26659408 于 2010-01-28 09:25:09发表:

    安全和性能的提升。。。
    这是必要的

  9. oniprbl 于 2010-01-28 08:43:12发表:

    分区也就很简单明了,但是看太多资料反觉得复杂难理解

  10. zxc261147 于 2010-01-28 08:22:48发表:

    学习了~

  11. 冰人 于 2010-01-28 08:11:08发表:

    全放在根分区里,不分区,只分一个BOOT / 不就行了吗??