Linux 主流发行版操作磁盘的常用命令及使用示例,涵盖磁盘分区、格式化、LVM 管理、容量查看等核心操作:
1. 查看磁盘信息
列出所有磁盘及分区
lsblk # 查看块设备树状结构(最常用)
fdisk -l # 查看所有磁盘分区表
parted -l # 查看分区信息(支持 GPT 分区表)
查看未挂载的磁盘
lsblk -f # 查看已挂载/未挂载设备及文件系统类型
blkid # 查看所有块设备的 UUID 和文件系统类型
2. 磁盘分区
使用 fdisk
(适合 MBR 分区表)
sudo fdisk /dev/sdb # 对磁盘 sdb 进行操作
# 交互命令:
n → 创建新分区(主分区/扩展分区)
p → 查看分区表
d → 删除分区
w → 保存并退出
使用 parted
(适合 GPT 分区表)
sudo parted /dev/sdb
(parted) mklabel gpt # 创建 GPT 分区表
(parted) mkpart primary ext4 1MiB 10GiB # 创建分区(指定起始/结束位置)
(parted) print # 查看分区信息
(parted) quit # 退出
3. 格式化磁盘
# 格式化为 ext4 文件系统
sudo mkfs.ext4 /dev/sdb1
# 格式化为 XFS 文件系统
sudo mkfs.xfs /dev/sdb1
# 快速格式化(不检查坏块)
sudo mkfs.ext4 -T largefile4 /dev/sdb1
4. LVM 逻辑卷管理
创建物理卷 (PV)
sudo pvcreate /dev/sdb1 # 将分区 sdb1 初始化为物理卷
sudo pvs # 查看物理卷信息
创建卷组 (VG)
sudo vgcreate vg_data /dev/sdb1 # 创建名为 vg_data 的卷组
sudo vgs # 查看卷组信息
创建逻辑卷 (LV)
sudo lvcreate -L 20G -n lv_web vg_data # 在 vg_data 中创建 20G 的逻辑卷 lv_web
sudo lvs # 查看逻辑卷信息
格式化并挂载 LVM
sudo mkfs.ext4 /dev/vg_data/lv_web # 格式化逻辑卷
sudo mount /dev/vg_data/lv_web /mnt/web # 挂载到目录
扩展 LVM 逻辑卷
sudo lvextend -L +5G /dev/vg_data/lv_web # 扩容 5G
sudo resize2fs /dev/vg_data/lv_web # 扩展 ext4 文件系统
# 若使用 XFS 文件系统:sudo xfs_growfs /mnt/web
5. 挂载与卸载
sudo mount /dev/sdb1 /mnt/data # 临时挂载
sudo umount /mnt/data # 卸载
# 永久挂载(修改 /etc/fstab)
echo "/dev/sdb1 /mnt/data ext4 defaults 0 0" | sudo tee -a /etc/fstab
6. 查看磁盘容量
df -h # 查看已挂载磁盘使用情况(人类可读格式)
df -Th # 显示文件系统类型
du -sh /path/to/dir # 统计目录占用空间
7. 处理未使用硬盘
发现新硬盘
dmesg | grep -i sdc # 查看系统日志中是否识别到新硬盘(如 sdc)
lsblk # 确认未分区的磁盘(如 sdc 无子分区)
初始化并挂载
sudo parted /dev/sdc mklabel gpt # 创建 GPT 分区表
sudo parted /dev/sdc mkpart primary 0% 100% # 创建全盘分区
sudo mkfs.ext4 /dev/sdc1 # 格式化
sudo mount /dev/sdc1 /mnt/storage # 挂载
8. 其他工具
- **
gdisk
**:类似fdisk
,但支持 GPT 分区表 - **
cfdisk
**:图形化分区工具 - **
hdparm
**:测试磁盘性能(hdparm -Tt /dev/sda
) - **
badblocks
**:检查磁盘坏块(badblocks -v /dev/sdb
)
注意事项
- 操作前备份数据:分区和格式化会清除数据!
- 确认设备名称:通过
lsblk
或fdisk -l
确认目标磁盘(如/dev/sdb
而非系统盘/dev/sda
)。 - LVM 灵活性:LVM 支持动态扩容,适合需要灵活调整存储的场景。
以上命令适用于 Ubuntu、CentOS、Debian 等主流发行版。