Linux下的/、/home、/boot、/swap等等并不是分区,而是所谓的“挂载点”。
所谓“挂载点”(mount point)实际上是目录树上的一个目录。
和Windows不同,Linux的目录树是单根的,根目录就是/。并不像Windows一样存在C:、D:、E:之类分区以及C盘根目录C:之类概念,它就一个根,也就是/。
那么,当我们有多块磁盘、或者分了若干个分区,怎么用呢?
很简单,用mount命令挂载在某个“挂载点”即可。
比如,我有两块SSD,SSD快但容量小,所以打算拿来装系统以及加速大型软件/游戏;那么我们就可以把它挂载在/bin和/home/huge_app下面。这样往/bin和/home/huge_app存文件就会存到SSD上。
类似的,我们可以搞一块傲腾或者别的什么,把它格式化成Linux swap格式,然后挂载在/swap分区——于是内存不足使用磁盘虚拟时,性能就不会掉太多。
再比如,我们存了很多电影,/home不够用了。怎么办呢?
买一块8T的硬盘,挂载到/home就好了——你可以复制旧内容过去,还可以把SSD继续挂载在/home/huge_app。
有了这个基础知识,那么Linux该如何分区就一目了然了。
一般来说,你应该准备起码三个区。
第一个区是/boot分区,大约200~500M就够用了。它的作用是安装grub、存放Linux kernel以及initrd映像。这些都是启动时必需的东西,单独存在boot区便于管理。
第二个区是swap分区。这是因为Linux的swap分区格式为内存交换做过专门优化;你不设swap分区也行,或者指定主分区上的一个文件也行,但性能方面都比不过专门的swap分区。这个区建议使用最快的硬盘(但如果用SSD的话,最好选用MLC甚至SLC,不然内存不足时读写量太大,容易把SSD写废)。
这个分区的大小一般建议和你机器上安装的内存大小相当。当然你设置的更大/更小也可以。
第三个区就是/分区,这里安装了Linux系统以及你自己的用户文件,请把你硬盘上的剩余空间都留给它。
当然,如果你想搞的更细致的话,也可以分出10~50G安装Linux(以及其它应用),把它挂载到/;剩下的所有空间挂载到/home:这样可以把Linux系统文件和你的用户文件分开,将来换其它版本的Linux也不会影响你自己的数据。
类似的,如果你打算在上面架设网站的话,也可以分一个区挂载到/opt——另外买一个硬盘、甚至买十个硬盘组个RAID然后把它整个的挂载到/opt,都行。
事实上,如果你安装较新的Linux发行版的话,以上这些也可以不管,在硬盘上留下足够的未分区空间、安装程序就会自动在上面分区、安装——规划方式就是我前面说的,它会自动为你分三个区,分别对应于/、/boot和/swap。
当然,如果你准备了SSD和大容量机械硬盘、甚至搞了更多更酷的存储器,那么就需要主动指定这些存储器的使用方案了。
基本思路就前面提到的,一个可靠但容量小的分区或者磁盘挂载到/boot,一个速度较快的分区或者磁盘挂载到/,一个耐读写同时速度快的分区或者磁盘挂载到/swap……以此类推。