Linux系统磁盘管理

1、磁盘相关名词翻译:

  disk    磁盘

  head     磁头

  sector      扇区

  track        磁道

  cylinder   柱面  

  units        单元块

  block       数据块

  inode      索引节点

2、磁盘内部相关名词知识:

  一般来说,一块磁盘有1个到数个盘片不等,其中每个盘片的有效面对应一个读写磁头,从上往下从0开始依次编号,不同的磁盘盘面在逻辑上被划分为磁道、柱面、以及扇区。

  在磁盘不工作的时候,磁头停靠在靠近主轴接触盘片的表面,一个不存放任何数据的特殊区域,即内圈线速度最小的地方,称为启停区,启停区以外就是数据区。

  在磁盘的最外圈,离主轴最远的磁道成为"0"磁道,磁盘数据的存放就是从最外圈"0"磁道开始的。在磁盘刚开始工作的时候,磁道检测器会将磁头从内圈定位到外圈的"0"磁道。

  系统的引导程序在 0 柱面 0 磁道 1扇区的前446Bytes

3、磁盘的盘面

  磁盘的每一个盘片都有两个盘面,即上、下盘面,一般来说,每个盘面都可以存储数据,成为有效盘面,也有极个别的磁盘盘面数为单数。每一个这样的有效盘面都有一个盘面号,按顺序从上至下从“0”开始依次编号,盘面号又叫磁头号,盘面的个数等于磁头的个数。磁盘的盘片组在2-14片不等。

4、磁盘的磁道

  磁盘在格式化时被划分成许多同心圆,这些同心圆的轨迹叫做磁道(Track),磁道由盘面从外向内一次从0开始顺序编号。

  磁盘的每一个盘面一般有 300~1024 个磁道,在同样转速下,外圈在同样时间段里,划过的圆弧长度比内圈划过的圆弧长度大(但是读取到的数据是一样的),这样的每段圆弧叫做一个扇区,扇区从“1”开始编号。一个扇区512Bytes

5、描述Linux系统从开机到登陆界面的启动过程:

(1)BIOS加电自检:主要功能是对CPU、主板、内存等检查
(2)MBR引导
(3)grub2引导菜单:用于计算机寻找操作系统内核并加载到内存的智能软件
(4)加载内核kernel
(5)启动systemd进程。 centos6 -->init
(6)读取inittab文件,执行rc.sysinit文件
(7)执行/etc/rc.d/rc.local(开机自启文件)
(8)启动mingetty,进入系统登陆界面

 

6、主引导扇区在整个硬盘里是唯一的,也就是一个硬盘只能有一个。

7、磁盘分区的重点:

  (1)磁盘分区的是指就是针对 0 磁道 1扇区的前446字节后面接下来的64bytes的分区进行设置,分区工具有fdisk(适合小于2T的磁盘分区),parted(适合大于2T的磁盘分区,可以对小于2T的磁盘分区)。

  (2)一块磁盘的分区表仅有64bytes大小,仅支持四个分区表信息(主分区+扩展分区)

  (3)磁盘分区的最小单位为柱面(cylinder)

  (4)扩展分区不能直接使用,还需要在扩展分区的基础上创建逻辑分区才行。

  (5)扩展分区有自己的分区表,因此,扩展分区下面的逻辑分区可以有多个。

8、主分区Primary

  一般来说,主分区是磁盘上必须存在的分区,一般为磁盘的第一个分区,可以在主分区上安装操作系统。

  问:一个磁盘为什么最多只能有四个主分区?

  因为每个主分区都会在主引导扇区中生成分区表DPT,每个分区表需要占用大小16Bytes,硬盘在设计时,只给分区表留下了64bytes的存储空间,所以只能有四个主分区。

  当有多个分区且主分区(primary)不够用时,需要使用扩展分区(extended)来实现。

  1p+1e、2p+1e、3p+1e  总之主分区的个数不能超过四个。

9、扩展分区Extended

  扩展分区上不能存放数据,只能在扩展分区上建立逻辑分区。扩展分区没有MBR,只有扩展分区表,而且扩展分区表没有64bytes限制,可以在扩展分区上划分多个逻辑分区。

  一块硬盘只能存在一个扩展分区,并且扩展分区不能直接存放数据。扩展分区就像是一个虚拟出来的硬盘一样。

10、逻辑分区logical

  不能在磁盘中单独直接划分逻辑分区(fdisk),逻辑分区必须存在扩展分区内,在扩展分区内可以划分多个逻辑分区,逻辑分区的编号从数字5开始。这个扩展分区内可以划分多个逻辑分区(IDE磁盘大概编号可是5-63),SATA(编号5-15)。

11、磁盘分区注意事项:

  一块硬盘的分区方式只能为如下组合之一:

  (1)任意多个主分区,但要求 1<=主分区数量<=4

  (2)扩展分区可以和主分区组合,但要求 2<=(主分区+扩展分区)数量<=4

    例如:3个主分区+1个扩展分区或2个主分区+1个扩展分区或1个主分区+1个扩展翻去

  (3)如果要分成四个磁盘分区的话,那么最多可以:

    P + P + P + P

    P + P + P + E

    其中 P 为 Primary ,E 为 Extended

12、fdisk 对磁盘做分区。

  (1)新加一块硬盘,10G

  

  (2)对 /dev/sdb 做分区。fdisk  /dev/sdb

  

    n 为添加一个新的分区

  (3)添加第一个主分区,并给主分区设置大小。

  

 

   p -- 主分区,e -- 扩展分区,选择主分区,目前有四个空闲分区,所以编号选择1-4,默认为1,扇区的默认大小为范围最小值,给主分区一个 100M 的大小。

  (4)打印查看 -- p

  

 

   (5)再添加一个扩展分区

  

 

   将所有剩余空间都分给扩展分区,因为扩展分区上可以划分多个逻辑分区。

  (6)再次打印查看 --p

  

  (7)在扩展分区上添加逻辑分区,因为所有空间都给了扩展分区,再添加主分区时会显示剩余不足。

  

 

   

 

   因为分区编号1-4是给主分区和扩展分区使用的,因此,逻辑分区的编号从5开始。

  (8)打印查看 -- p

  

  (9)保存才能生效 -- w

  

 

  (10)查看

   

 

   因为当分区划分完后,系统可能不能够及时察觉分区表的更新,因此需要告诉内核分区表发生变化。

  partprobe /dev/sdb  ---- 了解即可,一般情况下是可以及时更新的

13、parted做分区(GNU磁盘分区工具,适合大于2T的分区工具)

  parted 是一个磁盘分区管理工具,比fdisk更灵活,功能也更丰富,同时支持GUID分区表(GUID Partition Table),同时支持交互模式和非交互模式,除了能够进行分区的田间,删除等常见操作外,还可以移动分区,制作文件系统,调整文件系统大小,复制文件系统。

  (1)对/dev/sdb 做分区。-- parted /dev/sdb

    

      rm  分区编号 -- 删除一个分区。

  (2)做分区前需要先把整个磁盘改变成 gpt 的格式,这样才能做分区。

  

 

   (3)打印查看 -- p

  

 

   (4)创建分区。

  

  mkpart 文件系统类型 起始 结束

  

 

   (5)创建逻辑分区,从501给到1000

  

 

   (6)不用保存直接退出

  

 

   (7)格式化 /dev/sdb 第二块盘

    mkfs -t ext4 /dev/sdb2

  

   

 

   

  

  

 

posted @ 2019-10-10 19:23  Lillard-Time  阅读(211)  评论(0编辑  收藏  举报