没有显示器,正常不关机,结果一次读写错误,只能重启,结果没开机,只能搬出显示器,接上键盘,过程实在麻烦。

简单说就是fsck检查没通过,需要手动解决,错误内容大概和下面差不多,我没有记录:

/dev/mapper/pve-data UNEXPECTED INCONSISTENCY; 
RUN fsck MANUALLY 
fsck excited with status code 4 
Failure: File system check of the root filesystem failed 
The root filesystem on /dev/mapper/pve-data requires a manual fsck

可以通过修改内核参数,强制跳过或者强制修复可能存在的错误。修改文件/etc/default/grub,找到

GRUB_CMDLINE_LINUX_DEFAULT

这个是内核启动参数,在后面添加:fsck.mode=force fsck.repair=yes,然后执行:

sudo update-grub

也可以禁用检查,直接启动,参数参考[email protected] 中文手册里面的部分内容:

systemd-fsck 能够识别 下列内核引导选项:
fsck.mode=
检查模式。可设为 "auto", "force", "skip" 之一。 默认值 "auto" 表示 仅在文件系统检查工具认为确有必要的情况下, 才会实际执行真正的检查动作。"force" 表示无条件的执行检查动作。 "skip" 表示无条件的跳过检查动作。
fsck.repair=
修复模式。可设为 "preen", "yes", "no" 之一。 默认值 "preen" 表示 自动修复文件系统检查过程中发现的可以安全修复的文件系统错误。 "yes" 表示对 fsck 询问的所有问题,一律回答"yes"。 "no" 表示对 fsck 询问的所有问题,一律回答"no"。

20190714

今天虚拟机内的小鸡无法启动,也是糟心,查看日志

journalctl -xe

上下翻来翻去终于找到了一句关键的错误信息:

Check of pool pve/data failed (status:1). Manual repair required!

后来搜索错误,找到这个帖子,
运行

lvchange -a y pve/data

提示修复

lvconvert --repair pve/data

然后重启,小鸡能正常开机。