7 dmesg skipanir fyrir bilanaleit og söfnun upplýsinga um Linux kerfi
'dmesg' skipunin sýnir skilaboðin frá kjarnahringabuffinu. Kerfi fer yfir mörg keyrslustig þaðan sem við getum fengið mikið af upplýsingum eins og kerfisarkitektúr, örgjörva, tengd tæki, vinnsluminni osfrv. Þegar tölvan ræsist upp er kjarni (kjarni stýrikerfis) hlaðinn inn í minni. Á því tímabili er fjöldi skilaboða sýndur þar sem við getum séð vélbúnaðartæki sem greind eru af kjarna.
Lestu einnig: 10 Linux skipanir til að safna upplýsingum um kerfi og vélbúnað
Skilaboðin eru mjög mikilvæg hvað varðar greiningartilgang ef tækisbilun verður. Þegar við tengjum eða aftengjum vélbúnaðartæki á kerfinu, með hjálp dmesg skipunarinnar, komumst við að því að uppgötva eða aftengdar upplýsingar á flugu. dmesg skipunin er fáanleg á flestum Linux og Unix stýrikerfum.
Við skulum varpa ljósi á frægasta tólið sem kallast „dmesg“ skipun með hagnýtum dæmum eins og fjallað er um hér að neðan. Nákvæm setningafræði dmesg sem hér segir.
# dmseg [options...]
1. Listaðu alla hlaðna ökumenn í kjarnanum
Við getum notað verkfæri fyrir textameðferð, t.d. 'meira', 'hala', 'minna' eða 'grep ' með dmesg skipuninni. Þar sem framleiðsla af dmesg annáli passar ekki á einni síðu, mun notkun dmesg með pípa meira eða minni skipun sýna logs á einni síðu.
dmesg | more dmesg | less
[ 0.000000] Initializing cgroup subsys cpuset [ 0.000000] Initializing cgroup subsys cpu [ 0.000000] Initializing cgroup subsys cpuacct [ 0.000000] Linux version 3.11.0-13-generic ([email ) (gcc version 4.8.1 (Ubuntu/Linaro 4.8.1-10ubuntu8) ) #20-Ubuntu SMP Wed Oct 23 17:26:33 UTC 2013 (Ubuntu 3.11.0-13.20-generic 3.11.6) [ 0.000000] KERNEL supported cpus: [ 0.000000] Intel GenuineIntel [ 0.000000] AMD AuthenticAMD [ 0.000000] NSC Geode by NSC [ 0.000000] Cyrix CyrixInstead [ 0.000000] Centaur CentaurHauls [ 0.000000] Transmeta GenuineTMx86 [ 0.000000] Transmeta TransmetaCPU [ 0.000000] UMC UMC UMC UMC [ 0.000000] e820: BIOS-provided physical RAM map: [ 0.000000] BIOS-e820: [mem 0x0000000000000000-0x000000000009fbff] usable [ 0.000000] BIOS-e820: [mem 0x00000000000f0000-0x00000000000fffff] reserved [ 0.000000] BIOS-e820: [mem 0x0000000000100000-0x000000007dc08bff] usable [ 0.000000] BIOS-e820: [mem 0x000000007dc08c00-0x000000007dc5cbff] ACPI NVS [ 0.000000] BIOS-e820: [mem 0x000000007dc5cc00-0x000000007dc5ebff] ACPI data [ 0.000000] BIOS-e820: [mem 0x000000007dc5ec00-0x000000007fffffff] reserved [ 0.000000] BIOS-e820: [mem 0x00000000e0000000-0x00000000efffffff] reserved [ 0.000000] BIOS-e820: [mem 0x00000000fec00000-0x00000000fed003ff] reserved [ 0.000000] BIOS-e820: [mem 0x00000000fed20000-0x00000000fed9ffff] reserved [ 0.000000] BIOS-e820: [mem 0x00000000fee00000-0x00000000feefffff] reserved [ 0.000000] BIOS-e820: [mem 0x00000000ffb00000-0x00000000ffffffff] reserved [ 0.000000] NX (Execute Disable) protection: active .....
Lestu líka: Stjórnaðu Linux skrám á áhrifaríkan hátt með því að nota skipanir head, tail og cat
2. Listaðu öll greind tæki
Til að uppgötva hvaða harða diska hefur fundist af kjarnanum geturðu leitað að leitarorði „sda“ ásamt „grep“ eins og sýnt er hér að neðan.
dmesg | grep sda [ 1.280971] sd 2:0:0:0: [sda] 488281250 512-byte logical blocks: (250 GB/232 GiB) [ 1.281014] sd 2:0:0:0: [sda] Write Protect is off [ 1.281016] sd 2:0:0:0: [sda] Mode Sense: 00 3a 00 00 [ 1.281039] sd 2:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA [ 1.359585] sda: sda1 sda2 < sda5 sda6 sda7 sda8 > [ 1.360052] sd 2:0:0:0: [sda] Attached SCSI disk [ 2.347887] EXT4-fs (sda1): mounted filesystem with ordered data mode. Opts: (null) [ 22.928440] Adding 3905532k swap on /dev/sda6. Priority:-1 extents:1 across:3905532k FS [ 23.950543] EXT4-fs (sda1): re-mounted. Opts: errors=remount-ro [ 24.134016] EXT4-fs (sda5): mounted filesystem with ordered data mode. Opts: (null) [ 24.330762] EXT4-fs (sda7): mounted filesystem with ordered data mode. Opts: (null) [ 24.561015] EXT4-fs (sda8): mounted filesystem with ordered data mode. Opts: (null)
ATH: „sda“ fyrsti SATA harði diskurinn, „sdb“ er annar SATA harði diskurinn og svo framvegis. Leitaðu með 'hda' eða 'hdb' ef um IDE harða diskinn er að ræða.
3. Prentaðu aðeins fyrstu 20 úttakslínurnar
„Höfuðið“ ásamt dmesg mun sýna upphafslínur, þ.e. „dmesg | höfuð -20' mun prenta aðeins 20 línur frá upphafspunktinum.
dmesg | head -20 [ 0.000000] Initializing cgroup subsys cpuset [ 0.000000] Initializing cgroup subsys cpu [ 0.000000] Initializing cgroup subsys cpuacct [ 0.000000] Linux version 3.11.0-13-generic ([email ) (gcc version 4.8.1 (Ubuntu/Linaro 4.8.1-10ubuntu8) ) #20-Ubuntu SMP Wed Oct 23 17:26:33 UTC 2013 (Ubuntu 3.11.0-13.20-generic 3.11.6) [ 0.000000] KERNEL supported cpus: [ 0.000000] Intel GenuineIntel [ 0.000000] AMD AuthenticAMD [ 0.000000] NSC Geode by NSC [ 0.000000] Cyrix CyrixInstead [ 0.000000] Centaur CentaurHauls [ 0.000000] Transmeta GenuineTMx86 [ 0.000000] Transmeta TransmetaCPU [ 0.000000] UMC UMC UMC UMC [ 0.000000] e820: BIOS-provided physical RAM map: [ 0.000000] BIOS-e820: [mem 0x0000000000000000-0x000000000009fbff] usable [ 0.000000] BIOS-e820: [mem 0x00000000000f0000-0x00000000000fffff] reserved [ 0.000000] BIOS-e820: [mem 0x0000000000100000-0x000000007dc08bff] usable [ 0.000000] BIOS-e820: [mem 0x000000007dc08c00-0x000000007dc5cbff] ACPI NVS [ 0.000000] BIOS-e820: [mem 0x000000007dc5cc00-0x000000007dc5ebff] ACPI data [ 0.000000] BIOS-e820: [mem 0x000000007dc5ec00-0x000000007fffffff] reserved
4. Prentaðu aðeins síðustu 20 línur af úttak
„Hallinn“ ásamt dmesg skipuninni mun prenta aðeins 20 síðustu línur, þetta er gagnlegt ef við setjum inn færanlegt tæki.
dmesg | tail -20 parport0: PC-style at 0x378, irq 7 [PCSPP,TRISTATE] ppdev: user-space parallel port driver EXT4-fs (sda1): mounted filesystem with ordered data mode Adding 2097144k swap on /dev/sda2. Priority:-1 extents:1 across:2097144k readahead-disable-service: delaying service auditd ip_tables: (C) 2000-2006 Netfilter Core Team nf_conntrack version 0.5.0 (16384 buckets, 65536 max) NET: Registered protocol family 10 lo: Disabled Privacy Extensions e1000: eth0 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None Slow work thread pool: Starting up Slow work thread pool: Ready FS-Cache: Loaded CacheFiles: Loaded CacheFiles: Security denies permission to nominate security context: error -95 eth0: no IPv6 routers present type=1305 audit(1398268784.593:18630): audit_enabled=0 old=1 auid=4294967295 ses=4294967295 res=1 readahead-collector: starting delayed service auditd readahead-collector: sorting readahead-collector: finished
5. Leitaðu að greindum tæki eða sérstökum streng
Það er erfitt að leita í sérstökum streng vegna lengd dmesg úttaks. Svo, síaðu línurnar með streng eins og 'usb' 'dma' 'tty' og 'minni' o.s.frv.
dmesg | grep -i usb dmesg | grep -i dma dmesg | grep -i tty dmesg | grep -i memory
[ 0.000000] Scanning 1 areas for low memory corruption [ 0.000000] initial memory mapped: [mem 0x00000000-0x01ffffff] [ 0.000000] Base memory trampoline at [c009b000] 9b000 size 16384 [ 0.000000] init_memory_mapping: [mem 0x00000000-0x000fffff] [ 0.000000] init_memory_mapping: [mem 0x37800000-0x379fffff] [ 0.000000] init_memory_mapping: [mem 0x34000000-0x377fffff] [ 0.000000] init_memory_mapping: [mem 0x00100000-0x33ffffff] [ 0.000000] init_memory_mapping: [mem 0x37a00000-0x37bfdfff] [ 0.000000] Early memory node ranges [ 0.000000] PM: Registered nosave memory: [mem 0x0009f000-0x000effff] [ 0.000000] PM: Registered nosave memory: [mem 0x000f0000-0x000fffff] [ 0.000000] please try 'cgroup_disable=memory' option if you don't want memory cgroups [ 0.000000] Memory: 2003288K/2059928K available (6352K kernel code, 607K rwdata, 2640K rodata, 880K init, 908K bss, 56640K reserved, 1146920K highmem) [ 0.000000] virtual kernel memory layout: [ 0.004291] Initializing cgroup subsys memory [ 0.004609] Freeing SMP alternatives memory: 28K (c1a3e000 - c1a45000) [ 0.899622] Freeing initrd memory: 23616K (f51d0000 - f68e0000) [ 0.899813] Scanning for low memory corruption every 60 seconds [ 0.946323] agpgart-intel 0000:00:00.0: detected 32768K stolen memory [ 1.360318] Freeing unused kernel memory: 880K (c1962000 - c1a3e000) [ 1.429066] [drm] Memory usable by graphics device = 2048M
6. Hreinsaðu dmesg Buffer Logs
Já, við getum hreinsað dmesg logs ef þess er krafist með skipuninni hér að neðan. Það mun hreinsa dmesg hringja biðminni skilaboðaskrár þar til þú framkvæmir skipunina hér að neðan. Samt geturðu skoðað annála sem eru geymdar í '/var/log/dmesg' skrám. Ef þú tengir eitthvað tæki mun það búa til dmesg úttak.
dmesg -c
7. Vöktun dmesg í rauntíma
Sum dreifing leyfir skipunina 'tail -f /var/log/dmesg' einnig fyrir dmesg eftirlit í rauntíma.
watch "dmesg | tail -20"
Ályktun: Dmesg skipunin er gagnleg þar sem dmesg skráir allar kerfisbreytingar sem gerðar eru eða eiga sér stað í rauntíma. Eins og alltaf geturðu man dmesg til að fá frekari upplýsingar.