ذكري المظهر

Dmesg الأمر في لينكس

04 uname

04 uname

جدول المحتويات:

Anonim

يعد Linux kernel هو جوهر نظام التشغيل الذي يتحكم في الوصول إلى موارد النظام ، مثل وحدة المعالجة المركزية وأجهزة I / O والذاكرة الفعلية وأنظمة الملفات. يكتب kernel رسائل متنوعة إلى المخزن المؤقت الحلقي kernel أثناء عملية التمهيد ، وعند تشغيل النظام. تتضمن هذه الرسائل معلومات متنوعة حول تشغيل النظام.

المخزن المؤقت الحلقي kernel هو جزء من الذاكرة الفعلية التي تحتوي على رسائل سجل kernel. يحتوي على حجم ثابت ، مما يعني بمجرد امتلاء المخزن المؤقت ، يتم الكتابة فوق سجلات السجلات القديمة.

يتم استخدام الأداة المساعدة لسطر الأوامر dmesg لطباعة والتحكم في مخزن kernel ring في Linux وأنظمة التشغيل الأخرى المشابهة لـ Unix. من المفيد فحص رسائل تمهيد kernel وتصحيح المشكلات المتعلقة بالأجهزة.

في هذا البرنامج التعليمي ، سنغطي أساسيات الأمر dmesg .

باستخدام الأمر dmesg

بناء جملة الأمر dmesg كالتالي:

dmesg

عند dmesg دون أي خيارات ، يكتب dmesg جميع الرسائل من مخزن kernel ring المؤقت إلى الإخراج القياسي:

dmesg

افتراضيًا ، يمكن لجميع المستخدمين تشغيل الأمر dmesg . ومع ذلك ، في بعض الأنظمة ، قد يتم تقييد الوصول إلى dmesg للمستخدمين غير الجذر. في هذه الحالة ، عند استدعاء dmesg ، ستتلقى رسالة خطأ كما يلي:

dmesg: read kernel buffer failed: Operation not permitted

تحدد المعلمة kernel kernel.dmesg_restrict ما إذا كان يمكن للمستخدمين غير dmesg استخدام dmesg لعرض الرسائل من المخزن المؤقت لسجل kernel. لإزالة القيود ، اضبطها على صفر:

sudo sysctl -w kernel.dmesg_restrict=0

عادة ، يحتوي الإخراج على الكثير من خطوط المعلومات ، لذلك فقط الجزء الأخير من الإخراج هو للعرض. لرؤية صفحة واحدة في كل مرة ، قم بإخراج الإخراج إلى أداة مساعدة للبيجر مثل less أو more :

dmesg --color=always | less

- - --color=always يستخدم --color=always للحفاظ على المخرجات الملونة.

dmesg | grep -i usb

يقرأ dmesg الرسائل التي تم إنشاؤها بواسطة kernel من الملف الظاهري /proc/kmsg . يوفر هذا الملف واجهة إلى المخزن المؤقت الحلقي kernel ويمكن فتحه فقط عن طريق عملية واحدة. إذا كانت عملية syslog تعمل على نظامك وتحاول قراءة الملف باستخدام cat ، أو less ، فسيتم تعليق الأمر.

يقوم برنامج syslog daemon بتفريغ رسائل kernel إلى /var/log/dmesg ، بحيث يمكنك أيضًا استخدام ملف السجل هذا:

cat /var/log/dmesg

تشكيل إخراج dmesg

يوفر الأمر dmesg عددًا من الخيارات التي تساعدك في تنسيق وتصفية الإخراج.

أحد الخيارات الأكثر استخدامًا لـ dmesg هو -H ( --human ) ، والتي تُمكِّن المخرجات القابلة للقراءة البشرية. هذا الخيار توجيه الإخراج الإخراج إلى بيجر:

dmesg -H

لطباعة الطوابع الزمنية القابلة للقراءة البشرية ، استخدم الخيار -T (- --ctime ):

dmesg -T

IPv6: ADDRCONF(NETDEV_CHANGE): wlp1s0: link becomes ready

يمكن أيضًا تعيين تنسيق الطابع الزمني باستخدام --time-format الخيار ، والذي يمكن أن يكون ctime أو reltime أو دلتا أو notime أو iso. على سبيل المثال لاستخدام تنسيق دلتا الذي تكتبه:

dmesg --time-format=delta

يمكنك أيضًا دمج خيارين أو أكثر:

dmesg -H -T

لمشاهدة إخراج الأمر dmesg في الوقت الفعلي ، استخدم الخيار -w (- --follow ):

dmesg --follow

تصفية إخراج dmesg

يمكنك تقييد إخراج dmesg على المرافق والمستويات المعطاة.

يمثل المرفق العملية التي أنشأت الرسالة. يدعم dmesg مرافق السجل التالية:

  • user kern - رسائل kernel - رسائل على مستوى المستخدم - mail - برنامج daemon لنظام auth - شياطين auth النظام - رسائل الأمان / التخويل syslog - رسائل syslog الداخلية lpr - news النظام الفرعي للطابعة في الشبكة - النظام الفرعي لأخبار الشبكة

-f ( -f --facility ) الخيار يتيح لك قصر الانتاج على مرافق محددة. يقبل الخيار واحدًا أو أكثر من المرافق المفصولة بفواصل.

على سبيل المثال ، لعرض رسائل kernel و daemons النظام التي ستستخدمها فقط:

dmesg -f kern, daemon

ترتبط كل رسالة سجل بمستوى سجل يوضح أهمية الرسالة. يدعم dmesg مستويات السجل التالية:

  • emerg - النظام في alert غير قابل للاستخدام - يجب اتخاذ إجراء على الفور crit - الشروط الحرجة err - ظروف الخطأ warn - تحذير شروط تحذير - info الحالة العادية ولكن الهامة - debug إعلامي - رسائل مستوى التصحيح

-l (- --level ) الخيار يقيد الإخراج إلى مستويات محددة. يقبل الخيار واحد أو أكثر من مستويات مفصولة بفواصل.

يعرض الأمر التالي الخطأ والرسائل الهامة فقط:

dmesg -l err, crit

تطهير العازلة الدائري

يسمح لك الخيار -C (- --clear ) بمسح المخزن المؤقت الحلقي:

sudo dmesg -C

يمكن فقط الجذر أو المستخدمين الذين لديهم امتيازات sudo مسح المخزن المؤقت.

لطباعة محتويات المخزن المؤقت قبل مسح استخدام الخيار -c ( -c --read-clear ):

sudo dmesg -c

dmesg > dmesg_messages

استنتاج

يسمح لك الأمر dmesg بعرض والتحكم في المخزن المؤقت لحلقة kernel. يمكن أن يكون مفيدًا للغاية عند استكشاف مشكلات kernel أو الأجهزة وإصلاحها.

اكتب man dmesg في جهازك للحصول على معلومات حول جميع خيارات dmesg المتاحة.

محطة نواة dmesg