ในระบบ Ubuntu Server 25.10 การจัดการบริการของระบบ (Service) เช่น Apache, Docker, SSH, MySQL หรือ Nginx จะใช้ระบบที่เรียกว่า systemd เป็นตัวควบคุมหลัก และเครื่องมือที่ผู้ดูแลระบบใช้ในการสั่งงานก็คือคำสั่ง systemctl
systemctl เป็นเครื่องมือสำคัญสำหรับ System Administrator เพราะใช้สำหรับ
- เริ่มต้น Service
- หยุด Service
- รีสตาร์ท Service
- ตรวจสอบสถานะ
- ตั้งค่าให้ Service ทำงานอัตโนมัติเมื่อเครื่องบูต
บทความนี้จะสรุปคำสั่งที่ SysAdmin ใช้บ่อยที่สุด พร้อมตัวอย่างที่สามารถนำไปใช้ได้ทันที
ก่อนเริ่มใช้งานควรมี
- Ubuntu Server 25.10
- สิทธิ์ sudo
- เข้าใช้งานผ่าน Terminal / SSH
- มี Service ที่ติดตั้งอยู่แล้ว เช่น
ssh,apache2,docker
ตัวอย่าง Service ที่เราจะใช้ทดสอบ
apache2
docker
1. ตรวจสอบสถานะ Service
คำสั่งพื้นฐานที่ใช้บ่อยที่สุดคือ ตรวจสอบว่า Service ทำงานอยู่หรือไม่
ตัวอย่างผลลัพธ์
Loaded: loaded (/lib/systemd/system/ssh.service)
Active: active (running)
| สถานะ | ความหมาย |
|---|---|
| active (running) | Service ทำงานอยู่ |
| inactive | Service ปิดอยู่ |
| failed | Service ทำงานผิดพลาด |
2. เริ่มต้น Service (Start)
หาก Service ยังไม่ได้เริ่มทำงาน สามารถใช้คำสั่ง
ตัวอย่าง
ใช้สำหรับ
- เริ่ม Web Server
- เริ่ม Database
- เริ่ม Container Service
3. หยุด Service (Stop)
ใช้สำหรับหยุด Service
ตัวอย่าง
เหมาะสำหรับ
- Maintenance
- Update Software
- Debug ระบบ
4. รีสตาร์ท Service (Restart)
หากแก้ไขไฟล์ config แล้ว ต้องรีสตาร์ท Service
ตัวอย่าง
ใช้บ่อยหลังแก้ไขไฟล์
/etc/nginx/nginx.conf
/etc/ssh/sshd_config
5. Reload Service (ไม่หยุด Service)
บาง Service สามารถ Reload config โดยไม่ต้อง restart
ข้อดี
- ไม่ทำให้ connection หลุด
- ใช้กับ Web Server ได้ดี
6. เปิด Service ให้ทำงานตอน Boot
หากต้องการให้ Service เริ่มทำงานทุกครั้งที่เครื่องเปิด
ตรวจสอบว่าเปิด auto start แล้วหรือยัง
ผลลัพธ์
7. ปิด Auto Start
หากไม่ต้องการให้ Service เริ่มตอน Boot
8. ดู Service ทั้งหมดในระบบ
ถ้าต้องการดูทั้งหมดแม้ไม่ได้รัน
9. ดู Service ที่ล้มเหลว (Failed)
SysAdmin ใช้ตรวจสอบปัญหา
10. ดู Log ของ Service
ใช้คำสั่ง journalctl
ตัวอย่าง
ดู log ล่าสุด
ดูแบบ realtime
ตารางสรุปคำสั่ง systemctl ที่ใช้บ่อย
| คำสั่ง | หน้าที่ |
|---|---|
| systemctl status service | ดูสถานะ |
| systemctl start service | เริ่ม Service |
| systemctl stop service | ปิด Service |
| systemctl restart service | รีสตาร์ท |
| systemctl reload service | Reload config |
| systemctl enable service | เปิด Auto Start |
| systemctl disable service | ปิด Auto Start |
| systemctl list-units | ดู Service ที่รัน |
| systemctl –failed | ดู Service ที่ Error |
ตัวอย่าง Workflow ที่ SysAdmin ใช้จริง
ตัวอย่างหลังติดตั้ง Apache
sudo systemctl enable apache2
sudo systemctl status apache2
ทดสอบ Web Server
เคล็ดลับสำหรับ SysAdmin
ตรวจสอบว่า Service เปิดพอร์ตอะไร
ตรวจสอบ Service ที่กิน RAM สูง
รีสตาร์ท Service ทั้งระบบ
⚠️ ใช้เฉพาะกรณีระบบมีปัญหา
สรุป
คำสั่ง systemctl เป็นเครื่องมือสำคัญสำหรับผู้ดูแลระบบ Linux โดยเฉพาะบน Ubuntu Server 25.10 เพราะใช้ควบคุม Service ทุกตัวในระบบ ไม่ว่าจะเป็นการ Start, Stop, Restart, ตรวจสอบสถานะ หรือกำหนดให้ Service ทำงานอัตโนมัติเมื่อเครื่องบูต การเข้าใจคำสั่งเหล่านี้จะช่วยให้ SysAdmin สามารถบริหารจัดการระบบเซิร์ฟเวอร์ได้อย่างมีประสิทธิภาพและแก้ไขปัญหาได้รวดเร็วมากขึ้น
