การกระจาย Linux หลัก/a> ทั้งหมดใช้ Systemd ซึ่งเป็นระบบ init ที่ทำงานโดยอาศัยการเปิดใช้งานและปิดใช้งานไฟล์”บริการ”หากคุณกำลังพยายามแสดงรายการไฟล์บริการเหล่านี้ แต่ไม่ทราบวิธีดำเนินการคุณจะต้องใช้คำสั่ง systemctl

ในคู่มือนี้เราจะพูดถึงวิธีต่างๆที่คุณสามารถแสดงรายการไฟล์บริการ Systemd บน Linux ในการเริ่มต้นตรวจสอบให้แน่ใจว่าคุณใช้ระบบปฏิบัติการ Linux กับ Systemd จากนั้นเปิดหน้าต่างเทอร์มินัลแล้วทำตาม

ใช้ Systemd เพื่อแสดงรายการบริการที่ใช้งานอยู่

หากคุณใช้ Systemd เป็นจำนวนมากในบางครั้งคุณอาจต้องการทราบว่ามีบริการใดบ้างที่ใช้งานได้ในขณะที่บูตระบบ Linux ของคุณ การแสดงรายการบริการที่ใช้งานอยู่นั้นง่ายมากและคุณสามารถทำได้ด้วยคำสั่ง systemctl –type=service systemctl –type=service –state=running

คำสั่งนี้เมื่อเรียกใช้จะแสดงตารางของบริการทั้งหมดหากมีการใช้งานอยู่ตลอดจนคำอธิบายสั้น ๆ ในการรันโปรแกรมนี้ เปิดหน้าต่างเทอร์มินัล . เมื่อหน้าต่างเทอร์มินัลเปิดขึ้นให้ดำเนินการตามคำสั่งด้านล่าง

 systemctl--type=service--state=running 

หากคุณกำลังพยายามกรองบริการที่ใช้งานอยู่ทั้งหมดสำหรับบริการใดบริการหนึ่งการดูตารางขนาดใหญ่นี้อาจเป็นเรื่องที่น่าเบื่อ โชคดีที่คำสั่ง systemctl สามารถรวมกับคำสั่ง grep เป็นกลไกการกรอง

ตัวอย่างเช่นหากต้องการตรวจสอบว่า“ snapd.service” กำลังทำงานและโหลดอยู่หรือไม่คุณสามารถเรียกใช้ systemctl –type=service –state=running | grep”snapd” และผลลัพธ์จะแสดงเฉพาะบริการ Snapd แทนที่จะเป็นทั้งตาราง

 systemctl--type=service--state=running | grep'snapd'

หากคุณต้องการบันทึกผลลัพธ์ของตารางเป็นไฟล์ข้อความเพื่อใช้ในภายหลังให้ใช้คำสั่งต่อไปนี้

 systemctl--type=service--state=runningrunning> ~/active-services.txt 

หากต้องการดูไฟล์ข้อความเมื่อใดก็ได้ให้เรียกใช้คำสั่ง cat ด้านล่าง

 cat ~/active-services.txt 

ใช้ Systemd เพื่อแสดงรายการบริการที่ไม่ได้ใช้งาน

การแสดงรายการบริการ Systemd ที่ใช้งานอยู่มีประโยชน์ แต่บริการที่ไม่ได้ใช้งานล่ะ ใช่มันเป็นไปได้ที่จะแสดงรายการเหล่านั้นด้วย วิธีการมีดังนี้ ขั้นแรกให้เปิดหน้าต่างเทอร์มินัล

เมื่อหน้าต่างเทอร์มินัลเปิดขึ้นและพร้อมใช้งานให้เรียกใช้คำสั่ง systemctl –type=service แต่ในช่อง –state= ให้ใส่”inactive”แทน”วิ่ง.”เมื่อทำเช่นนี้คุณจะเห็นว่าบริการ Systemd ใดบ้างที่ไม่ได้ใช้งานบนระบบ Linux ของคุณ

 systemctl--type=service--state=inactive 

เช่นเดียวกับบริการที่ใช้งานอยู่ Systemd จะสร้างตารางที่สวยงามเรียบร้อยและแสดงให้คุณเห็นว่าบริการ Systemd ใดบ้างที่ไม่ได้ใช้งานตายและไม่ได้ใช้ หากคุณต้องการกรองข้อมูลในตารางนี้เพื่อดูว่าบริการบางอย่างเสียหรือไม่คุณสามารถรวมเข้ากับคำสั่ง grep ได้

