设为首页
收藏本站
开启辅助访问
切换到窄版
登录
立即注册
快捷导航
发布信息
搜索
搜索
首页
优惠促销
云服务器
独立服务器
站群服务器
母鸡服务器
服务器托管
全球云服务器
技术文档
联系
每日签到
本版
文章
帖子
用户
主机测评网
»
论坛
›
技术文档
›
其他教程
›
Linux文件系统详解:CentOS下磁盘分区、格式化与挂载 ...
返回列表
发新帖
Linux文件系统详解:CentOS下磁盘分区、格式化与挂载
[复制链接]
|
主动推送
10
|
0
|
2026-5-8 10:24:42
|
显示全部楼层
|
阅读模式
Linux 中的文件系统管理是运维的基础功,下面我以 CentOS 7/8 为例,从磁盘分区、格式化到挂载,为你梳理一套完整的理论与操作流程。
1. 文件系统基础概念
Linux 采用单一树状目录结构,所有存储设备(硬盘、U盘、光盘)都必须挂载到某个目录下才能被访问。
常用文件系统:
ext4
:CentOS 6 默认,稳定,支持最大 1EB 文件系统。
xfs
:CentOS 7/8 默认,高性能,擅长处理大文件,支持在线扩容。
swap
:交换分区,用于虚拟内存。
2. 磁盘分区
2.1 分区表类型
MBR(Master Boot Record)
支持最大 2TB 磁盘,最多 4 个主分区,或 3 个主分区 + 1 个扩展分区(扩展分区内可建逻辑分区)。
GPT(GUID Partition Table)
支持 2TB 以上磁盘,主分区数量几乎无限制,需要 UEFI 引导。
2.2 常用分区工具
fdisk
:管理 MBR 分区
gdisk
:管理 GPT 分区
parted
:同时支持 MBR/GPT,适合脚本
2.3 实战:为新磁盘分区
假设新增了一块磁盘
/dev/sdb
复制代码
(通过
lsblk
复制代码
或
fdisk -l
复制代码
确认)。
使用 fdisk 创建 MBR 分区
fdisk /dev/sdb
复制代码
交互命令:
n
复制代码
→ 新建分区
p
复制代码
→ 主分区(或
e
复制代码
扩展分区)
1
复制代码
→ 分区号
回车 → 默认起始扇区
+10G
复制代码
→ 设置分区大小
w
复制代码
→ 保存并退出
使用 parted 创建 GPT 分区(推荐大磁盘)
parted /dev/sdb mklabel gpt # 创建 GPT 标签
parted /dev/sdb mkpart primary 1MiB 100GiB # 创建一个 100G 主分区
复制代码
分区生效
:退出工具后,内核会自动重读分区表;若未生效可执行
partprobe /dev/sdb
复制代码
。
3. 格式化(创建文件系统)
分区只是划分了区域,还需要写入文件系统才能存储数据。
# 格式化为 ext4
mkfs.ext4 /dev/sdb1
# 或
mkfs -t ext4 /dev/sdb1
# 格式化为 xfs(CentOS 7/8 默认)
mkfs.xfs /dev/sdb1 -f # -f 强制覆盖已有文件系统
# 创建 swap 分区
mkswap /dev/sdb2
swapon /dev/sdb2 # 立即启用
复制代码
格式化时会分配 inode 表、超级块等元数据,并可能丢弃旧数据,操作前务必确认分区设备名!
4. 挂载(Mount)
挂载就是将文件系统关联到某个目录(挂载点),之后该目录下的操作就会落到对应分区上。
4.1 临时挂载
mkdir /data
mount /dev/sdb1 /data
复制代码
查看挂载情况:
df -hT /data # 查看挂载点及文件系统类型
mount | grep sdb1
复制代码
4.2 设置开机自动挂载(/etc/fstab)
编辑
/etc/fstab
复制代码
,添加一行:
# 设备 挂载点 文件系统 挂载选项 dump fsck顺序
UUID=xxxx-xxxx /data xfs defaults 0 0
复制代码
推荐使用 UUID 而非设备名
(如
/dev/sdb1
复制代码
),因为 UUID 唯一,设备名可能变动。
查看 UUID:
blkid /dev/sdb1
复制代码
参数说明:
挂载选项
:
defaults
复制代码
包括 rw、suid、dev、exec、auto、nouser、async 等,常见可添加
noatime
复制代码
(不更新访问时间)提升性能。
dump
:是否备份(一般 0)。
pass
:开机 fsck 检查顺序,根分区通常为 1,其他为 2,0 表示不检查。
编辑完
/etc/fstab
复制代码
后,执行
mount -a
复制代码
测试是否挂载成功(无需重启)。
4.3 卸载
umount /data
# 如果提示 busy,可查看谁在占用
lsof /data
fuser -mv /data
复制代码
5. 完整操作示例(新增 10G 分区,格式化 xfs,挂载到 /data)
# 1. 查看新磁盘
lsblk
# 假设 /dev/sdb 为 20G 新盘
# 2. 分区(使用 fdisk 创建 1 个 10G 分区)
fdisk /dev/sdb
# n → p → 1 → 回车 → +10G → w
# 3. 刷新分区表
partprobe /dev/sdb
# 4. 格式化
mkfs.xfs /dev/sdb1
# 5. 创建挂载目录并挂载
mkdir /data
mount /dev/sdb1 /data
# 6. 确认
df -hT /data
# 7. 开机自动挂载
blkid /dev/sdb1 # 复制 UUID
echo "UUID=你的UUID /data xfs defaults 0 0" >> /etc/fstab
mount -a # 测试 fstab 配置是否正确
复制代码
6. LVM 补充(进阶)
在 CentOS 生产环境中,常采用 LVM(逻辑卷管理器)实现弹性扩容。
PV
(Physical Volume):物理分区或磁盘,如
/dev/sdb1
复制代码
VG
(Volume Group):多个 PV 组成的存储池
LV
(Logical Volume):从 VG 分配的逻辑卷,可动态调整大小
典型步骤:
pvcreate /dev/sdb1 # 创建物理卷
vgcreate vg_data /dev/sdb1 # 创建卷组
lvcreate -L 5G -n lv_data vg_data # 创建 5G 逻辑卷
mkfs.xfs /dev/vg_data/lv_data
mount /dev/vg_data/lv_data /data
复制代码
扩容时只需扩展 LV 与文件系统:
lvextend -L +2G /dev/vg_data/lv_data
# xfs 在线扩容
xfs_growfs /data
复制代码
7. 常见问题排查
分区表未同步
:
partprobe
复制代码
后仍无法识别分区,重启系统或使用
partx -a /dev/sdb
复制代码
。
挂载点空间不足
:确认分区大小,或使用 LVM 扩容,避免直接删除挂载点下的旧数据(挂载会覆盖原目录内容)。
文件系统损坏
:可尝试
fsck /dev/sdb1
复制代码
(需先卸载分区)。
掌握这些,就能在 CentOS 上熟练管理磁盘了。如果有特定场景(如 RAID、加密分区),可以进一步深入探讨。
回复
使用道具
举报
返回列表
发新帖
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
本版积分规则
发表回复
回帖后跳转到最后一页
我是的十八簿
129
主题
0
回帖
10
积分
新手上路
新手上路, 积分 10, 距离下一级还需 40 积分
新手上路, 积分 10, 距离下一级还需 40 积分
积分
10
加好友
发消息
回复楼主
返回列表
网络技术教程
软件使用教程
Windows教程
Centos教程
Ubuntu教程
Linux其他教程
综合教程
其他教程
其他文档
服务器商家推荐
华夏互联
蓝速云
米图云
全球云
文章
1
苹果电脑MAC系统登录Windows远程桌面
2
「香港站群服务器」和「美国站群服务器」哪个性价比更高
3
「香港站群服务器」为什么一直大受用户好评?
4
「香港站群服务器」租用有哪些挑选小窍门?
5
部署站群业务选择香港服务器需要注意什么
6
哪有8C段IP的香港站群服务器?
7
租用便宜的美国站群vps主机怎么样?
8
多IP站群服务器租用哪个好?香港和美国对比