imjacob的专栏

首页博文目录订阅
正 文

linux 分区和文件系统

(2010/6/20 09:41)

以下转载:http://softbbs.pconline.com.cn/9180884.html ,个人虽然装了好几个linux发布版了,发现还是很多不懂,文章 写得非常好。可惜图片转不过来。

 

//===================================================================

 

一块硬盘需要有分区并且分区被格式化(格式化其实就是在分区上创建文件系统)才能正常使用。安装Linux遇到的第一个比较重要的问题,恐怕就是分区和创建文件系统了,由于大家基本都具有windows的使用经验,所以这里先拿大家再熟悉不过的windows的磁盘管理和著名的分区软件PQ来简单说明下分区和文件系统的关系 。。。


通常一块新硬盘里是没有分区和文件系统,看起来是这样:




把它分为3三个区,看起来应该是这样(仅仅是分区,没创建文件系统):


细看分区结构如下:
主分区
扩展分区 --- 逻辑驱动器(所有逻辑驱动器包含在扩展分区中)


注意:
1.主分区+扩展分区总数最多为4个。(这是由引导扇区的分区表大小决定的)
2.还有一个混淆视听的概念,逻辑盘(或者叫逻辑磁盘,逻辑硬盘),什么C盘,D盘之类,其实就是分区的代名词,每个分区,不论主分区还是逻辑驱动器,都可以叫逻辑盘,这个貌似也是源于windows的。



接下来当然是要创建文件系统也就是通常所说的格式化分区(所以文件系统通常也叫磁盘格式),常见的文件系统windows的:FAT、FAT32、NTFS,Linux的:ext2、ext3、reiserfs、jfs等。这里我们对每个分区进行格式化,使用的文件系统为FAT32:


OK,现在这块磁盘就已经分好区,并创建好文件系统了。。。


请清楚一下几点:
1.分区对于操作系统来说是不变的,不同的操作系统只是在分区上使用不同的文件系统而已 。。。

2.对于逻辑盘(C、D、E盘之类)只是给分区起的名字而已,是某些操作系统定义的,是人为定义的,是相对的,DOS、windows有,linux没有,所以使用linux请把它们忘掉。。。

3.最好说把linux装在第几个主分区或者第几个扩展分区,别说装在哪个盘,虽然也能听懂,但概念错误,逻辑盘建立在操作系统的基础上,也就是建立在文件系统的基础上。所以如果说C盘其实是一个格式化为NTFS或者FAT32的分区。可以把linux装在C盘所在的分区上,但是不能装在它的文件系统上,也就是说装linux需要创建新的文件系统,说句大白话就是需要重新格式化这个盘所在的分区 。。。
下面来讨论linux的文件系统,建议先跑linux liveCD体验下找不到C、D、E盘的感觉 。。。



怎么只有“文件系统”?(这个“文件系统”称之为根目录,表示为“/” )

怎么全是文件夹?

结合分区来看下linux的文件系统,普通桌面版linux标准安装默认是这样:

很清楚的两个分区,一个主分区(文件系统ext3),一个扩展分区里面一个逻辑驱动器(文件系统swap)


再回头看看目录结构,对应到分区上好像是这样的:



但是好像上面不太正确,下面的才是正确理解,因为linux还可以这样:

一目了然,没什么好说的了吧 。。。


linux下没有什么逻辑盘,只有目录的概念,用户也不必理会分区,因为分区也是目录,建立分区与目录的对应关系就是常说的挂载分区,下图是linux的目录树:



这里解释一下swap,类似于windows下的pagefile.sys,swap分区是系统内核作为虚拟内存来使用的,并不挂载到文件树上。。。



linux的标准安装需要两个分区:
分区一:ext3或者其他linux可用文件系统挂载为根目录 / 
分区二:作为虚拟内存swap
  硬盘已经分区并且有windows系统的基础上安装linux的分区准备 。。。

如图,现在要安装linux,想安装在G所在的分区上:



