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

แต่คุณจะแสดงรายการ เริ่ม หยุด เปิดใช้ ปิดใช้งาน หรือเริ่มบริการใหม่บน Linux ได้อย่างไร คำตอบคือคำสั่ง systemctl คำสั่งนี้เป็นส่วนหนึ่งของ systemd ซึ่งเป็นระบบสมัยใหม่และตัวจัดการบริการสำหรับลีนุกซ์ดิสทริบิวชัน เช่น Ubuntu และ Debian

สารบัญ

หากคุณเป็นผู้เริ่มต้นใช้ Linux และต้องการจัดการบริการเหล่านี้โดยใช้ systemctel ให้ทำตามขั้นตอนด้านล่าง

แสดงรายการบริการทั้งหมดด้วย systemctl

หากต้องการแสดงรายการบริการทั้งหมดบนระบบ Linux ให้เรียกใช้คำสั่งนี้ในเทอร์มินัล:

sudo systemctl list-units –type service

นี่จะแสดงตารางที่มีห้าคอลัมน์: UNIT, LOAD, ACTIVE, SUB และ DESCRIPTION

คอลัมน์ UNIT แสดงชื่อไฟล์หน่วยบริการ ซึ่งเป็นไฟล์การกำหนดค่าและคำจำกัดความของบริการ ไฟล์นี้มีข้อมูลเกี่ยวกับสิ่งที่บริการทำและวิธีจัดการ คุณยังสามารถดูคำอธิบายโดยย่อสำหรับบริการได้ในคอลัมน์ DESCRIPTION

คอลัมน์โหลดแสดงว่าโหลดไฟล์หน่วยบริการลงในหน่วยความจำหรือไม่ คอลัมน์ ACTIVE จะแสดงว่าเป็นบริการที่กำลังทำงานอยู่หรือไม่ สุดท้าย คอลัมน์ SUB จะแสดงสถานะย่อยของบริการ เช่น กำลังทำงาน ออก หรือล้มเหลว

คุณยังสามารถใช้ตัวเลือก-a หรือ –all แทน –type service เพื่อแสดงหน่วยทุกประเภท ไม่ใช่แค่บริการเท่านั้น

แสดงรายการบริการที่ใช้งานด้วย systemctl

หากคุณต้องการดูเฉพาะบริการที่ใช้งานอยู่ (กำลังทำงาน) บนระบบของคุณ ให้รันคำสั่งนี้ในเทอร์มินัล Linux:

sudo systemctl list-units –type service –state active

การดำเนินการนี้จะกรองบริการที่ไม่ได้ใช้งาน (หยุดทำงาน) หรือล้มเหลว

แสดงรายการบริการที่ไม่ใช้งานด้วย systemctl

ในทำนองเดียวกัน หากคุณต้องการดูเฉพาะบริการที่ไม่ได้ใช้งาน (หยุดทำงาน) บนระบบของคุณในปัจจุบัน ให้รันคำสั่งนี้ในเทอร์มินัล:

sudo systemctl หน่วยรายการ-ประเภทบริการ-สถานะไม่ใช้งาน

การดำเนินการนี้จะกรองบริการที่ใช้งานอยู่ (กำลังทำงาน) หรือล้มเหลว

แสดงรายการบริการที่ล้มเหลวด้วย systemctl

หากคุณต้องการดูบริการที่ล้มเหลวในการเริ่มหรือหยุดในระบบของคุณ ให้เปิดเทอร์มินัลแล้วเรียกใช้ คำสั่งนี้:

sudo systemctl list-units –type service –state ล้มเหลว

การดำเนินการนี้จะกรองบริการที่ใช้งานอยู่ (กำลังทำงาน) หรือไม่ได้ใช้งาน (หยุดทำงาน) ออก

แสดงรายการบริการที่เปิดใช้งานด้วย systemctl

หากต้องการดูว่าบริการใดเปิดใช้งานโดยอัตโนมัติเมื่อบูตระบบของคุณ ให้รันคำสั่งนี้ในเทอร์มินัล:

sudo systemctl list-unit-files –type service –state enable

นี่จะแสดงตารางที่มีสองคอลัมน์: UNIT FILE และ STATE คอลัมน์ UNIT FILE แสดงชื่อไฟล์หน่วยบริการ คอลัมน์สถานะแสดงว่าบริการเปิดใช้งานหรือไม่

