systemctl mask について
「systemctl mask [サービス] 」で、指定のサービスを無効化できます。「systemctl disable [サービス]」では指定したサービスの自動起動はしなくなりましたが、「systemctl start [サービス]」とするとサービスを起動できますが、mask を指定すると手動でのサービス起動もできなくなります
# nginx のサービスにmaskを設定します
$ sudo systemctl mask nginx
Created symlink /etc/systemd/system/nginx.service → /dev/null.
# nginx は、/dev/null にシンボリクリックが貼られます
$ ls -l /etc/systemd/system | grep nginx
lrwxrwxrwx 1 root root 9 Sep 12 13:19 nginx.service -> /dev/null
drwxr-xr-x. 2 root root 4096 Jun 28 08:36 nginx.service.d
# systemctl status で確認すると、maskが設定されています
$ sudo systemctl status nginx
Warning: The unit file, source configuration file or drop-ins of nginx.service changed on>
○ nginx.service
Loaded: masked (Reason: Unit nginx.service is masked.)
Drop-In: /usr/lib/systemd/system/nginx.service.d
└─php-fpm.conf
Active: inactive (dead)
maskしたサービスは「/dev/null」にシンボリクリックが貼られ、手動での起動でもできなくなります。
systemctl mask の解除
maskしたサービスの解除ですが、「systemctl unmask [サービス] 」とすれば、maskの解除ができます。
# nginxのmaskを解除します
$ sudo systemctl unmask nginx
Removed "/etc/systemd/system/nginx.service".
# /dev/null へのシンボリクリックが削除されたのを確認できます
$ ls -l /etc/systemd/system | grep nginx
drwxr-xr-x. 2 root root 4096 Jun 28 08:36 nginx.service.d
# systemctl status でもLoaded: masked (Reason: Unit nginx.service is masked.)の表記は消えています
$ sudo systemctl status nginx
○ nginx.service - The nginx HTTP and reverse proxy server
Loaded: loaded (/usr/lib/systemd/system/nginx.service; disabled; vendor preset: disa>
Drop-In: /usr/lib/systemd/system/nginx.service.d
└─php-fpm.conf
Active: inactive (dead)



コメント