在早期启动期间,我收到以下错误消息:
[sdb] No Caching mode page found
[sdb] Assuming drive cache: write through
如果我理解正确的话,这实际上只是一条无害的信息消息,而不是一个实际的错误。sdb
是我的USB磁盘,它不使用缓存。
问题是,我故意将内核日志级别设置为 4,以消除这些无用的信息消息。
为什么我仍然收到此信息消息?
它困扰我的原因是它干扰了我的密码提示(用于解密我的 LUKS 磁盘)
有没有办法摆脱这个消息?
答案1
硬盘有少量 RAM 缓存以加速写入操作。系统可以将一大块数据写入磁盘缓存,而无需实际等待它被写入磁盘。这有时称为“回写”模式。如果磁盘上没有缓存,则以“直写”方式将数据直接写入其中。 “请求缓存数据失败”警告通常发生在 USB 闪存驱动器、USB 读卡器等设备上,这些设备向系统 (sdX) 显示为 SCSI 设备,但没有缓存。系统询问设备:“你有缓存吗?”并没有得到回应。因此它假设没有缓存并将其置于“直写”模式。
您可以尝试前往:
/etc/modules
并在模块列表顶部添加行
usb_storage
它应该看起来像这样:
# /etc/modules: kernel modules to load at boot time.
#
# This file contains the names of kernel modules that should be loaded
# at boot time, one per line. Lines beginning with "#" are ignored.
usb_storage
lp
这就是我解决类似问题的方法。
让我知道发生了什么事。
答案2
答案3
这可能是一条警告消息(也许驱动程序认为它很重要而值得提及)。您没有指定您的 USB 硬盘使用哪个驱动程序,因此我无法指向源代码行来验证这一点。有关日志级别的更多信息,请参见此处:http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/include/linux/kern_levels.h?id=HEAD
最简单的修复方法是通过引导加载程序向内核参数添加“安静”,无论是 GRUB/LILO/等。
答案4
我在安装新的 Arch Linux UEFI 时遇到了这个问题,当时我使用 UEFI Live USB 在ESP
.
解决方案是使用以下命令修复设置EFI 启动管理器。
在 Windows 中,一个简单的解决方案是简单的
从Linux使用
efibootmgr
并设置一个timeout
价值
如果您使用GRUB
& 不是EFISTUB
启动 Linux 你需要做的就是不是需要将任何crypt
内核命令添加到efibootmgr
命令中。