我的 Surface Go 上安装了 Windows 10 和 Xubuntu Linux。我还使用 rEFInd 启动管理器。一段时间后(几天、几周等),我的 Xubuntu 分区停止加载其 GUI。我只需启动到命令行即可。我实际上已经在这台机器上重新安装了 ubuntu 来“修复”这个问题,但这基本上只是一个权宜之计。这个问题只是随着时间的推移而重新出现。我怀疑这与 Windows 和我的电脑启动方式有关,但是,我的笔记本电脑和台式机从未遇到过这个问题。
我想知道发生了什么。无论我使用哪个版本的 ubuntu,这种情况似乎都会发生。我会收到以下消息:
Error message:
/dev/nvme0n1p5: recovering journal
/dev/nvme0n1p5: Superblock last mount time is in the future (by less than a day, probably due to hardware clock being incorrectly set)
/dev/nvme0n1p5: clean, 233072/1831424 files, 2190469/7324160 blocks
You are in emergency mode. After logging in, type "journalctl -xb" to view system logs, "system ctl reboot" to reboot, "systemctl default" or "exit" to boot into default mode.
Press Enter for maintenance
(or Control-D to continue)
journalctl -xb 确实给了我一个日志,但它很长,而且我不确定哪些信息是相关的。
我尝试运行 fsck,但命令行抱怨它正在运行的驱动器已被安装。
答案1
最可能的原因:Windows 和 Linux 解释系统时间的方式不同(UTC 与本地时间)。如果是这种情况,可能的解决方案是让两个操作系统以相同的方式解释系统时间,即 UTC 或本地时间双重启动时时钟时间关闭。
可能的解决方案:
将 Windows 设置为 UTC,请参阅“让 Windows 使用 UTC”这里。
请在您的问题中发布文件在 Windows 中的确切位置
WindowsTimeFixUTC.reg
。然后在您的问题中发布该文件的确切内容。将 Ubuntu 设置为本地时间,请参阅“让 Linux 使用‘本地’时间”这里:
timedatectl set-local-rtc 1
(你可能需要添加--adjust-system-clock
)。请在您的问题中发布确切的输出
$ timedatectl set-local-rtc 1 $ timedatectl
如果
hwclock
给您带来麻烦,您可能需要此解决方案。请在您的问题中发布确切的输出
$ hwclock --verbose
可能不适用,因为它适用于旧版 Ubuntu。编辑
/etc/default/rcS
,将其更改UTC=no
为UTC=yes
。如果需要,请创建文件 (来源)。您还可以使用 添加另一行VERBOSE=yes
。同上。编辑
/etc/default/rcS
,更改FSCKFIX=no
为FSCKFIX=yes
(也许是最后的资源)。确认内部时钟的电源是否正常供电。由于 Surface Go 似乎没有 CMOS 电池,我不确定是否要检查/修复此问题。 https://www.ifixit.com/Answers/View/153800/CMOS+backup+battery+inside+Surface
来源/相关: