כיצד להציג יומני Systemctl

Kyzd Lhzyg Ywmny Systemctl



ה-systemd היא אחת ממערכות ה-init המאומצות ב-Linux. היתרון העיקרי של systemd הוא היכולת שלה לנהל את יומני המערכת. זה אוסף את כל הודעות הליבה ותהליכי המשתמש לתוך יומן שנקרא כתב עת . ה מתועד הוא הדמון שלוכד ומנהל את היומנים בקובץ בינארי. לדמון זה יש את היתרון העיקרי של אחסון נתונים בצורה מובנית ומאונדקסת, מה שמקל על הגישה והניתוח באמצעות journalctl תוֹעֶלֶת.

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

הערה: הפקודות המוזכרות במדריך זה מבוצעות על אובונטו. הם יעבדו ללא שגיאות בכל ההפצות של לינוקס שמגיעות עם מערכת init systemd.







שיטות להצגת יומני systemctl

ישנן שתי גישות לצפייה ביומני מערכת ב-Linux:



ה-systemctl נותן את היומנים העדכניים ביותר הספציפיים לשירות, בעוד ש-journalctl נותן יומנים מעמיקים בכל המערכת של כל השירותים והשירות הספציפי.



אני אבדוק את שני כלי השירות כדי להציג יומני systemd. אבל ראשית, בואו נבין את ההבדל העיקרי בין פקודות systemctl ל-journalctl.





מה זה systemctl

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

מה זה journalctl

ה-journalctl הוא כלי שורת פקודה המשמש להדפסת היומנים שנאספו על ידי systemd. בהשוואה ל-systemctl, הוא מספק פלט מפורט עם אפשרויות סינון. כלי זה נועד ל:



  • קריאת יומנים (יומן הישן ביותר מגיע ראשון)
  • מעקב אחר יומנים
  • סנן יומנים על סמך זמן, שירות או משתמש

ה-systemd אוסף יומנים מהקרנל, השירותים והדמונים ומאחסן אותם במקום מרכזי.

כיצד להציג יומן של שירות באמצעות systemctl

התחביר הכללי כדי למצוא את היומן של שירות באמצעות systemctl השירות מוזכר להלן.

מצב systemctl [ שם השירות ]

לדוגמה, כדי להציג את פרטי היומן של smbd.service השתמש בפקודה המפורטת למטה.

סטטוס systemctl smbd.service

כדי לקבל פלט ללא עימוד, הוסף את -ללא איתור אפשרות בפקודה.

סטטוס systemctl smbd.service --ללא איתור

כיצד להציג יומן של שירות באמצעות journalctl

כדי להציג את היומן של שירות ספציפי של systemd, השתמש journalctl עם ה שם פקודה ושירות או יחידה.

journalctl [ שם השירות ]

בפקודה לעיל, ה דגל, קיצור של -יחידה משמש לסינון journalctl פלט לפי שם יחידה.

לדוגמה, כדי להדפיס את היומן של smbd דמון, אני אחליף את [שם היחידה] עם smbd.service .

journalctl smbd.service

בפלט, ניתן לראות שהערך הישן ביותר בא ראשון ולאחר מכן יומן לאחר כל אתחול רשום.

כדי לקבל את הרשומה העדכנית ביותר שימוש ראשון -זה קיצור ל –סיום הביפר.

journalctl smbd.service -זה

אם אתה רוצה להשמיט את העימוד מהפלט, פשוט הוסף את ה -ללא איתור בפקודות הנ'ל.

כדי להדפיס באופן רציף את ערכי היומן בשימוש בזמן אמת קיצור ל -לעקוב אחר .

journalctl smbd.service

ניתן להרחיב את הסינון עוד יותר על ידי שימוש בדגל -b הקיצור של -מַגָף , שמדפיס את היומנים על סמך האתחול הנוכחי.

journalctl [ שם היחידה ]

בואו נדפיס יומנים של smbd.service מהאתחול האחרון.

journalctl smbd.service

הפלט שלמעלה דומה לפלט שאנו מקבלים באמצעות מצב systemctl פקודה.

כדי לקבל סקירה מפורטת של יומן, השתמש ב- -איקס קיצור ל -קָטָלוֹג אוֹפְּצִיָה.

journalctl smbd.service -איקס

זה יצורף תיאור קצר של היומן.

כעת, כדי להדפיס יומנים המבוססים על זמן באמצעות journalctl יש שתי אפשרויות, קיצור ל -מאז ו -IN קיצור ל -עד .

journalctl [ שם היחידה ] '[שנה-חודש-יום] [שעות:דקות:שניות]'

לדוגמה, כדי להציג את יומני היחידה smbd מ 2024:01:30 12:05:00 .

journalctl smbd.service '2024:01:30 12:05:00'

סיכום

כדי להציג את יומני המערכת של שירות, ישנם שני כלי עזר עיקריים, journalctl ו-systemctl. ה-journalctl תוכנן במיוחד לצפייה ביומנים של systemd. עם זאת, ל-systemctl יש גם אפשרות להדפיס את היומן של השירות. כדי להדפיס את היומן של שימוש בשירות, journalctl -u [שם יחידה] ו systemctl [שם היחידה].