ตัวอย่างเช่นหากต้องการตรวจสอบว่าไฟล์“ updatedb.service” ไม่ได้ใช้งานหรือไม่คุณสามารถรวม systemctl –type=service –state=inactive เข้ากับคำสั่ง grep ด้านล่าง เพื่อค้นหาในตาราง

 systemctl--type=service--state=inactive | grep'updatedb.service'

หากคุณต้องการบันทึกไฟล์บริการ Systemd ที่ไม่ได้ใช้งานทั้งหมดลงในไฟล์ข้อความเพื่ออ่านในภายหลังให้ใช้คำสั่งต่อไปนี้

 systemctl--type=service--state=inactive> ~/inactive-services.txt 

หากต้องการอ่านไฟล์ข้อความนี้จากหน้าต่างเทอร์มินัลให้ใช้คำสั่ง cat

 cat ~/inactive-services.txt 

ใช้ Systemd เพื่อแสดงรายการบริการที่ติดตั้งทั้งหมด

หากคุณต้องการดูบริการ Systemd ที่ติดตั้งทั้งหมดไม่ว่าจะใช้งานอยู่หรือไม่คุณจะต้องใช้คำสั่ง systemctl list-unit-files –type=service และไม่รวม –state สวิตช์บรรทัดคำสั่ง การยกเว้น -รัฐ Systemd จะสามารถแสดงรายการไฟล์บริการแต่ละไฟล์ในคอมพิวเตอร์ของคุณได้อย่างง่ายดาย

 systemctl list-unit-files--type=service 

เมื่อดำเนินการคำสั่งดังกล่าวแล้ว Systemd จะพิมพ์ตารางพร้อมไฟล์บริการทั้งหมดในระบบ จากที่นี่คุณสามารถจัดเรียงตารางเพื่อค้นหาไฟล์บริการที่คุณต้องการ

หากคุณไม่พบไฟล์บริการเฉพาะคุณสามารถรวมคำสั่ง systemctl list-unit-files –type=service กับคำสั่ง grep เพื่อใช้ตัวกรอง ใช้คำสั่งด้านล่างกรองตารางเพื่อค้นหาไฟล์บริการที่คุณต้องการ

 systemctl list-unit-files--type=service | grep'my-service'

ต้องการส่งออกบริการ Systemd ทั้งหมดไปยังไฟล์ข้อความเพื่ออ่านในภายหลังหรือไม่? ดำเนินการคำสั่งต่อไปนี้

 systemctl list-unit-files--type=service> ~/service-files.txt 

คุณสามารถดูไฟล์ข้อความได้ตลอดเวลาด้วยคำสั่ง cat ด้านล่าง

 cat ~/service-files.txt 

ใช้ Systemd เพื่อแสดงสถานะของแต่ละบริการ

แม้ว่าจะมีประโยชน์ในการทราบวิธีแสดงรายการบริการ Systemd ทั้งหมด แต่บริการที่ใช้งานอยู่และไม่ได้ใช้งาน แต่ก็มีประโยชน์ในการทราบวิธีแสดงรายการสถานะของบริการทีละรายการ วิธีการทำมีดังนี้

ขั้นแรกเปิดหน้าต่างเทอร์มินัล เมื่อหน้าต่างเทอร์มินัลเปิดขึ้นให้ใช้คำสั่ง systemctl status กับบริการใดบริการหนึ่ง ตัวอย่างเช่นหากต้องการค้นหาสถานะของ“ NetworkManager.service” จะมีการเรียกใช้คำสั่งต่อไปนี้

 สถานะ systemctl NetworkManager 

หากคุณต้องการส่งออกผลลัพธ์ของคำสั่งสถานะเป็นไฟล์ข้อความเพื่ออ่านในภายหลังคุณสามารถป้อนคำสั่งด้านล่างนี้

 สถานะ systemctl MyService> ~/MyService-status.txt 

หากต้องการดูไฟล์นี้ให้เรียกใช้คำสั่ง cat ต่อไปนี้

 cat ~/MyService-status.txt 

Categories: IT Info