经过长时间的暂停会话后,我的系统给了我这条消息Read-error on swap-device (8:0:441040)
(这是收到的最后一条消息)。它以某种方式重新启动,因为在暂停之前我没有打开更多程序,这实际上是一个新的用户会话。我用命令搜索了交换分区中的坏扇区,badblocks
但一切似乎都很好,最近我增加了交换,但似乎这两件事不相关,因为我什至在大小增加过程之前就收到了错误消息。我已经:在增量后更改了 fstab 文件中的 UUID(只是为了确定),重新格式化交换分区,寻找坏扇区,我现在不知道该怎么办。另一件事,此时我的系统安装了arch,但这是我以前在其他发行版中没有的问题。
有一个与您描述的所有内容相匹配的错误(包括我写此答案时的单独评论)。该错误是在上游内核 v4.14 中引入的,在 v4.17 和 v4.16.8 中已修复。
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-4.16.y&id=7859056bc73dea2c3714b00c83b253d4c22bf7b6
如果您仍然没有足够新的内核,并且您不想安装较旧的内核(切换到
linux-lts
下面 Arch 线程中提到的软件包?),有一个解决方法。您可以将选项“scsi_mod.scan=sync”添加到内核命令行的末尾,例如在 GRUB 中。它的原始 Arch 论坛主题在这里:
https://bbs.archlinux.org/viewtopic.php?id=235027
恢复期间的“交换设备上的读取错误”可能是此错误的签名(但此错误消息可能是由其他原因引起的,并且大多数情况下,此崩溃非常安静,至少对我而言)。有关此消息发生的示例,请参阅:
https://askubuntu.com/questions/1035208/ubuntu-18-04-error-on-waking-up-from-sleep-read-error-on-swap-device/
https://bugzilla.redhat.com/show_bug.cgi?id=1553979#c29