หากคุณเป็นผู้ใช้หรือผู้ดูแลระบบ Linux คุณจำเป็นต้องทราบวิธีจัดการบริการบนระบบของคุณ บริการคือโปรแกรมที่ทำงานอยู่เบื้องหลังและมีฟังก์ชันการทำงานที่จำเป็น เช่น เครือข่าย การพิมพ์ การบันทึก และอื่นๆ
แต่คุณจะแสดงรายการ เริ่ม หยุด เปิดใช้งาน ปิดใช้งาน หรือรีสตาร์ทบริการบน Linux ได้อย่างไร คำตอบคือคำสั่ง systemctlคำสั่งนี้เป็นส่วนหนึ่งของ systemdซึ่งเป็นระบบที่ทันสมัยและตัวจัดการบริการสำหรับการกระจาย Linux เช่น Ubuntu และ Debian
หากคุณอายุ ผู้เริ่มต้นลินุกซ์ และต้องการจัดการบริการเหล่านี้โดยใช้ systemctelให้ทำตามขั้นตอนด้านล่าง
แสดงรายการบริการทั้งหมดด้วย systemctl
หากต้องการแสดงรายการบริการทั้งหมดบนระบบ Linux ของคุณ ให้รันคำสั่งนี้ในเทอร์มินัล:
sudo systemctl list-units –type service
นี่จะแสดงตารางที่มีห้าคอลัมน์: UNIT, LOAD, ACTIVE, SUBและ คำอธิบาย
คอลัมน์ UNITแสดงชื่อของไฟล์หน่วยบริการ ซึ่งเป็นไฟล์การกำหนดค่าและคำจำกัดความของบริการ ไฟล์นี้มีข้อมูลเกี่ยวกับบริการนี้ทำอะไรและจะจัดการอย่างไร คุณยังดูคำอธิบายโดยย่อสำหรับบริการได้ในคอลัมน์ DESCRIPTION
คอลัมน์ LOADแสดงว่าไฟล์หน่วยบริการถูกโหลดลงในหน่วยความจำหรือไม่ คอลัมน์ ใช้งานอยู่จะแสดงว่าเป็นบริการที่ทำงานอยู่หรือไม่ สุดท้าย คอลัมน์ SUBจะแสดงสถานะย่อยของบริการ เช่น ทำงาน ออก หรือล้มเหลว
คุณยังสามารถใช้ตัวเลือก -aหรือ –allแทนบริการ –typeเพื่อแสดงรายการหน่วยทุกประเภท ไม่ใช่แค่บริการ .
แสดงรายการบริการที่ใช้งานอยู่ด้วย systemctl
หากคุณต้องการดูบริการที่กำลังใช้งานอยู่ (ทำงาน) บนระบบของคุณเท่านั้น ให้รันคำสั่งนี้ในเทอร์มินัล Linux:
sudo systemctl list-units –type service –state active
การดำเนินการนี้จะกรองบริการที่ไม่ได้ใช้งาน (หยุด) หรือล้มเหลวออก
แสดงรายการบริการที่ไม่ได้ใช้งานด้วย systemctl
ในทำนองเดียวกัน หากคุณต้องการดูเฉพาะบริการที่ไม่ได้ใช้งาน (หยุด) บนระบบของคุณในปัจจุบัน ให้รันคำสั่งนี้ในเทอร์มินัล:.
sudo systemctl list-units –type service –state inactive
การดำเนินการนี้จะกรองบริการที่ใช้งานอยู่ (ทำงาน) หรือล้มเหลวออก
รายการบริการที่ล้มเหลวด้วย systemctl
หากคุณต้องการดูบริการที่ไม่สามารถเริ่มต้นหรือหยุดบนระบบของคุณ ให้เปิดเทอร์มินัลแล้วรันคำสั่งนี้:
sudo systemctl list-units –type service –state failed
การดำเนินการนี้จะกรองบริการที่ใช้งานอยู่ (กำลังทำงาน) หรือไม่ใช้งาน (หยุด) ออกไป
แสดงรายการบริการที่เปิดใช้งานด้วย systemctl
หากต้องการดูว่าบริการใดบ้างที่เปิดใช้งานให้เริ่มโดยอัตโนมัติในเวลาบูตระบบของคุณ ให้รันคำสั่งนี้ในเทอร์มินัล:
sudo systemctl list-unit-files –type service –state เปิดใช้งาน
นี่จะแสดงตารางที่มีสองคอลัมน์: UNIT FILEและ STATEคอลัมน์ UNIT FILE แสดงชื่อของไฟล์หน่วยบริการ คอลัมน์ STATE แสดงว่าบริการเปิดอยู่หรือไม่
แสดงรายการบริการที่ปิดใช้งานด้วย systemctl
หากต้องการดูว่าบริการใดถูกปิดใช้งานและจะไม่เริ่มทำงานโดยอัตโนมัติในเวลาบูตระบบของคุณ ให้เปิดเทอร์มินัล Linux แล้วเรียกใช้คำสั่งนี้:
sudo systemctl list-unit-files –type service –state ปิดการใช้งาน
การดำเนินการนี้จะกรองบริการที่เปิดใช้งานหรือมาสก์ออก
แสดงรายละเอียดของบริการด้วย systemctl
หากต้องการแสดงรายละเอียดเพิ่มเติมเกี่ยวกับบริการเฉพาะบนระบบของคุณ ให้รันคำสั่งนี้ในเทอร์มินัล:
สถานะ sudo systemctl <ชื่อบริการ
แทนที่
สิ่งนี้จะแสดงข้อมูลให้คุณเห็น เช่น คำอธิบาย สถานะโหลด สถานะใช้งาน สถานะย่อย ID กระบวนการ (PID) การใช้งานหน่วยความจำ การใช้งาน CPU และบันทึกการบริการล่าสุด
คุณยังสามารถใช้คำสั่งย่อย show แทนสถานะเพื่อแสดงคุณสมบัติของบริการทั้งหมดในรูปแบบ name=value
เริ่มบริการด้วย systemctl
หากต้องการเริ่มบริการที่หยุดบนระบบของคุณ ให้รันคำสั่งนี้ในเทอร์มินัล Linux ของคุณ:
sudo systemctl เริ่มต้น <ชื่อบริการ
แทนที่
การดำเนินการนี้จะเริ่มบริการในเบื้องหลังและกลับสู่ข้อความแจ้ง คุณสามารถใช้คำสั่งย่อยสถานะเพื่อตรวจสอบว่าบริการกำลังทำงานอยู่
หยุดบริการด้วย systemctl
หากต้องการหยุดบริการที่ทำงานบนระบบของคุณ ให้รันคำสั่งนี้ในเทอร์มินัล:
sudo systemctl หยุด <บริการ-ชื่อ>
แทนที่
การดำเนินการนี้จะหยุดบริการในเบื้องหลังและกลับสู่ข้อความแจ้ง คุณสามารถใช้คำสั่งย่อยสถานะเพื่อตรวจสอบว่าบริการหยุดทำงานแล้ว
เริ่มบริการใหม่ด้วย systemctl
ต้องการแก้ไขและโหลดไฟล์การกำหนดค่าของบริการซ้ำและใช้การเปลี่ยนแปลงหรือไม่ หากทำเช่นนั้น คุณจะต้องเริ่มบริการใหม่ในภายหลัง
หากต้องการรีสตาร์ทบริการที่ทำงานบนระบบของคุณ ให้เปิดเทอร์มินัลแล้วรันคำสั่งนี้:
sudo systemctl รีสตาร์ท
แทนที่
การดำเนินการนี้จะหยุดและเริ่มบริการในเบื้องหลังและกลับสู่ข้อความแจ้ง คุณสามารถใช้คำสั่งย่อยสถานะเพื่อตรวจสอบว่าบริการกำลังทำงานอยู่
โหลดบริการใหม่ด้วย systemctl
บริการบางอย่างรองรับการโหลดการกำหนดค่าซ้ำโดยไม่ต้องหยุดและเริ่มต้น การโหลดบริการซ้ำช่วยให้คุณทำการเปลี่ยนแปลงเล็กน้อยในไฟล์การกำหนดค่าของบริการเหล่านั้นได้โดยไม่ต้องรีสตาร์ท ซึ่งจะเร็วกว่าและรบกวนน้อยกว่าการรีสตาร์ท
หากต้องการโหลดบริการที่รองรับฟีเจอร์นี้อีกครั้ง ให้ใช้คำสั่ง systemctlต่อไปนี้ในเทอร์มินัล:
sudo systemctl รีโหลด
แทนที่
การดำเนินการนี้จะโหลดบริการซ้ำในเบื้องหลังและกลับสู่ข้อความแจ้ง คุณสามารถใช้คำสั่งย่อยสถานะเพื่อตรวจสอบว่าบริการกำลังทำงานอยู่
เปิดใช้บริการด้วย systemctl
หากต้องการเปิดใช้งานบริการให้เริ่มโดยอัตโนมัติในเวลาบูตบนระบบของคุณ ให้รันคำสั่งนี้ในเทอร์มินัล:
sudo systemctl เปิดใช้งาน <ชื่อบริการ>.
แทนที่
การดำเนินการนี้จะสร้างลิงก์สัญลักษณ์จากไฟล์หน่วยบริการไปยังตำแหน่งภายใต้ /etc/systemd/systemซึ่งบอกให้ systemd เริ่มต้นในเวลาบูต
คุณยังสามารถใช้ตัวเลือก –ตอนนี้เพื่อเปิดใช้งานและเริ่มบริการพร้อมกันได้ ตัวอย่างเช่น:
เปิดใช้งาน sudo systemctl – ตอนนี้
ปิดใช้งานบริการด้วย systemctl
หากต้องการปิดใช้งานบริการไม่ให้เริ่มโดยอัตโนมัติในเวลาบูตบนระบบของคุณ ให้รันคำสั่งนี้ในเทอร์มินัล Linux:
sudo systemctl ปิดการใช้งาน
แทนที่
การดำเนินการนี้จะลบลิงก์สัญลักษณ์ออกจาก /etc/systemd/system ซึ่งจะแจ้ง systemd ว่าอย่าเริ่มทำงานขณะบูต
คุณยังสามารถใช้ตัวเลือก –ตอนนี้เพื่อปิดและหยุดบริการในเวลาเดียวกัน:
sudo systemctl ปิดการใช้งาน – ตอนนี้
แสดงรายการบริการที่ปกปิดด้วย systemctl
การมาสก์บริการหมายถึงการเชื่อมโยงไฟล์หน่วยกับ /dev/nullซึ่งป้องกันไม่ให้โหลดหรือจัดการโดย systemd ซึ่งจะเพิ่มการป้องกันอีกชั้นหนึ่ง
หากต้องการดูว่าบริการใดบ้างที่ถูกมาสก์และไม่สามารถเริ่มหรือหยุดได้ด้วยตนเองหรือโดยอัตโนมัติบนระบบของคุณ ให้รันคำสั่งนี้ในเทอร์มินัลของ Linux PC:
sudo systemctl list-unit-files – ประเภทบริการ – สถานะถูกปิดบัง
รายการบริการที่ปกปิดจะปรากฏในรายการ (โดยที่ สวมหน้ากากแสดงรายการอยู่ใต้คอลัมน์ STATE)
มาสก์บริการด้วย systemctl
เรียกใช้คำสั่งนี้ในเทอร์มินัลเพื่อปกปิดบริการไม่ให้เริ่มต้น หยุดทำงานด้วยตนเอง หรือโดยอัตโนมัติบนระบบของคุณ:
มาสก์ sudo systemctl
แทนที่
สิ่งนี้จะสร้างลิงก์สัญลักษณ์จากไฟล์หน่วยบริการไปที่ /dev/nullเพื่อป้องกันไม่ให้โหลดหรือจัดการโดย systemd.
เปิดโปงบริการด้วย systemctl
คุณสามารถเปิดโปงบริการที่ถูกมาสก์ก่อนหน้านี้ได้ การดำเนินการนี้จะลบลิงก์สัญลักษณ์ไปยัง /dev/null และอนุญาตให้นำไปใช้และโหลดที่อื่นได้
หากต้องการเปิดโปงบริการที่ถูกปกปิดไว้ก่อนหน้านี้ในระบบของคุณ ให้รันคำสั่งนี้:
sudo systemctl เปิดโปง
แทนที่
การควบคุมพีซี Linux ของคุณ
หาก Linux PC ของคุณใช้ systemd ในการจัดการบริการระบบ คุณสามารถใช้คำสั่ง systemctlเพื่อจัดการบริการได้ คุณสามารถเริ่ม หยุด โหลดซ้ำ ปิดใช้งาน และควบคุมบริการของคุณ ทำให้คุณควบคุม Linux PC ของคุณได้ดียิ่งขึ้น
อีกวิธีหนึ่งที่คุณสามารถจัดการพีซีของคุณคือการจำกัดการเข้าถึงไฟล์บางไฟล์ คุณสามารถ ใช้คำสั่ง chmod บน Linux PC ของคุณเพื่ออนุญาต (หรือไม่อนุญาต) การเข้าถึง
ไม่แน่ใจว่า distro Linux ของคุณเหมาะสมหรือไม่? คุณควรลองใช้ อีกหนึ่งการกระจาย Linux ชั้นนำ แทน หรือลองใช้ ดิสทริบิวเตอร์ Linux แบบพกพา ก็ได้ การใช้ distro แบบพกพาจะช่วยให้คุณสามารถสลับไปมาระหว่างกันได้อย่างง่ายดาย
.