הקרנל של לינוקס הוא פיסת הנדסה מורכבת. ממצב אתחול מרובה עד למצב ריצה 5 מרובה משתמשים, הליבה של לינוקס מאתחלת ומנהלת את משאבי המחשב, כולל המעבד, הזיכרון, הרשת, פלט הווידאו והאחסון המקומי. כמו הקרנל עובד עם כל אלה תת מערכות ומשאבים שונים, זה יומני שונים ברמה גבוהה הודעות כדי לאפשר למנהלי מערכת יודע מה זה עושה. הודעות אלה ניתן לראות באמצעות הפקודה " dmesg ". הבעיה היא כי הפלט של הקרנל יכול להיראות מורכב ולא מובן לעין לא מאומנת. עם זאת, עם קצת עזרה להבין את היסודות, את " dmesg " הפקודה יכולה להיות כלי חזק מאוד במערכת של מנהל מערכת כלי.

מַגָף

הדרך המהירה ביותר ללמוד על הודעות הקרנל היא לבחון את השורות הראשונות מתהליך האתחול. כדי להציג את העמוד הראשון של הפלט, השתמש בפקודה הבאה:

 dmesg | פָּחוּת 

שלוש השורות הראשונות על האתחול של "קבוצות בקרה" עבור המעבד. אלה לא כל כך מעניין, אלא אם אתה האקר הקרנל. עם זאת, השורה הבאה היא חשובה מאוד. זה יגיד לך מה הגירסה של הקרנל לינוקס אתה מפעיל.

הפלט במכונת הבדיקה שלי קורא:

 גרסת לינוקס 3.13.0-24-generic (buildd @ roseapple) (גרסה Gcc 4.8.2 (Ubuntu 4.8.2-19ubuntu1) # 46-Ubuntu SMP Thu אפר 10 19:08:14 UTC 2014 (אובונטו 3.13.0- 24.46 גנרי 3.13.9) 

מה זה אומר לי כי מכונת הבדיקה שלי פועל לינוקס לינוקס 3.13 אשר נערך על ידי אובונטו ב -10 באפריל 2014.

הבא 80 עד 100 שורות כל הפרטים ברמה נמוכה על ה- BIOS, המעבד ואת הזיכרון. השורה החשובה הבאה היא סיכום של זיכרון המערכת. זה תמיד מתחיל עם "זיכרון:". במכונת הבדיקה שלי, הפלט הוא:

 זיכרון: 1525720K / 1572408K זמין (קוד 6507K ליבה, 641K rwdata, 2752K rodata, 872K init, 924K bss, 46688K שמורות, 659400K highmem) 

המספר אחרי קו נטוי הוא הסכום הכולל של זיכרון המערכת נגיש ליבת לינוקס, במקרה זה 1.5GB. בשלב זה, לינוקס כמעט סיים להסתכל על המעבד והזיכרון, וזה בקרוב להפוך את תשומת הלב שלה לשאר המכונה כולל וידאו, יציאות USB, דיסקים קשיחים וכן הלאה.

זיהוי חומרה

פלט הליבה הוא גם דרך מצוינת לגלות כיצד לינוקס היא אינטראקציה עם החומרה במחשב. לדוגמה, כדי לגלות אילו דיסקים קשיחים מזהה את הקרנל, תוכל לחפש את ההודעות עבור מילת המפתח "sda". לשם כך, השתמש ב- " grep " כך:

 dmesg | grep sda 

"Sda" הוא השם שניתן לדיסק הקשיח הראשון SATA, "sdb" הוא הדיסק הקשיח השני SATA וכן הלאה. אם אתה לא מוצא את הדיסקים תחת "sda", "sdb" וכו ', נסה "hda", "hdb" וכן הלאה.

כדי לקבל מידע בכרטיס הרשת, חפש את "eth0", לדוגמה:

 dmesg | grep eth0 

על מכונת הבדיקה שלי, אחד השורות של "eth0" פלט בנושא מראה:

 e00000 0000: 00: 03.0 eth0: Intel (R) PRO / 1000 חיבור רשת 

זה אומר לי כי כרטיס Ethernet שלי הוא Intel PRO / 1000 (המכונה e1000).

אם אתה מכניס כונן הבזק מסוג USB וברצונך לבדוק אם הוא זוהה על-ידי הליבה ואיזה שם התקן הוקצה לו, תוכל לראות את הודעות הליבה האחרונות באמצעות tail :

 dmesg | זנב -20 

-20 אומר tail להראות את 20 השורות האחרונות של הפלט מ dmesg. פלט דוגמה מראה כי כונן הבזק שנעשה על ידי ADATA הוכנס ליציאת ה- USB, יש לו קיבולת של 8GB וכי הוא הוקצה שם המכשיר של sdd .

dmesg יכול להיות כלי שימושי מאוד עבור מנהלי מערכת. תן לו לנסות ולראות מה אתה יכול ללמוד על המערכת שלך. אם יש לך שאלות, אנא שאל אותם בסעיף הערות, ואנו נראה אם ​​אנחנו יכולים לעזור.