позбутися повідомлення "Не знайдено сторінки режиму кешування" під час завантаження


11

під час раннього завантаження я отримую таке повідомлення про помилку:

[sdb] No Caching mode page found
[sdb] Assuming drive cache: write through

Якщо я правильно розумію, це насправді просто нешкідливе інформаційне повідомлення, а не фактична помилка. sdbце мій USB-диск, і він не використовує кешування.

Проблема полягає в тому, що я навмисно встановив loglevel ядра на 4, щоб позбутися таких непотрібних інформаційних повідомлень.

Чому тоді я все ще отримую це інформаційне повідомлення?

Причина, чому мене це турбує, полягає в тому, що вона заважає моєму запиту пароля (для розшифровки мого диска LUKS)

Чи є спосіб позбутися цього повідомлення?


Використовуйте нижній параметр ядра, наприклад, loglevel=0для налаштування рівнів обміну повідомленнями Linux. Я думаю, що рівень 4 занадто високий, щоб заглушити це конкретне повідомлення. Рівень 0, ймовірно, занадто драстичний, але він позбавляється від УСІХ дратівливих системних мовчанок посеред моїх милих екранів завантаження.
Домінік Серісано

Відповіді:


5

На жорстких дисках є невелика кількість кешу оперативної пам’яті для прискорення операцій запису. Система може записати фрагмент даних у кеш диска, фактично не чекаючи, коли вони будуть записані на диск. Іноді це називається режимом «запису назад». Якщо на диску немає кеша, дані безпосередньо записуються в нього в режимі "запис". Попередження про помилку запиту даних про кеш зазвичай відбувається на таких пристроях, як флеш-накопичувачі USB, зчитувачі USB-карт тощо, які представляють себе системою SCSI як пристрої (sdX), але не мають кешу. Система запитує пристрій: "У вас є кеш?" і не отримує жодної відповіді. Таким чином, він припускає, що немає кешу, і переводить його в режим "переписування".

Ви можете спробувати перейти до:

/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

Ось як я вирішив подібну проблему.

Дайте мені знати, що сталося.


1
Я не впевнений, яку проблему слід вирішити. Але це не стосується моєї проблеми. Крім того, я не використовую модулі в своєму ядрі.
Мартін Вегтер

Це не виправили
Ахмед Ід

@malyy Цікаво, що "lp" знаходиться в останньому рядку. Що це означає?
Pranav

1

Так. Ви можете позбутися таких повідомлень, виконавши наступну команду:

echo 0 > /proc/sys/kernel/printk

Це призведе до придушення майже всіх повідомлень ядра та відображатиме лише повідомлення у надзвичайних ситуаціях

Дивіться це посилання для отримання додаткової інформації


Чому зворотний внесок ???
SHW

2
Можливо, тому, що це не матиме ефекту під час раннього завантаження, перш ніж будь-який простір користувачів візьме під контроль. Цей же параметр матиме ефект, додавши loglevel=0до командного рядка ядра з завантажувача (шляхом редагування та застосування конфігурації завантажувача до наступної перезавантаження). PS Я не проголосував, просто FYI.

Я маю на увазі під userspace controlтією echoкомандою, яка пише в /proc/sys/kernel/printkпсевдофайл.

1
OP може додавати вище команду echo у свій гачок або сценаріїв initramfsfs.
SHW

1
@SHW - я не хочу пригнічувати всі повідомлення ядра. Моє запитання явно "як я можу позбутися цього повідомлення". Крім того, у своєму початковому дописі я заявив, що використовую параметр ядра loglevel=4. Я міг би просто змінити це, щоб loglevel=5позбутися майже всіх повідомлень, але це не те, що я хочу.
Мартін Вегтер

1

Це, мабуть, попередження (можливо, водій вважає це досить важливим). Ви не вказали, який драйвер використовує ваш жорсткий диск USB, тому я не можу вказати на вихідний рядок, щоб підтвердити це. Більше інформації про рівні журналу тут: http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/include/linux/kern_levels.h?id=HEAD

Найпростішим виправленням буде додавання «тихо» до ваших ядер аргументів через завантажувач, будь то GRUB / LILO / тощо.


0

Змініть ваш метод завантаження usb, змінивши usb як завантажувальний пристрій, використовуйте інструмент iso iso для того, щоб ваш завантажувальний пристрій usb працював на 100% з відмовою ...


0

У мене була ця проблема з новою установкою UEFI Arch Linux, де я використовував USB UEFI Live для завантаження завантажувача на ESP.

Рішенням було виправити налаштування за допомогою диспетчера завантажень EFI .

Якщо ви використовуєте GRUB& не EFISTUBдля завантаження Linux, НЕ потрібно додавати cryptдо efibootmgrкоманд жодні команди ядра .

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.