แสดงรายการบริการที่ปิดใช้งานด้วย systemctl

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

sudo systemctl list-unit-files –type service –state closed

การดำเนินการนี้จะกรองบริการที่เปิดใช้งานหรือมาสก์ออก

แสดงรายละเอียดของบริการด้วย systemctl

หากต้องการแสดงรายละเอียดเพิ่มเติมเกี่ยวกับบริการเฉพาะในระบบของคุณ ให้รันคำสั่งนี้ในเทอร์มินัล:

sudo systemctl status <ชื่อบริการ>

แทนที่ <ชื่อบริการ> ด้วยชื่อไฟล์หน่วยบริการที่คุณต้องการตรวจสอบ

ข้อมูลนี้จะแสดงให้คุณเห็น เช่น คำอธิบาย สถานะโหลด สถานะใช้งาน สถานะย่อย ID กระบวนการ (PID) การใช้หน่วยความจำ การใช้งาน CPU และบริการล่าสุด บันทึก

คุณยังสามารถใช้คำสั่งย่อย show แทนสถานะเพื่อแสดงคุณสมบัติของบริการทั้งหมดในรูปแบบ name=value

เริ่มบริการด้วย systemctl

หากต้องการเริ่มบริการที่หยุดทำงานบนระบบของคุณ ให้รันคำสั่งนี้ในเทอร์มินัล Linux ของคุณ:

sudo systemctl start

แทนที่ <ชื่อบริการ> ด้วยชื่อไฟล์หน่วยบริการที่คุณต้องการเริ่ม

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

หยุดบริการด้วย systemctl

หากต้องการหยุดบริการที่ทำงานบนระบบของคุณ ให้รันคำสั่งนี้ในเทอร์มินัล:

sudo systemctl stop

แทนที่ <ชื่อบริการ> ด้วยชื่อไฟล์หน่วยบริการที่คุณต้องการหยุด

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

เริ่มบริการใหม่ด้วย systemctl

ต้องการแก้ไขและโหลดไฟล์การกำหนดค่าของบริการใหม่และใช้การเปลี่ยนแปลงหรือไม่ หากทำเช่นนั้น คุณจะต้องเริ่มบริการใหม่ในภายหลัง

หากต้องการเริ่มบริการใหม่ที่ทำงานบนระบบของคุณ ให้เปิดเทอร์มินัลแล้วเรียกใช้คำสั่งนี้:

sudo systemctl รีสตาร์ท <ชื่อบริการ>

แทนที่ <ชื่อบริการ> พร้อมชื่อไฟล์หน่วยบริการที่คุณต้องการรีสตาร์ท

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

รีโหลดบริการด้วย systemctl

บริการบางอย่างรองรับการรีโหลดการกำหนดค่าโดยไม่ต้องหยุดและเริ่มต้น การโหลดบริการซ้ำช่วยให้คุณทำการเปลี่ยนแปลงเล็กน้อยกับไฟล์การกำหนดค่าของบริการเหล่านั้นได้โดยไม่ต้องรีสตาร์ท ซึ่งเร็วกว่าและก่อกวนน้อยกว่าการรีสตาร์ท

หากต้องการรีโหลดบริการที่สนับสนุนคุณลักษณะนี้ ให้ใช้คำสั่ง systemctl ต่อไปนี้ในเทอร์มินัล:

sudo systemctl รีโหลด <ชื่อบริการ>

แทนที่ <บริการ-name> พร้อมชื่อไฟล์หน่วยบริการที่ต้องการโหลดซ้ำ

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

เปิดใช้งานบริการด้วย systemctl

หากต้องการเปิดใช้งานบริการให้เริ่มโดยอัตโนมัติในเวลาบูตบนระบบของคุณ ให้รันคำสั่งนี้ในเทอร์มินัล:

sudo systemctl enable <ชื่อบริการ>

แทนที่ <ชื่อบริการ> ด้วยชื่อไฟล์หน่วยบริการที่คุณต้องการเปิดใช้งาน

การดำเนินการนี้จะสร้างลิงก์สัญลักษณ์จากไฟล์หน่วยบริการไปยังตำแหน่งภายใต้/etc/systemd/system ซึ่งจะบอกให้ systemd เริ่มการทำงานในเวลาบูต

