Linux và Windows Server

Quản lý dịch vụ, tiến trình và log trên Linux (systemctl, journalctl)

Quản lý dịch vụ, tiến trình và log trên Linux (systemctl, journalctl)
Chia sẻ

Hướng dẫn quản lý dịch vụ với systemctl, xem log bằng journalctl và quản lý tiến trình trên Linux, kèm mẹo tự khởi động lại và xoay vòng log

Mục lục1. Trước khi bắt đầu2. Quản lý dịch vụ với systemctl3. Xem log với journalctl4. Quản lý tiến trình5. Phần nâng cao: tự khởi động lại và xoay vòng log6. Xử lý tình huống thường gặp7. Câu hỏi thường gặp7.1. systemctl và service khác nhau thế nào?7.2. Khi nào nên dùng kill -9?7.3. Log của tôi ở đâu?8. Kết luận

1. Trước khi bắt đầu

  • Đã đăng nhập VPS Linux qua SSH với quyền sudo.
  • Hệ thống dùng systemd (mặc định trên Ubuntu, AlmaLinux hiện nay).

2. Quản lý dịch vụ với systemctl

systemctl là công cụ chính để điều khiển dịch vụ:

  • Xem trạng thái: systemctl status ten-dich-vu (ví dụ systemctl status nginx) cho biết dịch vụ đang chạy hay dừng, kèm vài dòng log gần nhất.
  • Khởi động / dừng / khởi động lại: sudo systemctl start, stop, restart theo sau tên dịch vụ.
  • Bật tự khởi động cùng máy: sudo systemctl enable ten-dich-vu; tắt tự khởi động dùng disable.
  • Tải lại cấu hình mà không dừng hẳn: sudo systemctl reload ten-dich-vu (khi dịch vụ hỗ trợ).

Mẹo: enable --now vừa bật tự khởi động vừa chạy dịch vụ ngay.

3. Xem log với journalctl

journalctl đọc log tập trung do systemd quản lý:

  • Xem log của một dịch vụ: journalctl -u ten-dich-vu.
  • Theo dõi log theo thời gian thực: journalctl -u ten-dich-vu -f.
  • Lọc theo thời gian: journalctl --since "1 hour ago" hoặc theo ngày.
  • Xem log lần khởi động gần nhất: journalctl -b.

Log là nơi đầu tiên nên xem khi một dịch vụ lỗi: thông báo lỗi thường chỉ rõ nguyên nhân (sai cấu hình, thiếu quyền, cổng bị chiếm...).

Lệnh quản lý dịch vụ, tiến trình và log Linux
Lệnh quản lý dịch vụ, tiến trình và log Linux

4. Quản lý tiến trình

Bên cạnh dịch vụ, đôi khi cần thao tác trực tiếp với tiến trình:

  • Liệt kê tiến trình: ps aux hoặc dùng top/htop để xem theo thời gian thực. Chi tiết về theo dõi tài nguyên có trong bài Kiểm tra tài nguyên VPS cùng nhóm.
  • Tìm tiến trình: ps aux | grep ten-ung-dung.
  • Dừng tiến trình: kill PID (gửi tín hiệu dừng bình thường); chỉ dùng kill -9 PID khi tiến trình không phản hồi, vì nó dừng đột ngột.

5. Phần nâng cao: tự khởi động lại và xoay vòng log

  • Tự khởi động lại dịch vụ khi lỗi: trong file cấu hình dịch vụ (unit file), có thể đặt Restart=on-failure để systemd tự khởi động lại khi dịch vụ crash, tăng độ ổn định.
  • Xoay vòng log (log rotation): log để lâu sẽ chiếm ổ đĩa. Với journald, giới hạn dung lượng log trong cấu hình; với log file truyền thống, dùng logrotate để nén và xóa log cũ định kỳ.
  • Tạo dịch vụ riêng: với ứng dụng tự viết, có thể tạo một unit file systemd để quản lý như một dịch vụ (tự chạy, tự khởi động lại, ghi log tập trung).

