在正常使用过程中,我的 Ubuntu 笔记本电脑会间歇性地遇到一些 I/O 错误,然后/
以只读方式重新挂载(是的,我检查了 SMART 日志,没有任何显示;我也更换了驱动器,没有运气)。问题是我永远无法读取底层的原始错误(如果报告了任何错误),因为到那时文件系统已以只读方式重新安装,因此错误不会在任何地方记录到磁盘,并且如果我运行dmesg
循环缓冲区已完全其他进程抱怨只读文件系统的垃圾邮件,这就是所有可见的。
重申一下,我无法查看,/var/log
因为那时文件系统已被安装为只读,因此rsyslog
根本无法记录任何错误。
我启动新工具的能力也有限,因为此时磁盘子系统会报告一般 I/O 错误。只有缓存常驻的东西是可运行的。
我唯一能想到的就是变成/var/log
内存中的 tmpfs 并重新启动rsyslog
,等待错误发生,希望我能在/var/log
. 甚至可能在循环中运行一些标准工具,如cat
, grep
,less
等,这样在磁盘子系统出现故障后它们肯定会可用。
有没有更简单的选择?
通过 grub将
log_buf_len=
内核参数8M
设置为类似.