Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2373741
  • 博文数量: 473
  • 博客积分: 12252
  • 博客等级: 上将
  • 技术积分: 4307
  • 用 户 组: 普通用户
  • 注册时间: 2007-10-12 10:02
文章分类

全部博文(473)

文章存档

2012年(8)

2011年(63)

2010年(73)

2009年(231)

2008年(98)

分类: 服务器与存储

2009-04-03 13:26:13


什么是硬盘分区,分区用来做什么?

Linux下硬盘分区基础
什么是硬盘分区,分区用来做什么?
分区就是硬盘的"段落"。Windows分区有自己的盘符(C:,D:等等),这些分区看起来都好像是一个独立的硬盘。

最简单的情况下就是将整个硬盘作为一个唯一的分区。如果您购买了一台已经预装了window的机器,基本上都是这种情况。

如果您希望在机器上安装更多的, 将需要更多的分区。您更不能在这个单独的分区里面再安装linux。如果您要同时安装Windows ME和 Windows2000,那么您将需要两个分区。原因是不用的操作系统原则上采用不同的文件系统。如果几个操作系统都支持相同的文件系统,通常为了避免在 一个分区下有相同的系统目录,也将他们安装在不同的磁盘分区。

在Linux下是不同的情况,它本身又有更多的分区--比如,根分区 "/" 和交换分区"swap"。

提示:说的更清楚一点:您在安装Linux时考虑的并不是windows分区下还有多少空间,因为windows分区下的空间Linux不能使用。您需要在Windows分区外建立新的分区。
分区类型
硬盘分区一共有三种:主分区,扩展分区和逻辑分区。

在一块硬盘上最多只能有四个主分区。您可以另外建立一个扩展分区来代替四个主分区的其中一个,然后在扩展分区下您可以建立更多的逻辑分区。

扩展分区只不过是逻辑分区的"容器"。实际上只有主分区和逻辑分区进行数据存储。
提示:Windows9x/ME下自带的分区程序fdisk只能定义一个主分区。也就是说,在Windows9x/ME下您只能定义最多一个主分区,一个扩展分区和扩展分区下更多的逻辑分区。如果你想要使用更多的主分区,必须在Linux下进行分区。
分区和格式化
每 个操作系统下都有自己的用来改变硬盘分区的工Windows9x/M下是非常有名的FDISK,在Windows NT/2000/XP中带有一个非常方便的图形界面的工具,他的位置在不同的Windows版本下也稍微有所不同(比如在2000下控制面板―管理工具― 计算机管理―磁盘管理)。在Linux下进行分区既可以使用FDISK,或者一个相同功能的图形界面程序。

每个主分区和逻辑分区都回被存储一个识别文件系统的附加信息。操作系统(Windows或者Linux等等)能通过这些信息非常容易的识别和确认,应该使用哪个分区。不能识别的操作系统分区将会被忽略。

通过分区当然不能产生任何文件系统。在分区之后只是对硬盘上的磁盘空间进行了保留,还不能直接使用。在此之后分区必须要进行格式化。在Windows下可以通过资源管理器下的文件菜单或者FOMATE程序来执行,在Linux下大多数情况下由mke2fs来完成。

提示:Linux支持不同的文件系统。应用最广泛的是ext2。ext2就是有我们上面提到的mke2fs程序来建立的。Linux当然也支持reiserfs文件系统

注意:进行任何磁盘分区或大小的改动工作,都会丢失以前的数据。一次在分区直前一定要对数据进行备份。
Dos/Windows下的分区名称
在Windows下操作系统使用的分区将用盘符来表示。A:和B:为软驱保留,其他应盘上的主分区和逻辑分区将从C:开始依次排列。(扩展分区没有任何盘符,而且是看不到的。在我indowsx下同样也看不到Linux分区)

如果一台机器有很多的硬盘,, 软驱等,磁盘分区的命名将产生混乱。在这种情况下,第一块硬盘上的主分区和逻辑分区将首先得到命名盘符;然后是第二块,第三块等等。比如您有三块硬盘,每 一快硬盘上同时又有一个主分区和两个逻辑分区,那么第一块硬盘的命名将是C:,F:,G:,第二块为D:,H:,I:,第三块为E:,J:,K:。

