Ubuntu分区后如何检查错误
小樊
48
2026-01-08 16:05:00
Ubuntu 分区后检查错误的实用流程
一、快速自检清单
- 确认设备与分区是否存在、类型是否正确:
- 查看块设备与分区:lsblk
- 查看分区表与类型:sudo fdisk -l
- 查看文件系统与 UUID/LABEL:sudo blkid /dev/sdX1
- 确认文件系统状态(以 ext4 为例):sudo dumpe2fs -h /dev/sdX1 | grep -E “Filesystem state|Errors behavior”
- 若显示 clean with errors 或 Errors behavior: Continue,说明存在错误需修复。
二、文件系统一致性检查与修复
- 卸载目标分区(重要):sudo umount /dev/sdX1
- 若提示设备忙,定位并结束占用进程:sudo fuser -vm /dev/sdX1,必要时 sudo fuser -vk /dev/sdX1
- 检查并自动修复(以 ext4 为例):sudo fsck -y /dev/sdX1
- 强制完整检查:sudo fsck -f /dev/sdX1
- 检测坏块:sudo fsck -c /dev/sdX1
- 图形界面方式(适合桌面环境):打开“磁盘”应用 → 选中分区 → 卸载 → 齿轮图标 → “检查文件系统” → 需要时“修复文件系统”。
三、分区表与磁盘结构检查
- 检查分区表健康与一致性:
- 对 GPT 磁盘:sudo gdisk /dev/sdX,输入 v 进行验证;如有冲突或“invalid GPT and valid MBR”等提示,按提示处理或备份数据后清理重建分区表。
- 重要提醒:
- 对整块磁盘(如 /dev/sdX)运行 fsck 会失败或误报,应针对具体分区(如 /dev/sdX1)执行检查与修复。
- 若遇到 “Bad magic number in super-block”,说明检查对象错误,改为检查分区设备(例如 /dev/sdX1)。
四、LVM 场景的扩容后检查
- 识别是否为 LVM:lsblk -f,若看到 LVM2_member 与 mapper 名称,则为 LVM。
- 扩容后检查与同步容量:
- 物理卷:sudo pvresize /dev/sda3
- 逻辑卷:sudo lvextend -l +100%FREE /dev/mapper/ubuntu–vg-ubuntu–lv
- 文件系统:
- ext4:sudo resize2fs /dev/mapper/ubuntu–vg-ubuntu–lv
- XFS:sudo xfs_growfs /
- 验证:df -h /。
五、启动失败与硬件健康排查
- 启动失败修复(重装 GRUB):
- 挂载根分区(示例):sudo mount /dev/sdX2 /mnt
- 绑定系统目录:sudo mount --bind /dev /mnt/dev; sudo mount --bind /proc /mnt/proc; sudo mount --bind /sys /mnt/sys
- 进入 chroot:sudo chroot /mnt
- 安装引导:grub-install /dev/sdX;更新配置:update-grub
- 退出并重启。
- 检查磁盘健康(SMART):
- 安装工具:sudo apt install smartmontools
- 健康检查:sudo smartctl -H /dev/sdX
- 若显示 FAILED,请尽快备份并更换磁盘。