Bye Bye Moore

PoCソルジャーな零細事業主が作業メモを残すブログ

Systemdタイマーユニットをつかう

Systemdでプログラムを初期起動させる際、周辺デバイス(たとえばLANとか)の立ち上げが遅くてアプリが起動できないといったケースがあります。
まぁ、疎通するまでリトライするとかすればいいのかもしれませんが。

今回は、Systemdのタイマーユニットを使ってみます。

実際のところ

前提

  • Ubuntu 22 LTS
  • 対象サービス"/etc/systemd/system/ros2-launch.service"が有効になっている

ros2-launch.timerというファイルをつくり

$ cd /etc/systemd/system/
$ sudo vim ros2-launch.timer

内容は以下のように

[Unit]
Description=Delay ROS2 launch

[Timer]
OnBootSec=3min
Unit=ros2-launch.service

[Install]
WantedBy=timers.target
$ sudo systemctl enable ros2-launch.timer

ros2-launch.serviceの"[Install]"とその内容を削除。

参考もと