因为linux需要两个分区,现在只有一个分区,那么首先要做的是将这个分区一分为二,一部分做swap,一部分做ext3挂载为根。这个可以用 windows来做(但是windows只能做到创建两个分区无法格式化为linux需要的文件系统),也可以用分区软件来做,也可以在linux安装时利用自带的分区工具来做 。。。


这里我们使用linux安装自带的分区工具,以便熟悉linux 。。。


进入分区步骤:

选择手动,下一步。。。


看到当前硬盘的分区情况,刚才的G盘现在还对得上是哪个分区吗:

就是图中选中的那个,这里要简单说下linux的磁盘分区命名规则:
并口硬盘 hda,hdb,hdc 。。。
串口硬盘sda,sdb,sdc 。。。
主分区(最多4个)所以编号是 1,2,3,4 
逻辑驱动器编号从5开始 5,6,7,8 。。。

所以第一块串口硬盘第一个主分区就是sda1,第一个逻辑驱动器就是sda5,以此类推 。。。



现在删除sdb6,变成:



使用空闲空间创建新分区,记得是要创建两个,swap(交换空间)一般是物理内存的1-1.5倍:




剩下的创建一个ext3分区,挂载点为根目录/ :






完成了看起来是这样:



OK 。。。   Re:[10101010101010101010,7楼]。 (imjacob注: 蓝色为提问,青色为回答, 红色为本人 加标记。)
关于主分区 的问题
如果装 XP+LINUX双系统的话
XP装C盘,即sda1 必须为主分区


不是 sda1必须为主分区 是主分区才叫sda1、sda2、sda3、sda4再大的数字就表示扩展分内的逻辑驱动器了 。。。


那么后面的sda5,sda6.......拿来装LINUX
到底要强制为主分区吗?

不需要强制为主分区 。。。


PS:一个硬盘好像作多可用4个主分区。
最多四个主分区 扩展分区算一个主分区 所以最多要么四个都是主分区 这时候就无法再分扩展分区了 要么最多三个主分区+一个扩展分区 。。。


现在我硬盘里就有一个主分区就是XP用的那个别的都是逻辑分区的,我用ubuntu8
我也这样 。。。


但是我在虚拟机下手动分区安装archlinux的时候,就只让/boot为主分区,其余的/home,/etc之类的为逻辑分区,就出错无法进行安装后来全部强制为主分区了才可以装上
试了下它的自动分区果然很BT:

不过我也很BT的手动了下 仍可以正常引导使用:

手动分区的话 记得把grub也该下 默认是:

我那样分区就应该是:

默认的话 自然装完默认引导不了 。。。




主分区到底是怎么理解分配呢????
主分区可以是可以激活引导的 windows之类都是由mbr找到被激活的引导分区 然后交由该分区的ntloader, 引导启动系统 ,主分区可以有四个, 但是只有一个可以被激活, 多了不就乱了么 ,mbr可不会像grub 来生成一个menu.lst 。。。
但是我们现在用grub来替代mbr, grub不是去找被激活的引导分区 ,而是去找 menu.lst menu.lst告诉grub怎么找到系统的内核, 而且是直接以分区和路径的形式告诉grub的, 所以也就不用再考虑四个主分区的问题了 那个是mbr需要的 ,grub不需要 。。。
评 论
还没有网友评论,欢迎您第一个评论!
博 主
进入imjacob的首页
博客名称:雅克的一府
日志总数:514
评论数量:901
访问次数:1868714
建立时间:2006/11/23 20:52
导 航
公 告
Locations of visitors to this page 本博客主要用于个人学习与资料收藏。当然大家应该读了之后也能学到不少东西。其中大多数资料都是来自网络,我转载时尽可能地表明文章出处与原作者姓名,但由于很多资料经多人转载,已不清楚原作者信息与出处,所以未表明相关…
评 论
链 接

ARM+LINUX 嵌入式博客
http://blog.chinaunix.net/u1/58780/index.html

嵌入式软件
http://blog.csdn.net/embeddedsoft

诚诚恳恳做人踏踏实实编程
http://blog.sina.com.cn/u/1244756857 

和我风格相似的一个blog
http://blogger.org.cn/blog/m…