Lesson 7 - Quản Lý Services và Processes trên Ubuntu
28/06/2024 - 5 phút
Trong bài học này, chúng ta sẽ tìm hiểu cách quản lý dịch vụ và quy trình trong hệ thống Linux. Việc quản lý dịch vụ và quy trình là một phần quan trọng trong việc duy trì hoạt động ổn định và hiệu quả của hệ thống. Chúng ta sẽ học cách sử dụng các lệnh như systemctl, service để quản lý dịch vụ và các lệnh như ps, top, htop, và kill để quản lý quy trình.
1. Quản Lý Dịch Vụ
systemctl: Quản Lý Dịch Vụ Hệ Thống
Lệnh systemctl là công cụ chính để quản lý dịch vụ trong các hệ thống sử dụng systemd.
| Lệnh | Mô tả | Ví dụ |
|---|---|---|
systemctl start | Khởi động một dịch vụ | sudo systemctl start nginx |
systemctl stop | Dừng một dịch vụ | sudo systemctl stop nginx |
systemctl restart | Khởi động lại một dịch vụ | sudo systemctl restart nginx |
systemctl enable | Kích hoạt dịch vụ để tự động khởi động khi boot | sudo systemctl enable nginx |
systemctl disable | Vô hiệu hóa dịch vụ không tự động khởi động khi boot | sudo systemctl disable nginx |
systemctl status | Kiểm tra trạng thái của dịch vụ | sudo systemctl status nginx |
Ví dụ chi tiết:
Cài đặt Nginx:
sudo apt update sudo apt install nginxKhởi động Nginx:
sudo systemctl start nginxKiểm tra trạng thái của Nginx:
sudo systemctl status nginxKết quả sẽ hiển thị trạng thái hiện tại của dịch vụ Nginx, bao gồm thông tin về PID, thời gian chạy và các thông báo lỗi nếu có.
Dừng Nginx:
sudo systemctl stop nginxKhởi động lại Nginx:
sudo systemctl restart nginxKích hoạt Nginx để tự động khởi động khi hệ thống khởi động:
sudo systemctl enable nginxVô hiệu hóa Nginx để không tự động khởi động khi hệ thống khởi động:
sudo systemctl disable nginx
service: Quản Lý Dịch Vụ Truyền Thống
Lệnh service được sử dụng để quản lý các dịch vụ trên các hệ thống không sử dụng systemd.
| Lệnh | Mô tả | Ví dụ |
|---|---|---|
service start | Khởi động một dịch vụ | sudo service nginx start |
service stop | Dừng một dịch vụ | sudo service nginx stop |
service restart | Khởi động lại một dịch vụ | sudo service nginx restart |
service status | Kiểm tra trạng thái của dịch vụ | sudo service nginx status |
Ví dụ chi tiết:
Khởi động Nginx:
sudo service nginx startKiểm tra trạng thái của Nginx:
sudo service nginx statusDừng Nginx:
sudo service nginx stopKhởi động lại Nginx:
sudo service nginx restart
2. Quản Lý Quy Trình
ps: Hiển Thị Quy Trình Đang Chạy
Lệnh ps được sử dụng để hiển thị các quy trình đang chạy trong hệ thống.
| Lệnh | Mô tả | Ví dụ |
|---|---|---|
ps | Hiển thị các quy trình của người dùng hiện tại | ps |
ps aux | Hiển thị tất cả các quy trình đang chạy | ps aux |
ps -ef | Hiển thị các quy trình với định dạng đầy đủ | ps -ef |
Ví dụ chi tiết:
Hiển thị các quy trình của người dùng hiện tại:
psHiển thị tất cả các quy trình đang chạy:
ps auxHiển thị các quy trình với định dạng đầy đủ:
ps -ef
top: Theo Dõi Quy Trình Thời Gian Thực
Lệnh top cung cấp một giao diện tương tác để theo dõi các quy trình đang chạy trong thời gian thực.
| Lệnh | Mô tả | Ví dụ |
|---|---|---|
top | Hiển thị các quy trình đang chạy trong thời gian thực | top |
Ví dụ chi tiết:
Chạy
top:topGiao diện
topsẽ hiển thị danh sách các quy trình đang chạy trong thời gian thực, bao gồm thông tin về CPU, bộ nhớ và thời gian chạy. Bạn có thể sử dụng các phím tắt nhưqđể thoát,kđể giết quy trình, vàrđể thay đổi độ ưu tiên của quy trình.
htop: Giao Diện Theo Dõi Quy Trình Nâng Cao
Lệnh htop là phiên bản nâng cao của top với giao diện người dùng thân thiện hơn.
| Lệnh | Mô tả | Ví dụ |
|---|---|---|
htop | Hiển thị các quy trình đang chạy trong thời gian thực với giao diện nâng cao | htop |
Ví dụ chi tiết:
Cài đặt
htop:sudo apt install htopChạy
htop:htopGiao diện
htopsẽ hiển thị danh sách các quy trình đang chạy với giao diện đồ họa nâng cao, cho phép bạn dễ dàng theo dõi và quản lý các quy trình. Bạn có thể sử dụng các phím tắt nhưF10để thoát,F9để giết quy trình, vàF2để cấu hìnhhtop.
kill: Dừng Quy Trình
Lệnh kill được sử dụng để dừng một quy trình đang chạy.
| Lệnh | Mô tả | Ví dụ |
|---|---|---|
kill | Gửi tín hiệu để dừng một quy trình | kill PID |
kill -9 | Gửi tín hiệu SIGKILL để dừng ngay lập tức một quy trình | kill -9 PID |
Ví dụ chi tiết:
Hiển thị danh sách các quy trình đang chạy:
ps auxTìm ID quy trình (PID) của quy trình bạn muốn dừng.
Dừng quy trình:
kill 1234Lệnh này sẽ dừng quy trình có ID là
1234.Dừng ngay lập tức quy trình:
kill -9 1234Lệnh này sẽ gửi tín hiệu SIGKILL để dừng ngay lập tức quy trình có ID là
1234.
Kết Luận
Qua bài học này, bạn đã nắm vững cách quản lý dịch vụ và quy trình trong hệ thống Linux. Những lệnh này là công cụ quan trọng giúp bạn duy trì và điều hành hệ thống một cách hiệu quả. Chúc bạn thực hành thành công và áp dụng kiến thức này vào công việc hàng ngày của mình.
