linux学习记录01——磁盘划分

本文详细介绍了Linux系统中磁盘设备文件名规则,包括SATA、USB、打印机等设备的对应文件名,以及MBR和GPT分区表的区别与实践案例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

参考实践:https://blog.youkuaiyun.com/LXWalaz1s1s/article/details/115841831

磁盘设备在linux中文件名

在Linux系统中,每个设备都被当成一个文件来对待” 举例来说,SATA接口的硬盘的文件名称即为/dev/sd[a-d],其中, 括号内的字母为a-d当中的任意一个,亦即有/dev/sda, /dev/sdb, /dev/sdc, 及 /dev/sdd这四个文件的意思。

另外先提出来强调一下,在Linux这个系统当中,几乎所有的硬件设备文件都在/dev这个目录内, 所以你会看到/dev/sda, /dev/sr0等等的文件名。

那么打印机与软盘呢?分别是/dev/lp0, /dev/fd0!下面列出几个常见的设备与其在Linux当中的文件名:

设备设备在Linux内的文件名
SCSI/SATA/USB硬盘机/dev/sd[a-p]
USB闪存盘/dev/sd[a-p] (与SATA相同)
VirtI/O界面/dev/vd[a-p] (用于虚拟机内)
软盘机/dev/fd[0-7]
打印机/dev/lp[0-2] (25针打印机) /dev/usb/lp[0-15] (USB 接口)
鼠标/dev/input/mouse[0-15] (通用) /dev/psaux (PS/2界面) /dev/mouse (当前鼠标)
CDROM/DVDROM/dev/scd[0-1] (通用) /dev/sr[0-1] (通用,CentOS 较常见) /dev/cdrom (当前 CDROM)
磁带机/dev/ht0 (IDE 界面) /dev/st0 (SATA/SCSI界面) /dev/tape (当前磁带)
IDE硬盘机/dev/hd[a-d] (旧式系统才有)

时至今日,由于 IDE 界面的磁盘机几乎已经被淘汰,太少见了!因此现在连 IDE 界面的磁盘文件名也都被仿真成 /dev/sd[a-p] 了!此外, 如果你的机器使用的是跟网际网络供应商 (ISP) 申请使用的云端机器,这时可能会得到的是虚拟机。为了加速,虚拟机内的磁盘是使用仿真器产生, 该仿真器产生的磁盘文件名为 /dev/vd[a-p] 系列的文件名!要注意!要注意!

 提问:如果你的PC上面有两个SATA磁盘以及一个USB磁盘,而主板上面有六个SATA的插槽。这两个SATA磁盘分别安插在主板上的SATA1, SATA5插槽上, 请问这三个磁盘在Linux中的设备文件名为何?

        答:由于根据Linux核心侦测到磁盘的顺序来决定设备文件名,并非与实际插槽代号有关,因此设备的文件名如下:

  1. SATA1插槽上的文件名:/dev/sda
  2. SATA5插槽上的文件名:/dev/sdb
  3. USB磁盘(开机完成后才被系统捉到):/dev/sdc

MSDOS(MBR) 与 GPT 磁盘分区表(partition table)

分区表其实目前有两种格式,MBR和GPT  

 MBR(Master Boot Record)分区格式

早期磁盘第一个扇区(521bytes)里面包含重要的信息MBR(Master Boot Record),其中446 bytes,安装开机管理程序的地方(这里需要去理解开机流程中的 BIOS 与 UEFI 开机检测程序);剩下的64bytes记录硬盘分区的数据,即分区表,这里的位置只够记录下四个分区。
  以下的四个分区我们并不能各个区分是主分区还是扩展分区,两种都有可能;

P1:/dev/sda1
P2:/dev/sda2
P3:/dev/sda3
P4:/dev/sda4
  既然第一个扇区的分区表只能记录四个分区的数据,那自然就想到用额外的扇区来 记录分区信息,这就是扩展分区的由来。

  例题,看如下分区名称,为啥缺少了 /dev/sda3、 /dev/sda4呢,原因就是前面四个号都是预留给主分区和扩展分区的,逻辑分区只能从序号5开始;
