Entfernen Sie während des Startvorgangs die Meldung "Keine Seite im Caching-Modus gefunden"

11

Während des frühen Startvorgangs wird folgende Fehlermeldung angezeigt:

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

Wenn ich das richtig verstehe, ist dies eigentlich nur eine harmlose Infomeldung und kein tatsächlicher Fehler. sdbist mein USB-Laufwerk und verwendet kein Caching.

Das Problem ist, ich habe den Kernel loglevel absichtlich auf 4 gesetzt, um diese Art von nutzlosen Info-Nachrichten loszuwerden.

Warum bekomme ich dann immer noch diese Info-Nachricht?

Der Grund, warum es mich stört, ist, dass es meine Passwortabfrage stört (zum Entschlüsseln meiner LUKS-Festplatte)

Gibt es eine Möglichkeit, diese Nachricht loszuwerden?

Martin Vegter
quelle
Verwenden Sie einen niedrigeren Kernel-Parameter, z. B. loglevel=0um die Linux-Messaging-Ebenen anzupassen. Ich denke, Level 4 ist zu hoch, um diese spezifische Nachricht zum Schweigen zu bringen. Level 0 ist wahrscheinlich zu drastisch, aber es beseitigt ALLE nervigen Systemkotze mitten in meinen süßen, süßen Startbildschirmen.
Dominic Cerisano

Antworten:

5

Festplatten verfügen über einen kleinen RAM-Cache, um Schreibvorgänge zu beschleunigen. Das System kann einen Datenblock in den Festplatten-Cache schreiben, ohne darauf zu warten, dass er auf die Festplatte geschrieben wird. Dies wird manchmal als "Rückschreibemodus" bezeichnet. Befindet sich kein Cache auf der Festplatte, werden die Daten im Durchschreibemodus direkt darauf geschrieben. Die Warnung "Nach Cache-Daten fragen fehlgeschlagen" tritt normalerweise bei Geräten wie USB-Sticks, USB-Kartenlesern usw. auf, die sich dem System (sdX) als SCSI-Geräte präsentieren, aber keinen Cache haben. Das System fragt das Gerät: "Haben Sie einen Cache?" und bekommt keine Antwort. Es wird also davon ausgegangen, dass kein Cache vorhanden ist, und der Modus "Durchschreiben" wird aktiviert.

Sie können versuchen, zu gehen:

/etc/modules

und fügen Sie oben in der Modulliste die Zeile hinzu

usb_storage

Es sollte ungefähr so ​​aussehen:

# /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

So habe ich ein ähnliches Problem gelöst.

Lass mich wissen, was passiert ist.

malyy
quelle
1
Ich bin mir nicht sicher, welches Problem dies lösen soll. Aber es ist nicht auf mein Problem anwendbar. Außerdem verwende ich keine Module in meinem Kernel.
Martin Vegter
Es hat es nicht behoben
Ahmed Eid
@malyy Ich frage mich, was "lp" in der letzten Zeile ist. Wofür steht es?
Prabesh Bhattarai
1

Ja. Sie können solche Nachrichten entfernen, indem Sie den folgenden Befehl ausführen:

echo 0 > /proc/sys/kernel/printk

Dadurch werden fast alle Kernel-Nachrichten unterdrückt und nur Notfallnachrichten angezeigt

Siehe diesen Link für weitere Informationen

SHW
quelle
Warum abstimmen ???
SHW
2
Wahrscheinlich, weil dies während des frühen Startvorgangs keine Auswirkungen hat, bevor ein Benutzerbereich die Kontrolle übernimmt. Dieselbe Einstellung wird durch Hinzufügen loglevel=0zur Bootel-Befehlszeile vom Bootloader aus wirksam (durch Bearbeiten und Anwenden der Bootloader-Konfiguration vor dem nächsten Neustart). PS Ich habe nicht abgestimmt, nur zu Ihrer Information.
Ich meine unter userspace controlist dieser echoBefehl, der in /proc/sys/kernel/printkPseudofile schreibt .
1
OP kann den obigen Echo-Befehl in einem der initramfsfs-Hooks oder -Skripte hinzufügen.
SHW
1
@ SHW - Ich möchte nicht alle Kernel-Nachrichten unterdrücken. Meine Frage lautet ausdrücklich "Wie kann ich diese Nachricht loswerden ?". Außerdem habe ich in meinem ursprünglichen Beitrag angegeben, dass ich Kernel-Parameter verwende loglevel=4. Ich könnte das einfach ändern, loglevel=5um fast alle Nachrichten loszuwerden, aber das ist nicht das, was ich will.
Martin Vegter
1

Dies ist wahrscheinlich eine Warnmeldung (möglicherweise hält der Fahrer dies für wichtig genug, um sie zu erwähnen). Sie haben nicht angegeben, welchen Treiber Ihre USB-Festplatte verwendet, daher kann ich nicht auf die Quellzeile zeigen, um dies zu überprüfen. Weitere Informationen zu Protokollstufen finden Sie hier: http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/include/linux/kern_levels.h?id=HEAD

Die einfachste Lösung wäre, Ihren Kernel-Argumenten über den Bootloader "leise" hinzuzufügen, unabhängig davon, ob es sich um GRUB / LILO / etc. Handelt.

vik
quelle
0

Ändern Sie Ihre USB-Boot-Methode, während Sie den USB als bootfähiges Gerät ändern. Verwenden Sie das Power-ISO-Tool, damit Ihr USB-Boot-Gerät zu 100% funktioniert, ohne dass ein Fehler auftritt.


quelle
0

Ich hatte dieses Problem mit einer neuen Arch Linux UEFI-Installation, bei der ich einen UEFI Live USB zum Laden des Bootloaders auf dem Computer verwendete ESP.

Die Lösung bestand darin, das Setup mit einem EFI Boot Manager zu reparieren .

Wenn Sie GRUB& nicht EFISTUBzum Booten von Linux verwenden, müssen Sie den Befehlen KEINE Kernelbefehle hinzufügen .cryptefibootmgr

Stuart Cardall
quelle