2026/07/01(水)nginxをinit.dからsystemdに移行してみた
投稿日:
Ubuntu 26からinit.dが非推奨になるが、systemdが見つからなかったので試しに書いてみた。
確認環境
- Ubuntu 24.04.4 LTS
- nginx/1.24.0
手順
sudo mv /etc/init.d/nginx ~
sudo service stop nginx
cat <<'EOF' | sudo tee /etc/systemd/system/nginx.service
[Unit]
Description=nginx
Documentation=man:nginx(8)
After=network-online.target remote-fs.target nss-lookup.target
Wants=network-online.target
[Service]
Type=simple
ExecStartPre=/usr/sbin/nginx -t -q
ExecStart=/usr/sbin/nginx -g 'daemon off; master_process on;'
ExecReload=/bin/kill -HUP $MAINPID
ExecStop=/bin/kill -QUIT $MAINPID
TimeoutStopSec=5
KillMode=mixed
[Install]
WantedBy=multi-user.target
EOF
sudo systemctl daemon-reload
sudo systemctl enable nginx
sudo systemctl start nginx
参考記事
あとがき
nginxはマスタプロセスが上がったままなのでtype=simpleで問題なさそうだったが、正直よく分かってないので、何か問題が出たらまたその時に対処したい。
init.dにはまだ沢山転がってるので徐々に移行させていかないと…。