คุณยังสามารถใช้ตัวเลือก –ตอนนี้ เพื่อเปิดใช้งานและเริ่มบริการพร้อมกันได้อีกด้วย ตัวอย่างเช่น:

sudo systemctl enable – now

ปิดใช้งานบริการด้วย systemctl

หากต้องการปิดใช้งาน บริการเริ่มต้นโดยอัตโนมัติในเวลาบูตบนระบบของคุณ ให้รันคำสั่งนี้ในเทอร์มินัล Linux:

sudo systemctl ปิดใช้งาน <ชื่อบริการ>

แทนที่ <ชื่อบริการ> ด้วยชื่อ ของไฟล์หน่วยบริการที่ต้องการปิดใช้งาน

การดำเนินการนี้จะลบลิงก์สัญลักษณ์ออกจาก/etc/systemd/system ซึ่งจะบอกให้ systemd ไม่ต้องเริ่มการทำงานเมื่อบูต

คุณยังสามารถใช้ตัวเลือก –ตอนนี้ เพื่อปิดใช้งานและหยุดบริการในเวลาเดียวกัน:

sudo systemctl ปิดการใช้งาน –ตอนนี้ <ชื่อบริการ>

แสดงรายการบริการที่ปิดบังด้วย systemctl

การปิดบังบริการหมายถึงการเชื่อมโยงไฟล์หน่วยกับ/dev/null ซึ่งป้องกันไม่ให้โหลดหรือจัดการโดย systemd สิ่งนี้จะเพิ่มการป้องกันอีกชั้นหนึ่ง

หากต้องการดูว่าบริการใดถูกปิดบังและไม่สามารถเริ่มหรือหยุดด้วยตนเองหรือโดยอัตโนมัติบนระบบของคุณ ให้รันคำสั่งนี้ในเทอร์มินัลของพีซีที่ใช้ Linux:

sudo systemctl list-unit-ไฟล์ – ประเภทบริการ – สถานะมาสก์

รายการของบริการมาสก์จะปรากฏในรายการ (โดยมาสก์อยู่ในคอลัมน์ STATE)

มาสก์ บริการด้วย systemctl

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

sudo systemctl mask <ชื่อบริการ>

แทนที่ <ชื่อบริการ> ด้วยชื่อไฟล์หน่วยบริการที่คุณต้องการมาสก์

สิ่งนี้จะสร้างลิงก์สัญลักษณ์จากหน่วยบริการ ไฟล์ไปที่/dev/null เพื่อป้องกันไม่ให้โหลดหรือจัดการโดย systemd

เปิดโปงบริการด้วย systemctl

คุณสามารถเปิดโปงบริการที่เคยปิดบังไว้ได้ การดำเนินการนี้จะลบลิงก์สัญลักษณ์ไปยัง/dev/null และอนุญาตให้ใช้และโหลดที่อื่นได้

หากต้องการเปิดโปงบริการที่ถูกปิดบังไว้ก่อนหน้านี้ในระบบของคุณ ให้รันคำสั่งนี้:

sudo systemctl unmask

Replace พร้อมชื่อไฟล์หน่วยบริการที่ต้องการเปิดโปง

การควบคุมพีซี Linux ของคุณ

หากพีซี Linux ของคุณใช้ systemd เพื่อจัดการบริการระบบ คุณสามารถใช้คำสั่ง systemctl เพื่อจัดการได้ คุณสามารถเริ่ม หยุด โหลดซ้ำ ปิดใช้งาน และควบคุมบริการของคุณ ทำให้คุณควบคุมพีซี Linux ได้ดียิ่งขึ้น

อีกวิธีหนึ่งที่คุณสามารถจัดการพีซีของคุณคือการจำกัดการเข้าถึงไฟล์บางไฟล์ คุณสามารถใช้คำสั่ง chmod บนพีซี Linux ของคุณเพื่ออนุญาต (หรือไม่อนุญาต) การเข้าถึง

ไม่แน่ใจว่า Linux distro ของคุณเหมาะสมหรือไม่ คุณควรลองใช้ลีนุกซ์ตัวท็อปตัวอื่นแทน หรือแม้แต่ลองใช้ลีนุกซ์แบบพกพา การใช้ distro แบบพกพาจะช่วยให้คุณสลับระหว่างมันได้อย่างง่ายดาย

Categories: IT Info