6. Xử lý tình huống thường gặp

  • Dịch vụ không khởi động: xem systemctl status và journalctl -u để tìm lỗi; thường là sai cấu hình hoặc cổng bị chiếm.
  • Ổ đĩa đầy do log: kiểm tra dung lượng log, cấu hình giới hạn journald hoặc bật logrotate.
  • Dịch vụ tự tắt lặp lại: xem log để tìm nguyên nhân gốc thay vì chỉ khởi động lại; cân nhắc Restart=on-failure sau khi đã xử lý gốc.

7. Câu hỏi thường gặp

7.1. systemctl và service khác nhau thế nào?

systemctl là công cụ của systemd, chuẩn trên các bản Linux hiện đại; lệnh service cũ hơn và thường chỉ là lớp tương thích gọi lại systemctl. Trên hệ thống mới, nên dùng systemctl.

7.2. Khi nào nên dùng kill -9?

Chỉ khi tiến trình không phản hồi với lệnh dừng bình thường (kill PID). kill -9 buộc dừng ngay, không cho tiến trình dọn dẹp, nên có thể để lại dữ liệu dở dang. Hãy thử cách nhẹ trước.

7.3. Log của tôi ở đâu?

Trên hệ thống dùng systemd, phần lớn log tập trung ở journald, xem bằng journalctl. Một số dịch vụ vẫn ghi log riêng vào /var/log. Để giám sát bảo mật và phân tích log bài bản hơn, xem bài Giám sát bảo mật và phân tích log bên chuyên mục An ninh.

8. Kết luận

Quản lý dịch vụ, tiến trình và log là kỹ năng cốt lõi để vận hành máy chủ Linux. Nắm systemctl để điều khiển dịch vụ, journalctl để đọc log, và các lệnh tiến trình cơ bản là đủ xử lý phần lớn sự cố. Khi cần độ ổn định cao, dùng tự khởi động lại và xoay vòng log để máy chủ tự chăm sóc tốt hơn. Thói quen xem log trước khi hành động sẽ giúp bạn tìm đúng nguyên nhân thay vì đoán mò.

Cần hỗ trợ kỹ thuật? Nếu cần hỗ trợ vận hành dịch vụ hoặc xử lý sự cố trên máy chủ Linux, đội ngũ Cloudzone sẵn sàng trao đổi trực tiếp với bạn.

Chat với Cloudzone

Chia sẻ

Bài viết liên quan

Cấu hình bảo mật UltraViewer: 6 bước cần làm | Cloudzone

Cấu hình bảo mật UltraViewer: 6 bước cần làm | Cloudzone

Hướng dẫn cấu hình bảo mật UltraViewer: tắt mật khẩu ngẫu nhiên, đặt mật khẩu riêng, bật whitelist. Checklist đầy đủ cho máy công ty và máy cá nhân.

Các câu lệnh Linux cần biết để quản trị VPS

Các câu lệnh Linux cần biết để quản trị VPS

Tổng hợp nhóm lệnh Linux thiết yếu cho quản trị VPS: file, quyền, gói phần mềm, mạng và tiến trình, kèm mẹo kết hợp lệnh cho người mới

Cài LEMP/LAMP stack để chạy website trên Linux

Cài LEMP/LAMP stack để chạy website trên Linux

Hướng dẫn cài LEMP (Nginx) hoặc LAMP (Apache) với PHP và MySQL/MariaDB để chạy website trên VPS Linux, kèm lưu ý tối ưu và bảo mật

Cấu hình Remote Desktop (RDP) an toàn trên Windows Server

Cấu hình Remote Desktop (RDP) an toàn trên Windows Server

Hướng dẫn từng bước cấu hình RDP an toàn trên Windows Server: bật NLA, giới hạn user và IP, đổi cổng, chính sách khóa tài khoản

Cài IIS và đưa website lên Windows Server

Cài IIS và đưa website lên Windows Server

Hướng dẫn cài IIS trên Windows Server, tạo site, cấu hình binding và bật HTTPS (SSL) để đưa website vào hoạt động

Microsoft ngừng hỗ trợ Windows Server 2012 và 2012 R2

Microsoft ngừng hỗ trợ Windows Server 2012 và 2012 R2

Microsoft đã chính thức thông báo về việc ngừng hỗ trợ cho Windows Server 2012 và những bản cập nhật Windows Server 2012 R2 từ tháng 10/2023. Do tuổi đời của nó và sự phát triển của công nghệ, Microsoft quyết định dừng việc cung cấp hỗ trợ cho phiên...