se débarrasser du message «Aucune page de mode de mise en cache trouvée» lors du démarrage

11

lors du démarrage précoce, j'obtiens le message d'erreur suivant:

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

Si je comprends bien, ce n'est en fait qu'un message d'information inoffensif et non une erreur réelle. sdbest mon disque USB, et il n'utilise pas la mise en cache.

Le problème est que j'ai intentionnellement défini le niveau de journalisation du noyau à 4 pour se débarrasser de ce type de messages d'information inutiles.

Pourquoi puis-je toujours recevoir ce message d'information?

La raison pour laquelle cela me dérange est qu'elle interfère avec mon invite de mot de passe (pour décrypter mon disque LUKS)

Existe-t-il un moyen de se débarrasser de ce message?

Martin Vegter
la source
Utilisez un paramètre de noyau inférieur, par exemple loglevel=0pour personnaliser les niveaux de messagerie Linux. Je pense que le niveau 4 est trop élevé pour faire taire ce message spécifique. Le niveau 0 est probablement trop drastique, mais il se débarrasse de TOUS les vomissements du système ennuyeux au milieu de mes écrans de démarrage doux et doux.
Dominic Cerisano

Réponses:

5

Les disques durs ont une petite quantité de cache RAM pour accélérer les opérations d'écriture. Le système peut écrire un bloc de données dans le cache disque sans attendre qu'il soit écrit sur le disque. Ceci est parfois appelé mode "réécriture". S'il n'y a pas de cache sur le disque, les données y sont directement écrites en mode "écriture directe". L'avertissement Demande d'échec des données de cache se produit généralement avec des périphériques tels que des lecteurs flash USB, des lecteurs de carte USB, etc. qui se présentent comme des périphériques SCSI au système (sdX), mais n'ont pas de cache. Le système demande à l'appareil: "Avez-vous un cache?" et n'obtient aucune réponse. Il suppose donc qu'il n'y a pas de cache et le met en mode "écriture directe".

Vous pouvez essayer d'aller à:

/etc/modules

et en haut de la liste des modules ajoutez la ligne

usb_storage

Ça devrait ressembler a quelque chose comme ca:

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

C'est ainsi que j'ai résolu un problème similaire.

Faites-moi savoir ce qui s'est passé.

malyy
la source
1
Je ne sais pas quel problème cela est censé résoudre. Mais cela ne s'applique pas à mon problème. De plus, je n'utilise pas de modules dans mon noyau.
Martin Vegter
Il n'a pas résolu le problème
Ahmed Eid
@malyy Je me demande ce qui est "lp" dans la dernière ligne. Qu'est-ce que cela signifie?
Pranav
1

Oui. Vous pouvez vous débarrasser de ces messages en exécutant la commande suivante:

echo 0 > /proc/sys/kernel/printk

Cela supprimera presque tous les messages du noyau et n'affichera que les messages d'urgence

Voir ce lien pour plus d'informations

SHW
la source
Pourquoi downvote ???
SHW
2
Probablement parce que cela n'aura aucun effet lors du démarrage précoce , avant qu'un espace utilisateur ne prenne le contrôle. Le même paramètre aura un effet en ajoutant loglevel=0à la ligne de commande du noyau à partir du chargeur de démarrage (en modifiant et en appliquant la configuration du chargeur de démarrage avant le prochain redémarrage). PS Je n'ai pas voté contre, juste FYI.
Je veux dire sous userspace controlcette echocommande qui écrit dans le /proc/sys/kernel/printkpseudofichier.
1
OP peut ajouter la commande echo ci-dessus dans l'un de ses hooks ou scripts initramfsfs.
SHW
1
@SHW - Je ne veux pas supprimer tous les messages du noyau. Ma question est explicitement "comment puis-je me débarrasser de ce message". En outre, j'ai déclaré dans mon article d'origine que j'utilisais les paramètres du noyau loglevel=4. Je pourrais juste changer cela pour loglevel=5me débarrasser de presque tous les messages, mais ce n'est pas ce que je veux.
Martin Vegter
1

Il s'agit probablement d'un message d'avertissement (peut-être que le conducteur le considère suffisamment important pour être mentionné). Vous n'avez pas spécifié le pilote utilisé par votre disque dur USB, je ne peux donc pas pointer vers la ligne source pour vérifier cela. Plus d'informations sur les niveaux de journalisation ici: http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/include/linux/kern_levels.h?id=HEAD

La solution la plus simple serait d'ajouter "silencieux" à vos arguments du noyau via le chargeur de démarrage, que ce soit GRUB / LILO / etc.

vik
la source
0

Changez votre méthode de démarrage USB tout en changeant l'USB en tant qu'appareil de démarrage, utilisez l'outil Power ISO pour que votre appareil de démarrage USB fonctionne à 100% sans échec ...


la source
0

J'ai eu ce problème avec une nouvelle installation Arch Linux UEFI où j'utilisais un UEFI Live USB pour charger le chargeur de démarrage sur le ESP.

La solution consistait à corriger la configuration avec un gestionnaire de démarrage EFI .

Si vous utilisez GRUB& not an EFISTUBpour démarrer Linux, vous n'avez PAS besoin d'ajouter de cryptcommandes du noyau aux efibootmgrcommandes.

Stuart Cardall
la source