Linux中磁盘与文件系统管理

本文详细解读了磁盘的物理结构、数据结构,介绍IDE、SATA、SCSI等接口类型,重点讲解Linux中文件系统类型(如XFS、Swap、EXT4等),涉及磁盘分区操作、fdisk工具使用、文件系统创建与挂载,以及管理磁盘和分区的关键步骤。

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

一、磁盘结构

1.1硬盘的物理结构

在这里插入图片描述

  • 盘片: 硬盘有多个盘片,每盘片2面
  • 磁头: 每面一个磁头

1.2磁盘的数据结构

  • 扇区:盘片被分为多个扇形区域,每个扇区存放512字节的数据,硬盘的最小存储单位
  • 磁道:同一盘片不同半径的同心圆, 是由磁头在盘片表面划出的圆形轨迹,方便数据存储
  • 柱面:不同盘片相同半径构成的圆柱面,由同一半径圆的多个磁道组成

1.3磁盘的存储容量

  • 硬盘存储容量 = 磁头数 × 磁道(柱面)数 × 每道扇区数 × 每扇区字节数 (512字节)
  • 可以用柱面/磁头扇区来唯一定位磁盘上每一个区域

1.4磁盘接口类型

类型说明
IDE并口数据线连接主板与硬盘,抗干扰性太差,且排线占用空间较大,不利电脑内部散热,已逐渐被SATA所取代
SATA抗干扰性强,支持热插拔等功能,速度快,纠错能力强
SCSI小型机系统接口,SCSI硬盘广为工作站级个人电脑以及服务器所使用,资料传输时CPU占用率较低,转速快,支持热插拔等
SAS是新一代的SCSI技术,和SATA硬盘相同,都是采取序列式技术以获得更高的传输速度,可达到6Gb/s
光纤通道为提高多硬盘存储系统的速度和灵活性才开发的,它的出现大大提高了多硬盘系统的通信速度。特性:热插拔性、高速带宽、远程连接、连接设备数量大

1.5查看分区信息
在这里插入图片描述

1.6磁盘分区表示

主引导记录MBR:Master Boot Record

  • MBR位于硬盘第一个物理扇区处 , MBR中包含硬盘的主引导程序和硬盘分区表
  • MBR总共512字节,前446字节是主引导记录,分区表保存在MBR扇区中的第447-512字节中。
  • 分区表有4个分区记录区,每个分区记录区占16字节

Linux中将硬盘、分区等设备均表示为文件

在这里插入图片描述
表示:/dev/hda5

  • /dev/:硬件设备文件所在的目录
  • hd:表示IDE设备(sd表示scsi设备)
  • a:硬盘的顺序号,表示的第几块硬盘,以a、b、c…表示
  • 5:分区的顺序号,表示第一块硬盘接口的第五个分区

主分区从1-4,第一个逻辑分区始终从5开始
在这里插入图片描述

  • 硬盘中的主分区数目只有4个
  • 主分区和扩展分区的序号限制在1 ~4
  • 扩展分区再分为逻辑分区
  • 逻辑分区的序号将始终从5开始
  • 主分区也叫引导分区,一块硬盘,最多可以同时创建4个主分区,当创建完四个主分区后,就无法再创建扩展分区和逻辑分区了。
  • 扩展分区是一个概念,除了主分区外,剩余的磁盘空间就是扩展分区。因此,如果当一块硬盘将所有容量都分给了主分区,那就没有扩展分区了。所以,仅当主分区容量小于硬盘容量时,剩下的空间就属于扩展分区,而扩展分区可以进行扩展切割分为多个逻辑分区。

以我们大多数人的电脑为例,都是分了一个C盘主分区,然后其他的D盘、E盘和F盘等都属于逻辑分区。D盘、E盘、F盘等除了主分区之外的磁盘组合,则就属于一个扩展分区。

在这里插入图片描述

二、Linux中使用的文件系统类型

文件系统类型决定了向分区中存放、读取数据的方式和效率。

2.1 XFS文件系统

  • 存放文件和目录数据的分区
  • 高性能的日志型文件系统,特别擅长处理大文件,可支持上百万TB的存储空间
  • CentOS系统中默认是用的文件系统

2.2 Swap交换文件系统

(相当于Windows系统下的虚拟内存)

  • 为Linux系统建立交换分区
  • 一般设置为物理内存的1.5~2倍

2.3 EXT4 (第四代扩展文件系统)

  • 相当于存放目录和数据的分区
  • 典型的日志型文件系统

2.4 Linux支持的其他文件系统类型

  • EXT4(centos6)
  • FAT32(windows)
  • NTFS(windows)
  • LVM

三、管理磁盘及分区

3.1 查看或管理磁盘分区——fdisk

基本格式:
查看磁盘分区fdisk -l [磁盘设备]
[root@localhost ~]# fdisk -l /dev/sda

管理磁盘分区fdisk [磁盘设备]
[root@localhost ~]# fdisk /dev/sda

3.2七个字段

在这里插入图片描述

Device: 分区的设备文件名称;
Boot: 是否是引导分区,是的话则有“ * ”的标志;
Start: 该分区在硬盘中的起始位置(柱面数);
End: 该分区在硬盘中的结束位置(柱面数);
Blocks: 分区的大小,以Block(块)为单位,默认的块大小为1024字节
ID: 分区对应的系统ID号
system: 分区类型

