一、磁盘的组成
我们在计算机概论谈过磁盘的组成主要有磁盘、机械手臂、磁盘读取头与主轴马达所组成, 而数据的写入其实是在盘片上面。盘片上面又可细分出扇区(Sector
)与柱面(Cylinder)两种单位, 其中扇区每个为512bytes
那么大。假设磁盘只有一个盘片,那么盘片有点像底下这样:
那么是否每个扇区都一样重要呢?其实整块磁盘的第一个扇区特别的重要
,因为他记录了整块磁盘的重要信息! 磁盘的第一个扇区主要记录了两个重要的信息,分别是:
主要启动记录区/主引导分区(Master Boot Record,
MBR
):可以安装启动管理程序的地方,有446 bytes
分割(区)表(partition table):记录整颗硬盘分割的状态,有
64 bytes
MBR是很重要的,因为当系统在启动的时候会主动去读取这个区块的内容,这样系统才会知道你的程序放在哪里且该如何进行启动。 如果你要安装多重启动的系统,MBR这个区块的管理就非常非常的重要了! ^_^
那么分区表又是啥?其实你刚刚拿到的整块硬盘就像一根原木,你必须要在这根原木上面切割出你想要的区段, 这个区段才能够再制作成为你想要的家具!如果没有进行切割,那么原木就不能被有效的使用。 同样的道理,你必须要针对你的硬盘进行分割,这样硬盘才可以被你使用的!
二、磁盘分区表(partition table)
但是硬盘总不能真的拿锯子来切切割割吧?那硬盘还真的是会坏掉去!那怎办?在前一小节的图示中, 我们有看到『开始与结束磁柱』吧?那是文件系统的最小单位,也就是分割槽的最小单位啦!没有错, 我们就是利用参考对照磁柱号码的方式来处理啦! 在分割表所在的64 bytes
容量中,总共分为四组记录区,每组记录区记录了该区段的启始与结束的磁柱号码。 若将硬盘以长条形来看,然后将磁柱以直条图来看,那么那64 bytes的记录区段有点像底下的图示:
假设上面的硬盘装置档名为/dev/hda时,那么这四个分割槽在Linux系统中的装置档名如下所示, 重点在於档名后面会再接一个数字,这个数字与该分割槽所在的位置有关喔!
P1:/dev/hda1
P2:/dev/hda2
P3:/dev/hda3
P4:/dev/hda4
上图中我们假设硬盘只有400个磁柱,共分割成为四个分割槽,第四个分割槽所在为第301到400号磁柱的范围。 当你的操作系统为Windows时,那么第一到第四个分割槽的代号应该就是C, D, E, F。当你有数据要写入F槽时, 你的数据会被写入这颗磁碟的301~400号磁柱之间的意思。
既然分割表只有记录四组数据的空间,那么是否代表我一颗硬盘最多只能分割出四个分割槽?当然不是啦!有经验的朋友都知道, 你可以将一颗硬盘分割成十个以上的分割槽的!那又是如何达到的呢?在Windows/Linux系统中, 我们是透过刚刚谈到的扩展分配(Extended)的方式来处理的啦!扩展分配的想法是: 既然第一个磁区所在的分割表只能记录四笔数据, 那我可否利用额外的磁区来记录更多的分割资讯?实际上图示有点像底下这样:
在上图当中,我们知道硬盘的四个分割记录区仅使用到两个,P1为主要分割,而P2则为扩展分配。请注意, 扩展分配的目的是使用额外的磁区来记录分割资讯,扩展分配本身并不能被拿来格式化。 然后我们可以透过扩展分配所指向的那个区块继续作分割的记录。
如上图右下方那个区块有继续分割出五个分割槽, 这五个由扩展分配继续切出来的分割槽,就被称为逻辑分割槽(logical partition)。 同时注意一下,由於逻辑分割槽是由扩展分配继续分割出来的,所以他可以使用的磁柱范围就是扩展分配所配置的范围喔! 也就是图中的101~400啦!
同样的,上述的分割槽在Linux系统中的装置档名分别如下:
P1:/dev/hda1
P2:/dev/hda2
L1:/dev/hda5
L2:/dev/hda6
L3:/dev/hda7
L4:/dev/hda8
L5:/dev/hda9
仔细看看,怎么装置档名没有/dev/hda3与/dev/hda4
呢?因为前面四个号
都是保留给Primary
或Extended
用的嘛! 所以逻辑分割槽的装置名称号码就由5号开始了!这是个很重要的特性,不能忘记喔!
主要分割、扩展分配与逻辑分割的特性我们作个简单的定义罗:
主分区与扩展分区最多可以有四个(
硬盘的限制
64/16 = 4)扩展分区最多只能有一个(操作系统的限制)
逻辑分割是由扩展分配持续切割出来的分区;
能够被格式化后,作为数据存取的分区为主分区与逻辑分区。扩展分区无法格式化;
逻辑分区的数量依操作系统而不同,在Linux系统中,IDE硬盘最多有59个逻辑分割(5号到63号),SATA硬盘则有11个逻辑分割(5号到15号)。
三、Linux系统分区
利于查找与写入
格式化:最重要的目的是为了写入文件系统
挂载:把盘符和分区连接在一起的过程。
挂载点(类似于windows盘符,Linux中是某个目录。Linux中没有盘符概念,是挂载
点)
将根分区/和/boot在物理结构上独立开,逻辑上/boot还在根分区下。这样它们数据写入各自不会受到影响
四、X window与文本模式的切换
我们前面一直谈到的是X Window的窗口管理员环境,那么在这里面有没有纯文本接口的环境啊? 当然有啊!但是,要怎么切换X Window与文本模式呢?注意喔,通常我们也称文本模式为终端机接口, terminal 或 console喔!Linux默认的情况下会提供六个Terminal
来让使用者登陆, 切换的方式为使用:[Ctrl] + [Alt] + [F1]~[F6]
的组合按钮。
那这六个终端接口如何命名呢,系统会将[F1] ~ [F6]命名为tty1 ~ tty6的操作接口环境。 也就是说,当你按下[crtl] + [Alt] + [F1]这三个组合按钮时 (按着[ctrl]与[Alt]不放,再按下[F1]功能键), 就会进入到tty1的terminal界面中了。同样的[F2]就是tty2啰!那么如何回到刚刚的X窗口接口呢?很简单啊!按下[Ctrl] + [Alt] + [F7]就可以了!我们整理一下登陆的环境如下:
[Ctrl] + [Alt] + [F1] ~ [F6] :文字接口登陆 tty1 ~ tty6 终端机;
[Ctrl] + [Alt]+ [F7] :图形接口壁纸。
在Linux默认的登陆模式中,主要分为两种,一种是仅有纯文本
接口(所谓的运行等级run level 3
)的登陆环境,在这种环境中你可以有tty1~tty6的终端界面,但是并没有图形窗口接口的环境喔。 另一种则是图形接口的登录环境
(所谓的运行等级run level 5),这也是我们第四章安装妥当后的默认环境! 在这个环境中你就具有tty1~tty7了!其中的tty7就是启动完成后的默认等待登陆的图形环境!
如果你是以纯文本环境启动Linux的,默认的tty7是没有东西的!万一如此的话,那要怎么启动X窗口画面呢? 你可以在tty1~tty6的任意一个终端接口使用你的账号登陆后(登录的方法下一小节会介绍), 然后下达如下的命令即可:
[vbird@www ~]$ startx
在Linux
中,默认root
的提示符为#
,而一般用户身份的提示符为$
。
man
是manual
(操作说明)的简写