新手看招:Ubuntu Linux系统的分区方案


一、Linux 分区概念

  首先介绍一下linux中的分区概念,这个可是把一开始学习的我害苦了。

在 Linux 中规定,每一个硬盘设备最多能有 4 个主分区(其中包含扩展分区)构成,任何一个扩展分区都要占用一个主分区号码,也就是在一个硬盘中,主分区和扩展分区一共最多是 4 个。对于早期的 DOS 和 Windows(Windows 2000 以前的版本),系统只承认一个主分区,可以通过在扩展分区上增加逻辑盘符(逻辑分区)的方法,进一步地细化分区。

  主分区的作用就是计算机用来进行启动操作系统的,因此每一个操作系统的启动,或者称作是引导程序,都应该存放在主分区上。这就是主分区和扩展分区及逻辑分区 的最大区别。我们在指定安装引导 Linux 的 bootloader 的时候,都要指定在主分区上,就是最好的例证。

  Linux规定了主分区(或者扩展分区)占用 1 至 16 号码中的前 4 个号码。以第一个 IDE 硬盘为例说明,主分区(或者扩展分区)占用了 hda1、hda2、hda3、hda4,而逻辑分区占用了 hda5 到 hda16 等 12 个号码。因此,Linux 下面每一个硬盘总共最多有 16 个分区。

  对于逻辑分区,Linux 规定它们必须建立在扩展分区上(在 DOS 和 Windows 系统上也是如此规定),而不是主分区上。因此,我们可以看到扩展分区能够提供更加灵活的分区模式,但不能用来作为操作系统的引导。

  以前对这些概念不熟,分区上走了很多弯路。那么,到底什么样是一个好的分区方案,我认为见仁见智,我是这样分的。原则上/ 和/home基本上最好是要单独挂载两个分区,因为home可以看成是windows中的my document,自己个人资料多的话home要大一些。/小一点无所谓,据说至少2G,我也没有试验过。其他的诸如/tmp和/var由于活动文件特别 多,为了避免他们的文件碎片对其他区的影响,最好他们挂一个区。最后/opt主要安装大型软件,如果有多余的分区就给他挂一个吧。

  二、开始分区

  ok, 我就这样看,首先分一个100M的主分区出来,挂载boot.grub启动时需要的文件都在/ b o o t 目录。这样就算工作分区出了问题,只要这个分区没有问题,同样可以启动。因此最好的办法就是专门为根文件分一个区,大小一般最多64M,我为了保险给了 100M.

  之后的分区全部以扩展分区形式存在,扩展分区下很多逻辑分区。

  首先创建一个交换分区,大小是无力内存的一倍到两倍大。如果你的内存和我一样是1G,就划1G好了。事实上基本用不到这么大。分区格式记着改成linux-swap.

  然后创建一个尽量大的分区,给/usr,因为这里存放有大部分的系统软件,包括X Server等图形界面程序。我分了20G.

  接下来创建/home的挂载分区。考虑到我的工作文档比较多,源代码和程序也经常放到这里,所以给了10G.

  其他的诸如tmp,var等来说,单用户工作机是不用考虑的。当然不知道我的机器以后会不会有服务器应用,我还是给var分了2G的空间。

  其他空间就全部挂载给/.虽然一般2G就够了,但是多多益善么。

  注意:很多时候,如果你使用了ubuntu光盘自带的安装工具分区,会出现很多问题。如果遇到问题过不去,推荐两个办法:

  1 在live CD的环境中,在终端下直接用sudo fdisk /dev/xxx

  来分区,然后w保存后reboot,之后再进安装工具,手工编辑注册表时它认得的就是你编辑的分区表,不用修改直接下一步即可。

  2 你也可以同样用livecd的fdisk分好区后,用光盘上的livecd

  installer程序,在命令行下安装。不过这个安装程序只需要你挂载/和swap.那么其他分区怎么办呢?可以先在分好,也可以安装完系统再分。如果将其他分区挂载到希望的目录下?举个例子。如果你想把/

  home/user挂载到新的sda8分区下,可以这样做:

  首先,将/dev/sda8 mount到 /mnt/sda8中。如果没有这个目录就自己mkdir.

  然后,cp -R /home/user/* /mnt/sda8/user ,和cp -R /home/user/.* /mnt/sda8/user

  最后修改/etc/fstab,增加一行/dev/sda8 /home ext3 defaults 0 2(参数自己确定)即可。

 

本文作者:



相关阅读:
Windows 2008 基于策略的服务质量
一个基于mysql的登陆验证程序
AJAX请求类
基于jquery点击自以外任意处,关闭自身的代码
js实现页面打印功能实例代码(附去页眉页脚功能代码)
.NET中的Parameters
把vbscript发挥到它的极限应用之一(数组)!!!
抠出Windows 2003中的IIS6安装程序
用MySQL函数清除字符串首尾空白字符的方法
用CSS3伪类target如何制作tab选项卡效果
Linux文件系统x挂载工具--autofs介绍
500内部错误,asp日志报告“不允许的父路径”
ubuntu下无法用date函数设置时间的问题解决
Windows Server 2008 SP2即将发布
快速导航

Copyright © 2016 phpStudy |