systemd là gì? Hướng dẫn tạo và quản lý systemd services trên Linux


Để quản lý các dịch vụ (service) trên Linux, Linux sử dụng 1 công cụ có tên là systemd. Trong bài viết này chúng ta sẽ tìm hiểu về systemd và cách systemd quản lý các dịch vụ.

systemd là gì?

systemd là 1 công cụ (System Tool) của Linux được phát triển bởi nhóm Red Hat. Nó bao gồm nhiều tính năng, bao gồm một hệ thống bootstrapping được sử dụng để khởi động và quản lý các tiến trình (processes) trong hệ thống. Nó hiện là hệ thống khởi tạo mặc định trên hầu hết các bản phân phối Linux.

Một số dịch vụ (services) phổ biến như SSH, Apache đều đang sử dụng systemd để khởi động và quản lý dịch vụ.

Hướng dẫn tạo 1 custom systemd service

Tạo 1 service

Trong bài viết này mình sẽ hướng dẫn các bạn tạo 1 systemd để quản lý 1 service có tên là myservice tại đường dẫn /usr/bin/myservice

Chúng ta sẽ tạo service myservice bằng Shell Script như sau:

DATE=`date '+%Y-%m-%d %H:%M:%S'`
echo "VinaSupport service started at ${DATE}" | systemd-cat -p info

while :
do
echo "Looping...";
sleep 1;
done

Sau đó cấp quyền thực thi cho nó

sudo chmod +x /usr/bin/myservice

Kiểm tra hoạt động của service

Tạo systemd service

Giờ chúng ta tạo 1 systemd service có tên là myservice.service tại đường dẫn: /lib/systemd/system/myservice.service

[Unit]
Description=MyService systemd service.

[Service]
Type=simple
ExecStart=/bin/bash myservice

[Install]
WantedBy=multi-user.target

Sau đó copy nó tới /etc/systemd/system và cấp quyền

sudo cp myservice.service /etc/systemd/system/
sudo chmod 644 /etc/systemd/system/myservice.service

Quản lý systemd service

Vậy là ta đã tạo ra 1 systemd service là myservice.service, chúng ta sử dụng systemctl command để quản lý service

Khởi động / dừng service

sudo systemctl start myservice.service
sudo systemctl stop myservice.service

Kiểm tra trạng thái service

sudo systemctl status myservice.service

Kích hoạt / Vô hiệu hóa khởi động cùng HDH

sudo systemctl enable myservice.service
sudo systemctl disable myservice.service

Nguồn: vinasupport.com

 

             
SHARE

Bài viết liên quan

mode_edit Bình luận của bạn

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

account_circle
web