25、磁盘管理和文件系统
磁盘管理和文件系统
规划硬盘分区、创建文件系统、挂载、卸载文件系统是重点
文章目录
1、磁盘结构
最新固态硬盘 MR
MBR与磁盘分区
2、MBR磁盘分区
2.1为什么分区·
优化I/O性能
实现磁盘空间配额限制
提高修复速度
隔离系统和程序
安装多个Os
采用不同文件系统
常见的硬盘可以划分为主分区、扩展分区和逻辑分区,通常情况下主分区只有四个,而
扩展分区可以看成是一个特殊的主分区类型,在扩展分区中可以建立逻辑分区。主分区一般
用来安装操作系统,扩展分区则多用来存储文件数据
MBR:…Master Boot Record,1982年,使用32位表示扇区数,分区不超过2T
扩展分区之后 建立逻辑分区才能使用
设备文件所在目录、设备文件、顺序、分区顺序号
磁盘文件 sda1、 sda2、 sda3
只要是5之后的都是逻辑分区
3、文件系统类型 fdisk
3.1 Linux 中使用的文件系统类型
磁盘分区的表示
Linux中将硬盘、分区等设备均表示为文件
/ dev/ sdb5
sd 表示 scsI设备
hd表示IDE设备
硬盘的顺序号、以字母a、 b、 …表示
分区的顺序号,以数字1、2、…示。
主分区从1-4,第一个逻辑分区始终从5开始。
主启动记录(MBR)磁盘分[区
MBR是主引导记录,位于硬盘第一个物理扇区处,MBR中包含硬盘的主引导程序和硬盘分区表。MBR总共512字节,前446字节是主引导记录,分区表保存在MBR扇区中的第447-510字节中。分区表有4个分区记录区,每个分区记录区占16字节
主启动记录(MBR)磁盘分区支持最大卷为2.2TB,每个磁盘最多有4个主分区,或3个主分区、1个扩展分区和在扩展分区里面分多个逻辑分区)。
XFS:是一种高性能的日志文件系统,特别擅长于处理大文件,可支持上百万T字节的存储空间。由于xFS
文件系统开启日志功能,所以即便发生宕机也不怕数据遭到破坏,这种文件系统可以根据日志记录在短时间内进行数据恢复
SWAP:交换文件系统,用于为Linux系统建立交换分区。交换分区的作用相当于虚拟内存,能够在一定程度上缓解物理内存不足的问题。一般建议将交换分区的大小设置为物理内存的1.5~2_倍。例如,对于拥有512MB物理内存的主机,其交换分区的大小建议设置为1024NB。如果服务器的物理内存足够大(如8GB 以E),也可以不设置交换分区。交换分区不用于直接存储用户的文件和目录等数据。
EXT4:第4代扩展文件系统。用于存放文件和目录数据的分区,是 Linux系统中默认使用的文件系统(Centos7 默认使用XFS) .
EXT4是典型的目志型文件系统,其特点是保存有磁盘存取记录的目志数据,便于恢复,在存取性能和稳定性万面更加出色。
Linux系统还广泛支持其他各种类型的文件系统,
如JFS、FATl6、FAT32、NTFS 等文件系统多用于商业版本的UNIX操作系统中。具有出色的性能表现。由于NTFS是微软公司的专有文件系统。Linux系统默认只支持从NTFS 分区读取文件,如果需要向NTFS分区中写入文件数据。需要结合其他辅助软件(如NTF3-3G)
sdb scsi
linux 中使用的文件系统类型 最常用
m ,n,p,q,t,w ,l这几个是常用的
2.fdisk -l查看硬盘的整体情况和分区情况
Device:分区的设备文件名称。
Boot:是否是引导分区。若是,则有“★“标识。
start:该分区在硬盘中的起始位置(柱面数)
End:该分区在硬盘中的结束位置(柱面数)
Blocks分区的大小,以 Blocks(块)为单位,欧认的块大小为 1024字节。
Id:分区对应的系统ID号。83 表示 Linux 中的XFS分区或EXT4分区、8e表示 LVM逻辑卷。
LVM是Linux操作系统中对磁盘分区进行管理的一种逻辑机制,与之相关的知识将在后面的章节介绍。
System:分区类型。识别到新的硬盘设备后,就可以在该硬盘中建立新的分区了。在 Linux
操作系统中,分区和格式化的过程是相对独立的,关于格式化分区的操作将在后续内容中讲解。
3.交互模式中的常用指令fdisk指令说明
Command (m for help): m 输入m指令
a toggle a bootable flag 设置可引导标记
b edit bsd disklabel #修改bsd的磁盘标经
c toggle the dos compatibility flag 设置DOS操作系统兼容标记
d delete a partition 删除一个分区
i list known partition types 是示已知的分I区类型。其中82为Linux
swap分区.83为Linux分区
m print this menu 显示帮助菜单
n add a new partition 增加一个新的分区
p print the partition table 显示磁盘当前的分区表
o create a new empty DOs partition table .创建一个新的空白的DOs分区表
q quit without saving change #退出fdiSk程序,不保存任何修改
S create a new eampty Sun disklabel #创建一个新的空自的Sun磁盘标签
t change a partition’s system id 改变一个分区的系统号码
u change display/entry units 改变显示记录单位
v erify the partition table 对磁盘分区表进行验证
w write table to disk and exit 保存修改结果并退出fdisk程序
x extra functionality (experts only) 特殊功能,不建议初学者使用
4.首先建立第一个主分区(/dew/sdb1),容量指定为20GB。
具体操作如下。
Command 《m for help) : n //开始创建第1个分区
Partition type:
P primary (0 primary.0 extended,4 free)eextendedSelect (defaultp): p //选择创建的为主分l区
Partition number (i-4, default l): 1 //设置第一个主分区的编号为
1 First sector (2048-209715199, default 2048): //直接按Enter键接受默认值Usingdefault value 2048
Last sector,+sectors or +size (K,M, G)《2048-209715199,default 209715199):+20GPartition 1 of type Linux and of size 20GiB is se
有*号的为引导分区,引导系统启动的
Blocks分区大小默认大小为512000
8e为逻辑分区
swap为交换分区
fdisk /dev/sda1
4、实例操作 添加硬盘
fdisk –l 看不到硬盘 需重启
echo “- - -” > /sys/class/scsi_host/host2/scan 重启 > 输出的含义 重要 扫描功能
fdisk –l 可看到硬盘 节省时间
科普 穿墙技术
ls /dev/sd* 查看所有磁盘设备 精确可用管道符号 grep
fdisk /dev/sdb 分区
m 帮助
l 查看 常用 82 交换分区 U盘8e
p 查看磁盘分区 查看当前
n 进行分区 默认1 主分区 p +2G P 查看
扩展分区 e 5 开始
t 2 82 p 将2 换成swap
d 3 p 将3 删除
e 区号 默认3 还有4 剩下全给3 扩展分区 要转逻辑才能用
n l 逻辑 默认 全分完 5
w 保存并退出
ls /dev/sdb*
mkfs –t xfs /dev/sdb1 = mks.xfs /dev/sdb1 格式化 极其重要 不格式化 逻辑分区不可用
df –h
在根目录下 cd /home/
mkdir ky17
ls
mount /dev/sdb1 /home/ky17 临时挂载 重要
df –h
blkid /dev/sdb1 看uuid 身份标识
vim /etc/fstab 看UUID 将上面UUID 复制进来 永久 不要双引号 /home/sdb1 xfs default 0 0
df –h 有磁盘代表永久挂载完成
free -m 查看内存
mkswap /dev/sdb2 创建sdb2分区
swapon -s 开启
free –m 查看是否加上
swapon /dev/sdb2 (sawp分区) 有两个swap
swapon
free –m
swapoff /dev/sdb2
swapoff –s
5、超过 2.2TB 进行的扩容操作
5.1 gdisk命令交互模式中的指令(扩充)
将GPT数据备份到一个文件c更改分区名称
d 删除一个分区
i 显示分区详细信息
l 列出己知分区类型。此处8200是Linux swap,8300是Linux filesystem (对应fdisk的82和83)。还有一个8e00是Linux LVM
n 增加一个新的分l区
o 创建一个新的空白的GPT分区表
p 显示当前磁盘的分区表
g 退gdisk程序,不保仔任何修改r恢复和转换选项(仅限专家)
s 排序分[区
t 改变分[区的类型v险证磁盘分区表
w 将分区长写入战判并退出(保存并迟出>x领外功能(仅限专家)
? 显示帮助信息
创建系统文件(格式化)
mkfs -t xfs /dev/ sdb1和mkfs.xfs /dev / sdbl 两种方式
gdisk /dev/sdc
m
n 创建 1-128
默认扇区 是否用8300 Linux系统默认xfs
p 查看
l 查看 GPT 格式
格式化
mkfs.xfs /dev/sdc1
mkdir /home/ky19
6、创建系统文件
lsblk 可以展示树形的硬盘
先格式化再进行挂载
blkid /dev/sdb1 查看uuid
mount 挂载命令
挂载文件系统、IS0镜像到指定文件
mount 【-t 类型】 存储设备 挂载点目录
用于指定文件系统类型,通常可以省略山系统自动识期
mount -o loop ISO镜像文件挂载点目录
-o options 主要用来描述设备或档案的连接方式
#挂载参数列表,以英文延号分隔:如用来描述特殊设备,用loop指定
loop:用来把一个文件当成硬盘分区社按上系统
vim /etc/sdb1 永久挂载
mkfs 最后一步 不然不能启用
创建系统文件(格式化)
mkfs -t xfs /dev/ sdb1和mkfs.xfs /dev / sdbl 两种方式
8、挂载 解挂载
blkid 查看UIID
用/dev/sr0 (设备路径) (绝对路径) 和用它的UUID一样 /mnt iso9600 default 0 0
生产环境 几乎经常做 挂载 永久挂载
非永久性 mount
永久性在/etc/fstab里面
挂载、卸载文件系统
9、查看磁盘命令 df –Th 重点
扩充 df 命令
语法格式 :lsblk(参数)
常用参数:
-a 显示所有设备
-b 以bytes方式显示设备大小
-d 不显示slaves或holders
-D print discard capabilities
-e 排除设备
-f 显示文件系统信息
-h 显示帮助信息
-i use asciicharacters only
-m 显示权限信息
-l 使用列表格式显示
-n 不显示标题
-○ 输出列
-p 使用key-value”格式显示
-r 使用原始格式显示
-t 显示拓扑结构信息
在etc/fstab
在/etc/fstab
文件中,每一行记录对应一个分区或设备的挂载配置信息,这些信息从左到右包括六个字段(使用空格或者制表符分隔),各部分的含义如下所述。
/dew/sdb1 / xfs defaults 0 0
第1字段:设备名或设各卷标名-
第2字校:文件系统的挂载点目录的位置-
第3字段:文件系统类型,如XFS、”swap等。
第4字段:挂载参数。即mount命令"-o"选项后可使用的参数。例如,defaults、rw、ro 、noexec分别表示默认参数、可写、只读、禁用执行程序。
第5字段:表示文件系统是否需要dump备份(dump是一个备份工具)。一般设为1时表示需要,设为0时将被dump忽略。
第6字段:该数字决定在系统启动时进行磁盘检查的顺序。0表示不进行检查,1表示优先检查,2表示其次检查。根分区应设为1.其他分区设为2。
通过在/etc/fstab
文件中添加相应的挂载配置,可以实现开机后自动挂载指定的分区。例如,执行以下操作将添加自动挂载分区/dew/ sdbil 的配置记录
总结:
学习了管理磁盘和分区、创建文件系统、挂载和卸载文件系统
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)