14.设备和文件系统
1. 文件系统基础
/etc/fstab 文件格式解析
1 | 设备/标签/UUID 挂载点 文件系统类型 挂载选项 dump标志 fsck顺序 |
字段说明:
字段 | 说明 | 示例 |
---|---|---|
1 | 设备标识 | /dev/sda1, UUID=xxxx, LABEL=root |
2 | 挂载路径 | /, /home, /boot |
3 | 文件系统类型 | ext4, xfs, nfs |
4 | 挂载选项 | defaults, noatime |
5 | dump备份标志 | 0(不备份), 1(备份) |
6 | fsck检查顺序 | 0(不检查), 1(优先), 2(次级) |
文件系统类型对比
类型 | 特点 | 适用场景 |
---|---|---|
ext4 | 日志式, 最大16TB文件 | 通用Linux系统 |
XFS | 高性能, 最大8EB文件 | 大文件处理 |
Btrfs | 写时复制, 快照功能 | 高级存储需求 |
FAT32 | 兼容性好 | U盘/移动设备 |
NTFS | Windows兼容 | 双系统共享分区 |
常用挂载选项
选项 | 作用 | 性能影响 |
---|---|---|
async | 异步写入 | 提升性能 |
noatime | 不更新访问时间 | 显著提升 |
nodiratime | 不更新目录访问时间 | 小幅提升 |
discard | TRIM支持(SSD) | 延长SSD寿命 |
data=writeback | ext4日志模式 | 性能最佳 |
查看支持的文件系统:
1 | cat /proc/filesystems |
查看已挂载文件系统:
1 | cat /etc/mtab # 或 |
2. 挂载管理命令
mount 命令详解
1 | mount [选项] [设备] [挂载点] |
常用选项:
选项 | 说明 |
---|---|
-t | 指定文件系统类型 |
-o | 指定挂载选项(多选项用逗号分隔) |
-a | 挂载/etc/fstab中所有文件系统 |
–bind | 目录绑定挂载 |
-l | 显示标签 |
示例:
1 | mount -t ext4 -o noatime /dev/sdb1 /mnt/data |
umount 命令
1 | umount [选项] [设备|挂载点] |
选项 | 说明 |
---|---|
-a | 卸载所有文件系统 |
-t | 按类型卸载 |
-l | 延迟卸载(强制) |
-f | 强制卸载 |
强制卸载流程:
fuser -vm /mountpoint
查看占用进程kill -9 PID
结束进程umount -f /mountpoint
3. SWAP 管理
创建SWAP文件
1 | # 创建1GB交换文件 |
SWAP管理命令
命令 | 功能 |
---|---|
swapon -a |
启用所有swap |
swapon -s |
查看swap使用 |
swapoff -a |
禁用所有swap |
优化建议:
- 物理内存<8GB时,SWAP=1.5倍内存
- 物理内存≥8GB时,SWAP=8GB
4. 文件系统创建与维护
创建工具对比
命令 | 对应文件系统 | 特点 |
---|---|---|
mkfs.ext4 | ext4 | 默认日志模式 |
mkfs.xfs | XFS | 高性能大文件 |
mkfs.btrfs | Btrfs | 高级功能支持 |
ext4创建示例:
1 | mkfs.ext4 -b 4096 -m 1 -L DATA /dev/sdb1 |
XFS创建示例:
1 | mkfs.xfs -f -L BIGDATA /dev/sdc1 |
文件系统检查
ext系列检查:
1 | fsck -y /dev/sda1 # 自动修复 |
XFS检查:
1 | xfs_repair /dev/sdb1 |
检查时机:
- 异常关机后
- 定期维护时(建议每6个月)
- 出现I/O错误时
5. 高级文件系统特性
ext4 特性管理
转换ext3→ext4:
1 | tune2fs -O extent,uninit_bg,dir_index /dev/sda1 |
调整参数:
1 | tune2fs -c 30 -i 7d /dev/sda1 # 每30次挂载或7天检查 |
XFS 高级功能
查看信息:
1 | xfs_info /dev/sdb1 |
备份恢复:
1 | xfsdump -l 0 -f /backup/root.xfsdump /dev/sda1 |
6. 光盘与加密文件系统
光盘制作
1 | # 创建ISO |
加密文件系统
LUKS加密:
1 | cryptsetup luksFormat /dev/sdb1 |
关闭加密卷:
1 | umount /mnt/secure |
7. 磁盘健康监控
S.M.A.R.T. 监控
1 | smartctl -a /dev/sda # 查看详细信息 |
关键监控指标:
- Reallocated_Sector_Ct
- Current_Pending_Sector
- Temperature_Celsius
8. 故障处理流程
文件系统修复步骤
-
卸载文件系统:
1
umount /dev/sda1
-
进入单用户模式:
1
init 1
-
执行检查修复:
1
fsck -y /dev/sda1
-
严重损坏时:
1
2
3debugfs /dev/sda1
> lsdel # 查看已删除inode
> dump <inode> /tmp/recover_file
应急恢复方案
问题现象 | 解决方案 |
---|---|
无法挂载 | fsck -y /dev/sdX |
Superblock损坏 | e2fsck -b 32768 /dev/sdX |
只读文件系统 | mount -o remount,rw / |