環境
- Ubuntu 24.04
問題
Ubuntuの起動がめっちゃ遅い。10分以上かかる。 ディスクの障害かと思ってたけど起動後は普通に速い。
原因調査
そこでsystemd-analyze blame コマンドで各サービスの起動にかかる時間調査したら systemd-tmpfiles-setup.service にめちゃくちゃ時間かかっていた。
systemd-tmpfiles-setupはOSが起動する時に一時的なファイルやディレクトリ」を作成・削除・管理する役割 を持っているサービス。起動時に/tmpが空っぽなのはこのサービスのおかげだったってわけ。 今回問題になったサーバーは/tmpにファイルが大量にあったため削除に時間がかかってしまったんだと思われる。
対応
デフォルトタイムアウトが無制限なのでタイムアウトを設定する。
❯ sudo systemctl edit systemd-tmpfiles-setup.service
エディターが起動するので以下追記
[Service] TimeoutStartSec=120s
以下のように表示されればOK
Successfully installed edited file '/etc/systemd/system/systemd-tmpfiles-setup.service.d/override.conf'.
設定を反映
sudo systemctl daemon-reload
確認
❯ systemctl show systemd-tmpfiles-setup.service -p TimeoutStartUSec TimeoutStartUSec=2min