P1:/dev/sda1 (主分区)
P2:/dev/sda2(扩展分区)
P3:/dev/sda5(逻辑分区)
P4:/dev/sda6(逻辑分区)
P5:/dev/sda7(逻辑分区)

  主分区、扩展分区、逻辑分区的关系及区分如下;

主分区( primary)P
  1)系统中必须要存在的分区,系统盘选择主分区安装

  2)数字编号只能是1-4.sda1、sda2、sda3、sda4

  3)主分区最多四个,最少一个。

  4)能被单独格式化

扩展分区( extend)E
  1)相当于一个独立的小磁盘。独立的分区表,不能独立存在。

  2)有独立的分区表。

  3)不能独立存在,即不能直接存放数据。必须结合逻辑分区,在扩展分区上建立逻辑分区才能存放数据

  4)占用主分区的编号,最少为0个,最多为1个。(主分区+扩展分区之和最多4个)

  6)不能被格式化

逻辑分区(1ogic)L
  1)数字编号只能是从5开始

  2)存放于扩展分区之上

  3)存放任意普通数据

  4)能被单独格式化

  5)两个独立的逻辑分区可以支持合并成一个新的逻辑分区

       6)一个扩展分区中可以有多个逻辑分区

磁盘分区方式
  1)1~4个主分区

  2)扩展分区至多能有一个,且 2 ≤ 扩展分区+主分区≤ 4

例题:学习以上内容后,聊聊分区策略,举例如下;博主有一块硬盘,如果我想要得到6个分区,用MBR分区格式该怎么分配;

        答:首先主分区,扩展分区只能有4个,不够呀,那就需要用到扩展分区,可以分配为,P+P+P+E(E内包含3个逻辑分区L)即,P+P+P+E(L+L+L);当然也可以P+E(L+L+L+L+L) ,可以根据个人想法来实现即可

   MBR分区的原理清晰后,其不足的地方也暴露的无疑,因为分区表的容量16bytes有限,始终存在以下不足:操作系统无法抓取2.2T以上的磁盘容量,个人PC可能目前来说够,但是服务器已经无法满足了;MBR仅有一块分区表,无法实现高可用,一旦被损坏,很难再救援恢复;MBR内存放的开机管理程序也只有446bytes,也是无法容纳更多的开机程序代码的;

GPT(GUID Partition Table)分区格式 

        基本上GPT弥补了MBR的不足,但是GPT和MBR只是分区格式方法不同。

        GPT将磁盘划分为一块块的逻辑区块地址(Logical Block Address,简称LBA) 来处理,每个LBA预设计为512bytes,即一个扇区的大小;同时改进MBR之用一块扇区来标识分区表的弊端,GPT使用了前后各34个LBA来标识分区表信息(最后的34各区可以理解为备份,达到高可用),如图6.3;
LBA的标识是从0开始的,LBA0-34共35块,这里分别阐述下其含义;

LBA0 :包含两部分,一部分是类似MBR的446bytes,存储开机管理程序,第二部分则是存储一个特殊的标记,标识该磁盘为GPT格式,而看不懂GPT分区的程序则无法操作该磁盘,起到保护作用,放心,目前基本的管理程序都能识别GPT格式,所以该LBA块实际上与分区信息并无直接关联,这就是为啥不算入34LBA的原因;
LBA1 :GPT的表头,记录分区本身的位置与大小,同时记录分区在备份中最后34个LBA中的位置,方便恢复;
LBA2-34:共32块LBA,每块LBA记录4笔分区表,共支持4*32=128笔分区(即,GPT可以做128个分区,他的分区取消的扩展分区的概念,只剩下primary和logic;而每个LBA默认为512bytes,则每笔记录用到512/4=128bytes,每笔记录拿出64bytes来记录开始、结束的扇区号码,因此对一个单一分区槽而言,支持的最大容量为

两种表格分区方式的具体实践

在主机上将一个磁盘分析6个分区,案例步骤参考:https://blog.youkuaiyun.com/LXWalaz1s1s/article/details/115841831

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值