在WindowsNT/2000/XP下可以改变这些系统自动命名的名称。比如你可以将一个光驱命名为X,这样在添加新的分区的时候他的名称就不会改变了。

陌生文件系统的分区将不会被命名,在大多数程序里面(比如资源管理器)是看不到的。、这些分区将只能在磁盘分区工具(Windows9x/ME下的FDISK,下的计算机管理-命令解释器)下面显示。


下的分区名称
Linux下的分区命名比Windows下面将更加清晰详细,但是由此而来的名称不容易记住。不同于Windows下的盘符,Linux通常采用设备-名称(device-name)。一般的(比如IDE硬盘)将采用/dev/hdxy来命名。X表示硬盘(a是第一块硬盘,b是第二块硬盘,依次类推),y是分区的号码(从0开始,1,2,3等等)。SCSI硬盘将用/dev/sdxy来命名。(不管是IDE类型或者SCSI)将和硬盘一样来命名。

提示:IDE(集成电路设备)和SCSI(小型计算机系统接口)是两个目前最流行的连接计算机硬盘,光驱或者软驱的系统。SCSI比IDE速度要快,但是同样价钱也要贵一些。SCSI通常可以用于文件和服务器。Linux支持这两种系统(当然可以同时在一台机器上拥有IDE和SCSI设备)

IDE 硬盘和光驱设备将由内部连接来区分区定。/dev/hda表示第一个IDE信道的第一个设备(master),/dev/hdb表示第一个IDE信道的第 二个设备(slave)。按照这个原则,/dev/hdc和/dev/hdd为第二个IDE信道的master和slave设备。被命名为 /dev/had和/dev/hdc的两个设备在理论上是同样可以的,在这里不使用/dev/hdb。(这种情况下,设备被作为master连接在第一和 第二个IDE信道上)

SCSI硬盘或者光驱设备依赖于设备的ID号码,不考虑遗漏的ID号码。比如三个SCSI设备的ID号码分别是0, 2,5,设备名称分别是 /dev/sda,/dev/sdb,/dev/sdc。如果现在再添加一个ID号码为3的设备,那么这个设备将被以/dev/sdc来命名,ID号码为 5的设备将被称为/dev/sdd。

分区的号码不依赖于IDE或者SCSI设备的命名,号码1到4位主分区或者扩展分区保留,从5开始才 用来为逻辑分区命名。由于这个原因,经常会有号码漏洞。(比如1,2,5,6,在这里3和4就是号码漏洞)比如:第一块硬盘的主分区为hda1,扩展分区 为hda2,扩展分区下的一个逻辑分区为hda5。

下面还有一些例子帮助大家来理解

/dev/hda          表示整个IDE硬盘
/dev/hda1         表示第一块IDE硬盘的第一个主分区
/dev/hda2         表示第一块IDE硬盘的扩展分区
/dev/hda5         表示第一块IDE硬盘的第一个逻辑分区
/dev/hda8         表示第一块IDE硬盘的第四个逻辑分区
/dev/hdb          表示第二个IDE硬盘
/dev/hdb1         表示第二块IDE硬盘的第一个主分区
/dev/sda           表示第一个SCSI硬盘
/dev/sda1          表示第一个SCSI硬盘的第一个主分区
/dev/sdd3          表示第四个SCSI硬盘的第三个主分区


四、为Linux划分分区:

  大家都知道,Windows下每一个分区都可利用于存放文件,而在Linux则除了存放文件的分区外,还需要一个“Swap(交换)分区”用来补充内存,因此通常需要两个分区:

  1. 主分区:学习使用的话,建议2G;
  2. 交换分区:只需1-2倍内存的大小,若64-128M内存,交换分区可为128M,128-256M内存,交换分区可为256M。

  由于早期的Linux启动器LILO无法识别8G以外的硬盘分区,因此建议将Linux两个分区分在8G以内。

五、启动系统:

  每个硬盘的逻辑第1扇区中存放着MBR(主引导记录),这里就包括了主分区和扩展 分区信息,当机器启动后,将引导交给硬盘时,就首先执行MBR上的程序,然后找到活动分区,启动操作系统。象LILO、OS Loader等多引导工具都是通过改写MBR来实现的。因此,当大家在安装完Linux后,将LILO写在MBR上,再安装Windows 9x,那么MBR就改写成为了Windows 9x的!




阅读(1607) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~