Trong hướng dẫn này, chúng tôi giải thích cách sử dụng systemctl để liệt kê các dịch vụ và kiểm tra trạng thái của chúng. Chúng tôi cũng sẽ đề cập đến một số cách sử dụng khác của systemctl.
Đến từ run_init dịch vụ, systemctl là hơi thở của không khí trong lành. Tôi chắc chắn rằng có nhiều lý do khiến tôi sai và tôi đã nghe các cuộc tranh luận ủng hộ và phản đối điều đó và đã thay đổi quyết định một vài lần. Sau khi sử dụng nó hàng ngày tại nơi làm việc, bây giờ tôi đang ở trong trại systemctl. Ngôn ngữ của lệnh bây giờ cảm thấy tự nhiên hơn. Ở cấp độ chức năng hàng ngày, tôi thích nó. Tôi hoan nghênh sự thay đổi và không muốn quay lại bất cứ khi nào tôi làm việc trên một hệ thống cũ hơn. Hãy xem qua systemctl và cách nó hoạt động.
Trạng thái Systemctl
Việc sử dụng systemctl đầu tiên và quan trọng nhất là kiểm tra trạng thái dịch vụ. Đây là cú pháp:
#systemctl command argument #systemctl status service
dịch vụ trạng thái systemctl
Có thông tin dịch vụ atd của bạn. Đã bắt đầu cách đây một lúc (tôi nên khởi động lại…) và đang hoạt động. PID ở đó nếu tôi cần phải giết nó, mặc dù chúng tôi cũng có thể với systemctl. Vậy cần kiểm tra những gì? Một bước nhanh chóng và dễ dàng, kiểm tra các dịch vụ không thành công.
#systemctl --failed --type=service
systemctl –failed –type =service
Điều tra những điều này và xác định xem nó có bình thường không. Làm thế nào để bạn biết bình thường? Kiểm tra các dịch vụ đang chạy:
#systemctl -t service --state=active
systemctl -t service –state =active
Sau khi xem xét thông tin, hãy lưu nó.
#systemctl -t service --state=active >date$systemhealth.log
Vào những ngày sau đó, hãy kiểm tra sự khác biệt.
#systemctl -t service --state=active >date$systemhealth.log
#diff day1systemhealth.log day2systemhealth.log
diff day1systemhealth.log day2systemhealth.log
Đây rồi, bây giờ bạn biết nếu một cái gì đó được cho là trực tuyến. Nếu bạn đang tự làm quen với một hệ thống mới, đây là một tập hợp các dịch vụ tốt để kiểm tra.
ĐÈN
Hãy xem xét ngăn xếp cơ bản mà hầu hết chúng ta học cách triển khai trong những ngày đầu. Ồ, và nếu bạn không biết tên của dịch vụ bạn đang tìm kiếm. Đừng lo. Hoàn thành tab được bật cho systemctl. Chỉ cần nhập apache, nhấn tab hai lần và chọn những gì bạn cần.
apache trạng thái systemctl
#systemctl status apache2.service mongo mysql
trạng thái systemctl apache2.service mongo mysql
Bạn muốn tìm hiểu thêm chi tiết?
#systemctl list-dependencies apache2.service
systemctl list-dependencies apache2.service
Nó hiển thị tất cả các phụ thuộc của dịch vụ. Và cung cấp cho bạn trạng thái của từng trang bằng một chấm màu thân thiện. Màu xanh lá cây là tốt, màu đỏ là không thành công.
Mạng
Tiếp theo, hãy đảm bảo mạng hoạt động tốt.
#systemctl status networking ufw wpa
trạng thái mạng systemctl ufw wpa
Nếu bây giờ vẫn chưa rõ thì tính năng yêu thích của tôi về systemctl là kiểm soát nhiều dịch vụ đồng thời. Và tự động chuyển thành ít hơn.
Kiểm soát dịch vụ
Được rồi, bây giờ bạn đã xác định được một số dịch vụ bị lỗi. Hoặc bạn đã thực hiện một thay đổi dịch vụ. Như cập nhật tệp sshd.config của bạn và cần tải lại nó. Hay bạn đang thêm một dịch vụ mới hoặc xóa nó hoàn toàn?
Nó đơn giản với systemctl và bạn có hai tùy chọn. Tải lại và khởi động lại . Tải lại chỉ đơn giản là đọc tệp cấu hình mới. Khởi động lại bỏ mọi kết nối và tải lại tệp cấu hình. Tùy thuộc vào nhu cầu của bạn, cả hai đều có lý do để sử dụng.
Khởi động lại và tải lại
#systemctl restart atd #systemctl status atd
systemctl khởi động lại atd
Chúng tôi bắt đầu, bắt đầu lại. Thông tin mới được thêm vào. Với hệ thống cân bằng tải mạnh mẽ, tôi thích khởi động lại hơn. Tôi biết các kết nối sẽ định tuyến lại và thời gian ngừng hoạt động sẽ không tồn tại. Ít nhất, gần như không tồn tại. Và tôi sẽ không phải lo lắng về một số hệ thống hoặc dịch vụ không hoạt động tốt khi tải lại. Bất kể, hãy luôn thông báo cho người dùng và khách hàng trước khi khởi động lại / tải lại.
Dừng, Bắt đầu và Kết thúc
Nếu bạn cần tạm dừng hoặc hủy một dịch vụ thì systemctl cũng có thể làm điều đó.
#systemctl stop atd #systemctl start atd #systemctl kill atd #systemctl start atd
Vậy là xong, bắt đầu lại một lần khởi động lại.
trạng thái systemctl atd
Bật và tắt
Các dịch vụ mới mà bạn muốn bắt đầu khi khởi động, cần phải bật.
#systemctl enable <service>
Vậy là xong, hệ thống của bạn giờ đã hiểu rằng nó cần khởi động dịch vụ mới khi khởi động. Nếu bạn muốn bỏ qua quá trình khởi động lại, hãy tiếp tục và bắt đầu nó ngay bây giờ.
#systemctl disable <service>
Và chúng ta bắt đầu. Dịch vụ đã dừng. Nếu bạn muốn xóa nó, bạn cần phải dừng nó lại rồi gỡ cài đặt.
Kết luận
Đó là nó. Không nhiều cho nó. Một dịch vụ duy nhất cho một mục đích duy nhất, kiểm soát hệ thống của bạn. Tìm hiểu thêm các lệnh shell và cách quản trị hệ thống của bạn.