כיצד לנהל שירותי Systemd באמצעות Systemctl?

מנהל מערכת ושירות ברירת המחדל עבור מרבית ההפצות לינוקס כעת הוא systemd.


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

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

יחידות

הפריטים שמנוהלים על ידי המערכת נקראים יחידות. קבצי היחידה ממוקמים ב- / lib / systemd / system.

יחידות שירות

לניהול שירות, יחידות היעד הן יחידות שירות, עם קבצי יחידות עם סיומת של .שירות.

ניהול שירותי מערכת

הפקודה לניהול יחידות systemd היא systemctl.

שירותי התחלה והפסקה

כדי להפעיל שירות systemd, השתמש בפקודת התחל systemctl:

$ sudo מערכת התחל שם.שירות

אתה יכול להשאיר סיומת שירות. לדוגמה, כדי להפעיל את שרת האפצ’י באובונטו:

$ sudo systemctl התחל apache2

כדי להפסיק שירות פועל:

$ sudo עצירת מערכת. שם שירות

אז, כדי לעצור את שרת האפאצ’י באובונטו:

מערכת sudo מערכת עצירה של apache2

שירותי הפעלה מחדש וטעינה מחדש

כדי להפעיל מחדש שירות פועל, השתמש בפקודה הפעלה מחדש:

$ sudo systemctl הפעל מחדש את name.service

ושם נדרש קובץ התצורה הטעון היחיד

$ sudo systemctl טען מחדש את שם.שירות

הפעלה והשבתה של שירותים

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

$ sudo systemctl לאפשר שם.שירות

כדי להשבית שירות מתחיל אתחול המערכת:

מערכת sudo השבתת את name.service

השבתה אינה מפסיקה שירות פועל.

הצגת מצב שירות

לצפייה במידע על שירות:

שם מצב מצב sudo מערכת שירות

זה יראה לך את מצב השירות ואת השורות הראשונות של קובץ היומן. אז, בזמן שהשירות פועל הוא הפלט של

מצב

הוא

apache2.service – שרת ה- HTTP של Apache
טעון: טעון (/lib/systemd/system/apache2.service; מופעל; הגדרת קביעת הספק מראש: מופעלת)
Drop-In: /lib/systemd/system/apache2.service.d
└─apache2-systemd.conf
פעיל: פעיל (פועל) מאז יום שלישי 2020-05-19 22:11:36 UTC; לפני 4 ימים
תהליך: 116002 ExecReload = / usr / sbin / apachectl חינני (קוד = יצא, מצב = 0 / הצלחה)
PID ראשי: 104165 (apache2)
משימות: 55 (הגבלה: 1024)
CGroup: /system.slice/apache2.service
├─104165 / usr / sbin / apache2 -k התחל
├─116006 / usr / sbin / apache2 -k התחל
└─116007 / usr / sbin / apache2 -k התחל

19 מאי 22:11:36 ubuntu18 systemd [1]: הפעלת שרת ה- HTTP של אפאצ’י…
19 במאי 22:11:36 ubuntu18 systemd [1]: הפעל את שרת ה- Apache HTTP.
21 במאי 06:25:01 ubuntu18 systemd [1]: טען מחדש את שרת ה- HTTP של אפאצ’י.
21 במאי 06:25:01 ubuntu18 systemd [1]: טען מחדש את שרת ה- Apache HTTP.
22 במאי 06:25:01 ubuntu18 systemd [1]: טען מחדש את שרת ה- HTTP של אפאצ’י.

כדי לבדוק אם שירות פעיל:

$ sudo systemctl הוא פעיל name.service

לכן, בזמן ששירות apache2 פועל, הפלט של הפקודה systemctl is-active הוא:

$ sudo systemctl פעיל Apache2
פעיל

כדי לבדוק אם שירות פעיל:

$ sudo systemctl מאופשר name.service.

מצב צפייה במערכת

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

לצפייה בכל סוגי היחידות

עזרה של $ sudo systemctl
סוגי יחידות זמינות:
שירות
שקע
יעד
התקן
הר
אוטומונט
להחליף
טיימר
שביל
פרוסה
היקף

לרשימת כל היחידות המותקנות, השתמש בקבצי יחידת רשימה

