Ansible:CentOSのctrl-alt-del.targetを無効にする
CentOSやRHELでは、キーボードからCtrl-Alt-Delを入力するとOSの再起動が始まります。何かしらのサービスを提供しているサーバで誤ってCtrl-Alt-Delを打つと、サービスが一時的に停止してしまいます(恐ろしいですね…)。また、Ctrl-Alt-DelはWindowsサーバだとサインイン時に使うので、なおさら入力ミスしてしまう可能性があります。
というわけで、Ctrl-Alt-Delによる再起動を無効化しておく方がよいです。
ターミナルでctrl-alt-del.targetを無効化
ctrl-alt-delを無効にするには、systemctlコマンドでctrl-alt-del.targetをマスクします、
# echo "実行前ステータス確認" > /dev/null # systemctl status ctrl-alt-del.target ● reboot.target - Reboot Loaded: loaded (/usr/lib/systemd/system/reboot.target; disabled; vendor preset: disabled) Active: inactive (dead) Docs: man:systemd.special(7) # # echo "ctrl-alt-delをマスク" > /dev/null # systemctl mask ctrl-alt-del.target # # echo "実行後ステータス確認" > /dev/null # systemctl status ctrl-alt-del.target ● ctrl-alt-del.target Loaded: masked (/dev/null; bad) Active: inactive (dead)
ただ、これだけではctrl-alt-delが2秒以内に7回以上押された場合、再起動が実行されてしまうそうです。ctrl-alt-delが2秒以内に7回以上押されても再起動されないように「/etc/systemd/system.conf」を編集し、CtrlAltDelBurstActionというパラメータにnoneを設定します。
~ 省略 ~ #CtrlAltDelBurstAction=reboot-force ~ 省略 ~
~ 省略 ~ #CtrlAltDelBurstAction=reboot-force CtrlAltDelBurstAction=none ~ 省略 ~
Ansibleでctrl-alt-del.targetを無効化
先ほどの内容をAnsibleで記述すると以下のようになります。
systemdモジュールでctrl-alt-del.targetをマスクし、copyモジュールで/etc/systemd/system.confを書き換えています。
--- - hosts: all become: yes become_method: su tasks: - name: disable ctrl-alt-del.target systemd: name: ctrl-alt-del.target masked: yes - name: copy system.conf copy: src: system.conf dest: /etc/systemd/system.conf mode: 0644 owner: root group: root backup: yes
[Manager] CtrlAltDelBurstAction=none