שירות לעומת Systemctl

Syrwt L Wmt Systemctl



השירות וה-systemctl הם שני כלי שירות בשורת הפקודה המשמשים לניהול שירותי מערכת. שני כלי השירות שייכים לשתי מערכות init שונות, SysV ו-systemd בהתאמה.

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

לפני שנמשיך הלאה, בואו נבין תחילה שתי מערכות init פופולריות של לינוקס; System ו-Systemd.







מערכת V לעומת Systemd

מערכת init בלינוקס היא חלק מכריע בתהליך האתחול. זהו התהליך הראשון עם PID 1 שמתחיל כאשר המערכת מאתחלת. לאחר מכן הוא מתחיל את התהליכים הקיימים בקובץ inittab. System V גם מכירה SysV ו-systemd הן מערכות Linux init פופולריות.



ה SysV היא מערכת init ישנה יותר והייתה חלק מהפצות ישנות יותר של יוניקס ולינוקס. הוא מנהל את שירותי המערכת באמצעות הסקריפטים הממוקמים ב-/etc/init.d. כמה הפצות לינוקס שעדיין משתמשות ב-SysV הן Slackware, Gentoo ו-antiX Linux.



מצד שני, systemd הושק בשנת 2010 ואומץ במהירות על ידי הפצות לינוקס רבות. מערכת systemd init מנהלת את השירותים באמצעות קבצי שירות. כעת הוא חלק מכל ההפצות המודרניות של לינוקס, כולל, Red Hat Enterprise Linux, CentOS, Amazon Linux, Fedora, Debian, Ubuntu והפצות המבוססות על מערכות הפעלה אלו.





ה-systemd הרבה יותר יעיל בהשוואה ל-SysV. הוא מספק זמן אתחול מהיר יותר, ניהול שירות יעיל וטיפול בתלות.

שתי מערכות init מספקות שני כלי עזר בשורת פקודה לניהול שירות.



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

פיקוד שירות

ה שֵׁרוּת הפקודה היא מעטפת סקריפט המריץ סקריפטים הממוקמים ב- /etc/init.d מַדרִיך. זה פותח כדי לנהל את השירות של SysV אוֹ מערכת V מערכת init. הפצות הלינוקס המשתמשות ב-SysV כמערכת init משתמשות ב- שֵׁרוּת פקודה לניהול שירות.

התחביר הכללי לשימוש בפקודת השירות ניתן להלן.

שֵׁרוּת [ שם השירות ] [ פעולה ]

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

שֵׁרוּת --סטטוס-הכל

ה + מציין שהשירות פועל, וה- מראה שהשירות אינו פעיל.

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

שֵׁרוּת [ שם השירות ] סטָטוּס

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

שֵׁרוּת [ שם השירות ] הַתחָלָה

שֵׁרוּת [ שם השירות ] תפסיק

שֵׁרוּת [ שם השירות ] איתחול

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

הפקודה systemctl

באמצעות הפקודה systemctl, אתה יכול לשלוט בשירותים ב- /lib/systemd/system ו /etc/systemd/system ספריות. זהו רכיב של systemd; מערכת init שנמצאת ברוב ההפצות העכשוויות של לינוקס.

ה-systemctl נועד לספק שליטה רבה יותר על ניהול שירות המערכת. התחביר הכללי לשימוש בפקודה systemctl ניתן להלן:

systemctl [ אוֹפְּצִיָה ] [ שם השירות ]

כדי לבדוק את המצב של כל השירותים, השתמש בפקודה הבאה.

systemctl רשימה-יחידות --סוּג =שירות --את כל

עבור שימוש בשירות ספציפי:

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

פקודות לניהול בסיסי של השירות באמצעות systemctl ניתנות להלן:

systemctl לְאַפשֵׁר [ שם השירות ]

התחל systemctl [ שם השירות ]

systemctl עצור [ שם השירות ]

systemctl להשבית [ שם השירות ]

הפעלה מחדש של systemctl [ שם השירות ]

פקודת systemctl חורגת מכל מה שקשור לשליטה בשירותים. הטבלה למטה מכילה כמה פקודות systemctl מתקדמות.

רשימה-נתיבים לרשימת הנתיב של כל השירותים בזיכרון
is-active [service_name] כדי לבדוק אם השירות או היחידה פועלים או לא
תלויות רשימה [שם_שירות] כדי להדפיס את רשימת התלות של השירות שצוין
איפוס-נכשל לאפס את השירותים שנכשלו בטעינתם עקב חריגה כלשהי
mask [service_name] כדי להשבית את השירות ולגרום לו לא להפעיל
קבל ברירת מחדל כדי להדפיס את רמת הריצה או היעד המוגדר כברירת מחדל
set-default [יעד] כדי להגדיר את רמת הריצה או היעד המוגדר כברירת מחדל
פועל במערכת לבדיקת מצב התפעול של המערכת
לְאַתחֵל כדי לאתחל את המערכת
כיבוי כדי לכבות את המערכת

מדוע עדיין יש שירות Command בהפצות לינוקס עם systemd init System

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

סיכום

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