$ sudo systemctl רשימת יחידות קבצים
סטטוס יחידה
proc-sys-fs-binfmt_misc.automount סטטי
-.הר שנוצר
boot-efi.mount שנוצר
dev-hugepages. סטטי
dev-mqueue. סטטי
mnt.mount שנוצר
proc-sys-fs-binfmt_misc.mount סטטי
sys-fs-fuse-connections. סטטי
sys-kernel-config.mount סטטי
sys-kernel-debug.mount סטטי
acpid.path מופעל
apport-autoreport.path מופעל
systemd-ask-password-console.path סטטי
systemd-ask-password-plymouth.path סטטי
systemd-ask-password-wall.path סטטי
מושב -161. היקף חולף
accounts-daemon.service מופעל

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

  • סטטי: פירוש הדבר שלא ניתן להפעיל את היחידה, לבצע פעולה חד פעמית או שהיא תלות של יחידה אחרת ולא ניתן להפעיל אותה מעצמה.
  • רעול פנים: יחידה הרשומה כמוסווה פירושה שהיא בלתי ניתנת לביצוע לחלוטין, מכיוון שהיא מקושרת ל / dev / null. זה נקרא מיסוך היחידה. זה מונע את הפעלת השירות, ידנית או אוטומטית.

פרט את כל השירותים המותקנים

הפקודה systemctl רשימת יחידה-קבצים עם מסנן שירות -t או -type מציג את מצב השירותים המותקנים בלבד.

שירות sudo systemctl list-unit-files -t שירות

סטטוס יחידה
accounts-daemon.service מופעל
acpid.service מושבת
apache-htcacheclean.service מושבת
[מוגן בדוא”ל] נכה
apache2.service מופעל
[מוגן בדוא”ל] נכה
apparmor.service מופעל
apport-autoreport.service סטטי
[מוגן בדוא”ל] סטטי
apport.service שנוצר
שדרוג מתאים מדי יום. שירות סטטי
סטטי-יומי. שירות סטטי
atd.service מופעל
[מוגן בדוא”ל] מופעל
השירות מופעל
bootlogd.service רעול פנים
שירות רעול פנים

כדי לראות את כל יחידות השירות הפעילות, השתמש ביחידות רשימה עם מסנן שירות -t

שירות sudo systemctl רשימת יחידות – t

תאור יחידות טעינה יחידה
accounts-daemon.service העמיס את שירות החשבונות הפעיל
apache2.service נטען פעיל בהפעלת שרת ה- Apache HTTP
apparmor.service טעינה אתחול אפליקציה פעיל של AppArmor
apport.service העמיס LSB פעיל שיצא: הדור אוטומטי של דוחות קריסות
atd.service העמיס מתזמן ביצוע דחוף פעיל
blk-accessible.service נטען פעיל ויצא זמינות של מכשירי חסום
cloud-config.service נטען פעיל שיצא החל החל את ההגדרות שצוינו ב- cloud-con
cloud-final.service העמיס פעיל שיצא להורג מבצע קבצי ענן / סקריפטים אחרונים
cloud-init-local.service נטען פעיל שיצא משימת ענן init ראשונית (קדם רשת)
cloud-init.service נטען פעיל שיצא ממלא ראשוני בענן (שירות מטא נתונים)
console-setup.service טעון פעיל שיצא הגדר גופן ומסמל מפתחות של קונסולה
cron.service נטען פעיל פועל רגיל מעבד תוכנית רקע

לפלט העמודות הבאות:

  • יחידה: שם יחידת השירות systemd
  • עומס: מראה אם ​​הגדרת היחידה נקראה וטעונה כראוי
  • פעיל: מתאר אם היחידה פעילה.
  • SUB: מצב הפעלה ברמה נמוכה של היחידה, תוך מתן מידע מפורט יותר על היחידה. זה ישתנה לפי סוג היחידה.
  • תיאור: התיאור של יחידת השירות.

סיכום

אני מקווה שזה נותן לך מושג לגבי השימוש ב- systemctl לניהול שירותי לינוקס. אם אתה מעוניין ללמוד עוד, תוכל לבדוק זאת קורס שליטה Linux.

תגיות:

  • לינוקס

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map