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 nginx
Khởi động Nginx:
sudo systemctl start nginx
Kiểm tra trạng thái của Nginx:
sudo systemctl status nginx
Kế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 nginx
Khởi động lại Nginx:
sudo systemctl restart nginx
Kích hoạt Nginx để tự động khởi động khi hệ thống khởi động:
sudo systemctl enable nginx
Vô 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 start
Kiểm tra trạng thái của Nginx:
sudo service nginx status
Dừng Nginx:
sudo service nginx stop
Khở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:
ps
Hiển thị tất cả các quy trình đang chạy:
ps aux
Hiể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
:top
Giao diện
top
sẽ 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 htop
Chạy
htop
:htop
Giao diện
htop
sẽ 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 aux
Tìm ID quy trình (PID) của quy trình bạn muốn dừng.
Dừng quy trình:
kill 1234
Lệ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 1234
Lệ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.