Linux 如何挂载磁盘
MBR 和 GPT 分区格式介绍
MBR (Master Boot Record)
- 传统的分区表格式
- 最大支持 2TB 磁盘容量
- 最多支持 4 个主分区,或 3 个主分区 + 1 个扩展分区
- 扩展分区可以包含多个逻辑分区
GPT (GUID Partition Table)
- 新一代分区表格式
- 支持超过 2TB 的磁盘容量
- 理论上支持无限数量的分区(实际受操作系统限制)
- 支持更好的数据保护机制
MBR 和 GPT 的共存
-
单硬盘不能同时使用两种分区表
- 一块硬盘只能使用一种分区表格式(MBR 或 GPT)
- 切换分区表格式会导致原有分区表信息丢失
-
系统中可以同时存在 MBR 和 GPT 磁盘
- 不同的物理硬盘可以使用不同的分区表格式
- 例如:系统盘可以是 MBR,数据盘可以是 GPT
-
转换注意事项:
- MBR 转 GPT 或 GPT 转 MBR 会删除所有分区信息
- 转换前必须备份所有重要数据
- 可以使用 gdisk 工具在 MBR 和 GPT 之间转换
-
启动模式兼容性:
- Legacy BIOS 启动模式主要支持 MBR
- UEFI 启动模式主要支持 GPT
- 部分 UEFI 系统通过 CSM 模式可以兼容 MBR
查看磁盘和分区信息
- 查看所有磁盘:
lsblk
# 或
fdisk -l
- 查看分区表类型:
parted -l /dev/sdX # 将 X 替换为具体的盘符
MBR 分区和挂载步骤
- 使用 fdisk 创建分区:
fdisk /dev/sdX # 将 X 替换为具体的盘符
# 常用命令:
# n - 新建分区
# p - 查看分区表
# w - 保存并退出
# q - 不保存退出
- 格式化分区:
mkfs.ext4 /dev/sdX1 # 将 sdX1 替换为具体的分区
- 创建挂载点并挂载:
mkdir /mnt/data
mount /dev/sdX1 /mnt/data
- 设置开机自动挂载,编辑 /etc/fstab:
echo "/dev/sdX1 /mnt/data ext4 defaults 0 0" >> /etc/fstab
GPT 分区和挂载步骤
方法一:使用 parted 创建 GPT 分区表
- 使用 parted 创建 GPT 分区表:
parted /dev/sdX
# 进入 parted 后:
mklabel gpt # 创建 GPT 分区表
mkpart primary 0% 100% # 创建分区
quit
- 格式化分区:
mkfs.ext4 /dev/sdX1 # 将 sdX1 替换为具体的分区
- 创建挂载点并挂载:
mkdir /mnt/data
mount /dev/sdX1 /mnt/data
- 设置开机自动挂载,编辑 /etc/fstab:
echo "/dev/sdX1 /mnt/data ext4 defaults 0 0" >> /etc/fstab
方法二:使用 fdisk 创建 GPT 分区表
- 使用 fdisk 创建 GPT 分区:
fdisk /dev/sdX # 将 X 替换为具体的盘符
# 常用命令:
# g - 创建新的 GPT 分区表
# n - 新建分区
# p - 查看分区表
# w - 保存并退出
# q - 不保存退出
注意:新版本的 fdisk(2.26+)完全支持 GPT 分区表。如果您使用的是较旧版本,建议使用 parted 来创建 GPT 分区。
- 后续步骤与方法一相同:
- 格式化分区
- 创建挂载点
- 设置开机自动挂载
注意事项
-
在进行分区操作前,请确保:
- 已备份重要数据
- 确认正确的磁盘设备名
- 了解分区操作的风险
-
使用 UUID 挂载更安全:
# 查看分区的 UUID
blkid
# 使用 UUID 在 fstab 中设置挂载
UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx /mnt/data ext4 defaults 0 0
-
挂载参数说明:
- defaults: 使用默认挂载选项
- 0: 不备份
- 0: 不检查文件系统
-
常用命令:
mount: 查看当前挂载情况df -h: 查看磁盘使用情况umount /mnt/data: 卸载分区
评论区