Linux磁盘管理命令与RAID技术详解
一、磁盘管理命令对比
命令 | 功能描述 | 常用参数 | 适用场景 |
---|---|---|---|
df | 显示文件系统磁盘空间使用情况 | -h (人类可读), -T (文件系统类型) |
快速查看磁盘剩余空间 |
du | 统计文件和目录磁盘使用量 | -sh (汇总大小), --max-depth=N |
查找大文件/目录 |
lsblk | 列出块设备信息 | -f (文件系统), -o (自定义列) |
查看磁盘分区和挂载关系 |
fdisk | 磁盘分区工具 | -l (列表), /dev/sdX (操作指定磁盘) |
磁盘分区管理 |
parted | 高级分区工具(支持GPT) | -l (列表), mkpart (创建分区) |
大于2TB磁盘分区 |
二、命令详解与示例
1. df - 磁盘空间检查
功能:显示文件系统的总空间、已用空间和可用空间
常用参数:
df -h # 人类可读格式(GB/MB)
df -Th # 显示文件系统类型
df -i # 查看inode使用情况
输出示例:
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 50G 20G 30G 40% /
2. du - 文件/目录空间占用
功能:计算文件或目录的磁盘使用量
常用参数:
du -sh /var/log # 查看/var/log总大小
du -h --max-depth=1 /home # 查看/home下各目录大小
du -ah /tmp | sort -rh | head -n 10 # 找出/tmp最大的10个文件
3. lsblk - 块设备列表
功能:显示磁盘和分区的树状结构
常用参数:
lsblk -f # 显示文件系统类型和UUID
lsblk -o NAME,SIZE,FSTYPE,MOUNTPOINT # 自定义列
输出示例:
NAME SIZE FSTYPE MOUNTPOINT
sda 200G
├─sda1 50G ext4 /
└─sda2 150G xfs /data
4. fdisk - 分区管理
功能:MBR分区表的磁盘操作
常用操作:
sudo fdisk -l # 列出所有磁盘
sudo fdisk /dev/sdb # 对sdb进行操作
> n # 新建分区
> p # 打印分区表
> w # 写入并退出
5. parted - GPT分区工具
功能:支持GPT分区表和大于2TB的磁盘
示例:
sudo parted /dev/sdc
(parted) mklabel gpt # 创建GPT分区表
(parted) mkpart primary 0% 100% # 创建整个磁盘的分区
三、RAID技术详解
1. RAID级别对比
RAID级别 | 最少磁盘数 | 冗余性 | 读性能 | 写性能 | 适用场景 |
---|---|---|---|---|---|
RAID0 | 2 | 无 | 极高 | 极高 | 高性能临时数据 |
RAID1 | 2 | 镜像 | 高 | 中 | 重要数据备份 |
RAID5 | 3 | 分布式校验 | 高 | 中 | 平衡存储效率与安全性 |
RAID6 | 4 | 双校验 | 高 | 低 | 关键数据(容忍双盘故障) |
RAID10 | 4 | 镜像+条带 | 极高 | 高 | 数据库/虚拟机等高性能需求 |
2. Linux软RAID配置(mdadm)
创建RAID5示例:
# 安装工具
sudo apt install mdadm
# 创建RAID5 (3个活动盘+1个热备)
sudo mdadm --create /dev/md0 --level=5 --raid-devices=3 /dev/sd{b,c,d} --spare-devices=1 /dev/sde
# 查看状态
cat /proc/mdstat
sudo mdadm --detail /dev/md0
# 格式化和挂载
sudo mkfs.xfs /dev/md0
sudo mount /dev/md0 /mnt/raid
3. RAID监控与维护
# 添加新磁盘到阵列
sudo mdadm --add /dev/md0 /dev/sdf
# 移除故障盘
sudo mdadm --fail /dev/md0 /dev/sdb
sudo mdadm --remove /dev/md0 /dev/sdb
# 监控RAID状态
watch -n 1 cat /proc/mdstat
四、命令与RAID选择指南
1. 命令选择场景
- 快速查看空间 →
df -h
- 找大文件 →
du -sh * | sort -rh
- 分区管理 →
fdisk
(MBR),parted
(GPT) - RAID管理 →
mdadm
2. RAID级别选择
- 最大化性能 → RAID0 或 RAID10
- 低成本冗余 → RAID5
- 关键数据保护 → RAID6 或 RAID10
- 个人备份 → RAID1
3. 运维建议
- 生产环境避免使用RAID0
- RAID5/6重建期间避免写入大量数据
- 定期检查
/proc/mdstat
和SMART状态 - 重要数据即使使用RAID也需额外备份
通过掌握这些命令和RAID技术,您可以有效管理Linux服务器的存储资源并确保数据安全!
作者:admin 创建时间:2025-05-29 10:05
最后编辑:admin 更新时间:2025-05-29 13:26
最后编辑:admin 更新时间:2025-05-29 13:26