Ubuntu 22.04でrc.localを動作させる方法

投稿者: | 10月 10, 2023

実は結構rc.localを多用していたりする。rc.localでやらせることととしては

ホスト名をランダムな文字列に変えて起動したい。

VMのVMDKを拡張したら、起動時にパーティションとファイルシステムも自動的に拡張させたい

など。

まぁ、/etc/rc.localに実行権限をつければヨシと思っていたのだが、実行はされるが、毎回rc.localのコンパチビリティでエラーになる。困った。

実はお作法があった様子

cat << EOF > /etc/systemd/system/rc-local.service
[Unit]
Description=/etc/rc.local Compatibility
 ConditionPathExists=/etc/rc.local

[Service]
Type=forking
ExecStart=/etc/rc.local start
TimeoutSec=0
StandardOutput=tty
RemainAfterExit=yes
 SysVStartPriority=99

[Install]
WantedBy=multi-user.target
EOF

が必要だった様子。あとは、普通通りに/etc/rc.localを作ればいい。

最後に

systemctl enable rc-local

とすれば完成。長年の問題の1つが解決した。

コメントを残す