7 Commandes «DMESG» pour dépanner et collecter des informations sur les systèmes Linux
- 3164
- 346
- Mohamed Brunet
Le 'dmesg'La commande affiche les messages du tampon d'anneau de noyau. Un système passe plusieurs niveaux de course d'où nous pouvons obtenir beaucoup d'informations comme l'architecture du système, le processeur, l'appareil attaché, la RAM, etc. Lorsque l'ordinateur est en train de se mettre en forme, un noyau (noyau d'un système d'exploitation) est chargé dans la mémoire. Pendant cette période, le nombre de messages est affiché où nous pouvons voir des dispositifs matériels détectés par le noyau.
Lire aussi: 10 commandes Linux pour collecter des informations sur le système et le matériel
Exemples de commande DMESGLes messages sont très importants en termes de diagnostic d'objectif en cas de défaillance de l'appareil. Lorsque nous connectons ou déconnectons le périphérique matériel sur le système, avec l'aide de la commande DMESG, nous connaissons des informations détectées ou déconnectées à la volée. Le dmesg La commande est disponible sur la plupart Linux et Unix système d'exploitation basé.
Jetons en lumière l'outil le plus célèbre appelé la commande «dmesg» avec leurs exemples pratiques comme discuté ci-dessous. La syntaxe exacte de DMESG comme suit.
# dmseg [Options…]
1. Énumérez tous les pilotes chargés dans le noyau
Nous pouvons utiliser des outils de manipulation de texte I.e. 'plus','queue','moins' ou 'grep'avec la commande dmesg. Comme la sortie du journal DMESG ne tiendra pas sur une seule page, l'utilisation de DMESG avec une commande plus ou moins de tuyau affichera les journaux en une seule page.
[[Protégé par e-mail] ~] # DMESG | Plus [[e-mail protégé] ~] # dmesg | moins
Échantillon de sortie
[0.000000] Initialisation de CGroup subsys CPUSET [0.000000] Initialisation du CGROUP subsys CPU [0.000000] Initialisation de CGroup subsys CPUACCT [0.000000] Version Linux 3.11.0-13-Generic ([e-mail protégé]) (Version GCC 4.8.1 (Ubuntu / Linaro 4.8.1-10UBUNTU8)) # 20-UBUNTU SMP mer 23 octobre 17:26:33 UTC 2013 (Ubuntu 3.11.0-13.20 génériques 3.11.6) [0.000000] CPU pris en charge du noyau: [0.000000] Intel authenineintel [0.000000] AMD Authenticamd [0.000000] NSC Geode par NSC [0.000000] Cyrix Cyrixinstead [0.000000] Centaur Centaurhauls [0.000000] Transmeta authentinetmx86 [0.000000] Transmeta Transmetacpu [0.000000] umc umc umc umc [0.000000] E820: Carte RAM physique fournie par BIOS: [0.000000] BIOS-E820: [mem 0x00000000000000-0x000000000009fbff] utilisable [0.000000] BIOS-E820: [mem 0x00000000000f0000-0x00000000000fffff] réservé [0.000000] BIOS-E820: [MEM 0x00000000100000-0x000000007dc08bff] utilisable [0.000000] BIOS-E820: [MEM 0x000000007DC08C00-0X000000007DC5CBFF] ACPI NVS [0.000000] BIOS-E820: [MEM 0x000000007DC5CC00-0X000000007DC5EBFF] Données ACPI [0.000000] BIOS-E820: [MEM 0x000000007DC5EC00-0X000000007FFFFFFF] Réservé [0.000000] BIOS-E820: [MEM 0x000000EE0000000-0X00000000EFFFFFFF] Réservé [0.000000] BIOS-E820: [MEM 0x00000000FEC00000-0X00000000FED003FF] Réservé [0.000000] BIOS-E820: [MEM 0x00000000FED20000-0X00000000FED9FFFF] Réservé [0.000000] BIOS-E820: [MEM 0x00000000FEE00000-0X00000000FEEFFFFFF] Réservé [0.000000] BIOS-E820: [MEM 0x000000FFBB00000-0X00000000FFFFFFFF] réservé [0.000000] NX (EXECUTE DISABLE) Protection: Active…
Lire aussi: Gérer efficacement les fichiers Linux à l'aide de commandes, la tête, la queue et le chat
2. Énumérez tous les appareils détectés
Pour découvrir quels disques durs ont été détectés par le noyau, vous pouvez rechercher le mot-clé "SDA" avec "grep"Comme illustré ci-dessous.
[[Protégé par e-mail] ~] # DMESG | grep sda [1.280971] SD 2: 0: 0: 0: [SDA] 488281250 Blocs logiques 512 par octets: (250 Go / 232 gib) [1.281014] SD 2: 0: 0: 0: [SDA] La protection de l'écriture est désactivée [1.281016] SD 2: 0: 0: 0: [SDA] Sens du mode: 00 3A 00 00 [1.281039] SD 2: 0: 0: 0: [SDA] Écriture de cache: activé, lisez le cache: activé, ne prend pas en charge DPO ou FUA [1.359585] SDA: SDA1 SDA2 < SDA5 SDA6 SDA7 SDA8> [1.360052] SD 2: 0: 0: 0: [SDA] Disque SCSI attaché [2.347887] ext4-fs (SDA1): Système de fichiers monté avec mode de données ordonné. Opts: (null) [22.928440] Ajouter un échange de 3905532k sur / dev /SDA6. Priorité: -1 Étendus: 1 à travers: 3905532k FS [23.950543] ext4-fs (SDA1): re-maîtrisé. Opts: erreurs = remount-ro [24.134016] ext4-fs (SDA5): Système de fichiers monté avec mode de données ordonné. Opts: (null) [24.330762] ext4-fs (SDA7): Système de fichiers monté avec mode de données ordonné. Opts: (null) [24.561015] ext4-fs (SDA8): Système de fichiers monté avec mode de données ordonné. Opts: (null)
NOTE: Le premier disque dur SATA 'SDA', «SDB» est le deuxième disque dur Sata et ainsi de suite. Recherche avec «HDA» ou «HDB» dans le cas du disque dur IDE.
3. Imprimez uniquement les 20 premières lignes de sortie
La «tête» avec DMESG montrera les lignes de départ i.e. 'DMESG | la tête -20 'imprimera seulement 20 lignes du point de départ.
[[Protégé par e-mail] ~] # DMESG | Tête -20 [0.000000] Initialisation de CGroup subsys CPUSET [0.000000] Initialisation du CGROUP subsys CPU [0.000000] Initialisation de CGroup subsys CPUACCT [0.000000] Version Linux 3.11.0-13-Generic ([e-mail protégé]) (Version GCC 4.8.1 (Ubuntu / Linaro 4.8.1-10UBUNTU8)) # 20-UBUNTU SMP mer 23 octobre 17:26:33 UTC 2013 (Ubuntu 3.11.0-13.20 génériques 3.11.6) [0.000000] CPU pris en charge du noyau: [0.000000] Intel authenineintel [0.000000] AMD Authenticamd [0.000000] NSC Geode par NSC [0.000000] Cyrix Cyrixinstead [0.000000] Centaur Centaurhauls [0.000000] Transmeta authentinetmx86 [0.000000] Transmeta Transmetacpu [0.000000] umc umc umc umc [0.000000] E820: Carte RAM physique fournie par BIOS: [0.000000] BIOS-E820: [mem 0x00000000000000-0x000000000009fbff] utilisable [0.000000] BIOS-E820: [mem 0x00000000000f0000-0x00000000000fffff] réservé [0.000000] BIOS-E820: [MEM 0x00000000100000-0x000000007dc08bff] utilisable [0.000000] BIOS-E820: [MEM 0x000000007DC08C00-0X000000007DC5CBFF] ACPI NVS [0.000000] BIOS-E820: [MEM 0x000000007DC5CC00-0X000000007DC5EBFF] Données ACPI [0.000000] BIOS-E820: [MEM 0x000000007DC5EC00-0X000000007FFFFFFF]
4. Imprimer uniquement les 20 dernières lignes de sortie
La «queue» avec la commande DMESG n'imprimera que 20 dernières lignes, ceci est utile au cas où nous insérons un appareil amovible.
[[Protégé par e-mail] ~] # DMESG | Tail -20 PARPORT0: style PC à 0x378, IRQ 7 [PCSPP, TRISTATE] PPDEV: pilote de port parallèle utilisateur EXT4-FS (SDA1): Système de fichiers monté avec mode de données commandé ajoutant 2097144K Swap on / Dev / SDA2. Priorité: -1 Extension: 1 Agout: 2097144K ReadaHead-Disable-Service: retarding Service Auditd ip_tables: (c) 2000-2006 NetFilter Core Team NF_Conntrack Version 0.5.0 (16384 seaux, 65536 Max) Net: Famille de protocole enregistré 10 LO: Extensions de confidentialité désactivées E1000: ETH0 Nic Link est en hausse de 1000 Mbps du duplex complet, Contrôle de débit: Aucun Pool de thread de travail lent: Démarrage du filetage de travail lent: Ready Fs- Cache: Cacheciles chargées: Cachefiles chargées: La sécurité nie la permission de nommer le contexte de sécurité: Erreur -95 ETH0: Aucun routeur IPv6 Type de présent = 1305 Audit (1398268784.593: 18630): Audit_enabled = 0 old = 1 AUID = 4294967295 SES = 4294967295 RES = 1 ReadaHead-Collector: Démarrage du service retardé Auditd ReadaHead-Collector
5. Rechercher un périphérique détecté ou une chaîne particulière
Il est difficile de rechercher une chaîne particulière en raison de la longueur de la sortie DMESG. Donc, filtrez les lignes avec une chaîne comme 'USB"DMA"tty' et 'mémoire' etc. L'option «-i» demande à la commande grep d'ignorer le boîtier (lettres supérieures ou inférieures).
[[Email Protected] Log] # DMESG | grep -i usb [[e-mail protégé] log] # dmesg | grep -i dma [[e-mail protégé] nt.com log] # dmesg | grep -i tty [[e-mail protégé] log] # dmesg | Mémoire grep -i
Échantillon de sortie
[0.000000] scanne 1 zones pour bas mémoire corruption [0.000000] Initial mémoire mappé: [mem 0x000000-0x01ffffff] [0.000000] base mémoire Trampoline à [C009B000] 9b000 Taille 16384 [0.000000] init_mémoire_mappage: [mem 0x00000000-0x000fffff] [0.000000] init_mémoire_mappage: [mem 0x37800000-0x379fffff] [0.000000] init_mémoire_mappage: [mem 0x34000000-0x377fffff] [0.000000] init_mémoire_mappage: [mem 0x00100000-0x33ffffff] [0.000000] init_mémoire_mappage: [mem 0x37a00000-0x37bfdfff] [0.000000] tôt mémoire gammes de nœuds [0.000000] PM: Nosave enregistré mémoire: [mem 0x0009f000-0x000effff] [0.000000] PM: Nosave enregistré mémoire: [mem 0x000f0000-0x000fffff] [0.000000] Veuillez essayer 'cgroup_disable =mémoire'Option si vous ne voulez pas mémoire Cgroups [0.000000] Mémoire: 2003288K / 2059928K Disponible (code de noyau 6352K, 607K RWDATA, 2640K Rodata, 880k init, 908k BSS, 56640K réservé, 1146920K Highmem) [0.000000] noyau virtuel mémoire Disposition: [0.004291] Initialisation des sous-hégers CGROUP mémoire [0.004609] Libérer des alternatives SMP mémoire: 28K (C1A3E000 - C1A45000) [0.899622] Libération initrd mémoire: 23616K (F51D0000 - F68E0000) [0.899813] scanne pour bas mémoire corruption toutes les 60 secondes [0.946323] Agpgart-Intel 0000: 00: 00.0: détecté 32768k volé mémoire [ 1.360318] Libérer le noyau inutilisé mémoire: 880K (C1962000 - C1A3E000) [1.429066] [DRM] Mémoire Utilisable par dispositif graphique = 2048m
6. Effacer les journaux de tampon DMESG
Oui, nous pouvons effacer les journaux DMESG si nécessaire avec la commande ci-dessous. Il effacera les journaux de messages du tampon d'anneau DMESG jusqu'à ce que vous exécutiez la commande ci-dessous. Vous pouvez toujours afficher les journaux stockés dans '/ var / log / dmesg' des dossiers. Si vous connectez un appareil générera une sortie DMESG.
[[Email Protected] Log] # DMESG -C
7. Surveillance du DMESG en temps réel
Une distribution permet également à la commande «queue -f / var / log / dmesg» pour la surveillance DMESG en temps réel.
[[Email Protected] Log] # Regardez "DMESG | Tail -20"
Conclusion: La commande DMESG est utile car DMESG enregistre tous les modifications du système effectuées ou se produisent en temps réel. Comme toujours, vous pouvez homme dmesg Pour obtenir plus d'informations.
- « Comment développer sa propre distribution Linux personnalisée à partir de zéro
- Comment configurer le serveur de messagerie postfix (SMTP) à l'aide de la configuration null-client - partie 9 »