3.3管理磁盘分区——fdisk /dev/sdb

交互操作指令指令
m 获取帮助菜单
p 查看分区情况
n 新建分区
d 删除分区
t 变更分区的类型
w 保存分区操作并退出
q 不保存分区操作并退出
示例:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
创建完成后重启可以用shell命令init 6或者不重启不重启的情况下识别磁盘:
echo "- - - "> /sys/class/scsi_host/host0/scan
echo "- - - "> /sys/class/scsi_host/host1/scan
echo "- - - "> /sys/class/scsi_host/host2/scan
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
请添加图片描述

n 创建分区
p 主分区, e 扩展分区, l 逻辑分区
设置分区:1 (主分区范围1-4,逻辑分区从 5开始)
设置柱面序列:直接回车接收默认值
设置分区大小: +20G (此处自定义输入,若直接回车则是接收默认值表示所有空间)
w (保存分区并退出)

d #删除一个分区
l #显示己知的分区类型,其中82为Linux swap分区,83为Linux分区
m #最示帮助菜单I
n #增加一个新的分区
p #显示磁盘当前的分区表
q #退出fdisk程序,不保存任何修改
s #创建一个新的空白的sun磁盘标签
t #改变一个分区的系统号码
u #改变显示记录单位
v #对磁盘分区表进行验证
w #保存修改结果并退出fdisk程序复制
a #设置可引导标记
b #修改bsd的磁盘标签
c #设置DOS操作系统兼容标记
o #创建一个新的空白的Dos分区表
x #特殊功能,不建议初学者使用

3.4显示文件系统磁盘使用情况统计——df

格式:df [选项] [文件]
常用选项:

  • -T:显示文件系统类型。
  • -h:以容易理解的格式印出文件系统大小,例如136KB、24MB、21GB。
  • -l:计算所有的文件大小,对硬链接文件则计算多次。
  • -s:对每个Names参数只给出占用的数据块总数。

示例:
在这里插入图片描述

3.5树形查看磁盘分区——lsblk
示例:
在这里插入图片描述

3.5查看磁盘的UUID——blkid

示例:
在这里插入图片描述

四、创建文件系统

4.1Make Filesystem,创建文件系统(格式化)——mkfs命令

要用绝对路径

格式:

mkfs -t 文件系统类型 分区设备

mkfs.xfs 分区设备

在这里插入图片描述

4.2创建交换文件系统——mkswap

创建交换分区之前,目标分区应先通过 fdisk 工具将分区类型号设置为 82
fdisk /dev/sdb
—>t
—>5(分区号)
—>L查看一下所有代码,82是swap类型
—>82(设置类型为swap)
mkswap /dev/sdb5
swapon /dev/sdb5 #启用新增加的交换分区
swapoff /dev/sdb5 #停用指定的交换分区
swapon -s #查看每个分区的swap状态
free -m #查看总的swap状态信息
在这里插入图片描述
在这里插入图片描述

五、挂载、卸载文件系统

5.1​挂载文件系统、ISO镜像到指定文件夹

mount [ -t类型] 存储设备 挂载点目录
#用于指定文件系统类型,通常可以省略,由系统自动识别
示例:

[root@localhost /]# mount /dev/sr0 /mnt/

mount -o loop iso镜像文件 挂载点目录
#挂载参数列表,以英文逗号分隔:如用来描述特殊设备,用loop指定
loop:用来把一个文件当成硬盘分区挂接上系统

在这里插入图片描述
1.最好挂空文件,不然文件可能丢失
2.如果挂载目录下,你不能解挂载的
3.不能一个目录挂载多个设备

5.2卸载已挂载的文件系统

卸载前提:挂载的设备或目录没有被正在使用中,要先退出挂载目录
加入参数 -lf ,表示强制卸载
格式:
umount 存储设备位置

umount 挂载点目录

5.3永久挂载

系统中的**/etc/fstab** 文件可以视为mount命令的配置文件,其中存储了文件系统的静态挂载数据。Linux在每次开机时,会自动读取这个文件的内容,自动挂载所指定的文件系统,默认的fstab文件中包括了根分区、/boot分区、交换分区及proc、tmpfs等伪文件系统的挂载配置。

在**/etc/fstab**文件中,每一行记录对应一个分区或设备的挂载配置信息,这些信息从左到右包括六个字段(使用空格或制表符分隔),各部分的含义如下所述。

 /dev/sdb1   /mailbox    xfs  defaults    0 0
  • 第1字段:设备名或设备卷标名
  • 第2字段:文件系统的挂载点目录的位置
  • 第3字段:文件系统类型,如xfs、swap等
  • 第4字段:挂载参数,即mount命令"-o"选项后可使用的参数。例如,defaults、rw、ro、noexec分别表示默认参数、可写、只读、禁用执行
  • 程序 第5字段:表示文件系统是否需要dump备份(dump是一个备份工具)。一般设为1时表示需要,设为o时将被dump忽略
  • 第6字段:该数字决定在系统启动时进行磁盘检查的顺序。0表示不进行检查,1表示优先检查,2表示其次检查。根分区应设为1,其他分区设为2
    在这里插入图片描述
    在这里插入图片描述
    利用uuid或者设备名或设备卷标名都可以挂载
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

搞什么滚去学习

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值