在CentOS系统中操作硬盘需要根据具体场景选择不同方法,以下是详细操作流程和扩展知识:
1. 识别硬盘设备
- 使用`lsblk -f`或`fdisk -l`命令查看所有块设备,NVMe硬盘通常显示为`/dev/nvme0n1`,SATA硬盘显示为`/dev/sdX`(X为字母)。
- `dmesg | grep -i scsi`可查看硬盘检测日志,新接入的硬盘内核会记录设备识别信息。
2. 分区管理
- 使用`parted /dev/sdX`进入交互分区工具,支持GPT/MBR格式:
bash
mklabel gpt # 创建GPT分区表
mkpart primary ext4 1MiB 100% # 创建全盘分区
align-check optimal 1 # 检查对齐
- 或用`fdisk /dev/sdX`创建传统MBR分区,注意4K对齐(起始扇区2048的倍数)。
3. 文件系统创建
- 推荐使用现代文件系统:
bash
mkfs.xfs -f /dev/sdX1 # XFS高性能文件系统
mkfs.ext4 -b 4096 -i 268435456 /dev/sdX1 # EXT4带大inode设置
- 对NVMe SSD可加`-d su=64k,sw=4`优化XFS参数。
4. 挂载使用
- 临时挂载:
bash
mount -o noatime,nodiratime,discard /dev/sdX1 /mnt/data
- 永久挂载需修改`/etc/fstab`:
/dev/sdX1 /data xfs defaults,discard,noatime 0 2
5. LVM高级管理
- 物理卷初始化:`pvcreate /dev/sdX1`
- 创建卷组:`vgcreate vg_data /dev/sdX1`
- 逻辑卷创建:`lvcreate -L 500G -n lv_data vg_data`
- 扩展逻辑卷:`lvextend -r -L +100G /dev/vg_data/lv_data`(-r参数自动扩展文件系统)
6. 性能优化
- 使用`hdparm -tT /dev/sdX`测试读写速度。
- SSD建议启用TRIM:`systemctl enable fstrim.timer`。
- 调整I/O调度器:
bash
echo kyber > /sys/block/sdX/queue/scheduler # NVMe
echo mq-deadline > /sys/block/sdX/queue/scheduler # SATA SSD
7. 安全注意事项
- 企业级环境建议使用`dm-crypt`加密:
bash
cryptsetup luksFormat /dev/sdX1
cryptsetup open /dev/sdX1 encrypted_vol
- 定期检查SMART状态:`smartctl -a /dev/sdX`。
8. 故障处理
- `fsck -f /dev/sdX1`强制检查文件系统。
- 使用`badblocks -sv /dev/sdX`检测坏块。
- 磁盘满时可通过`lsof +L1`查找被删除但未释放空间的大文件。
大容量硬盘(>16TB)建议使用GPT分区表,企业级存储建议结合multipath实现多路径访问。CentOS 7/8对NVMe支持有差异,需注意内核版本是否包含最新nvme驱动补丁。生产环境建议使用UDEV规则持久化磁盘设备命名,避免设备号变化导致挂载失败。