静的IPアドレスを使用してイーサネット経由で接続された2台のコンピュータ(マスターとスレーブラと呼ばれる)があります。
私が達成したいのは、マスターが再起動するたびにスレーブを再起動し、マスターがシャットダウンしたときに電源を切ることです。
どちらのシステムもsystemdでUbuntu Bionicを実行します。
これまではリブートに集中していました。/lib/systemd/system/restart-jetson.service
次の内容でファイルを作成しました。
[Unit]
Description=Restart Jetson
DefaultDependencies=no
Before=systemd-reboot.service # also tried just reboot.service
Requires=network.target
After=network.target
[Service]
ExecStart=/bin/su -c 'echo "nvidia" | /usr/bin/ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no nvidia@%H-jetson "sudo -S reboot"' robot
Type=oneshot
RemainAfterExit=yes
[Install]
WantedBy=reboot.target
systemctl enable restart-jetson.service
その後、サービスを使用して有効にしましたsystemctl daemon-reload
。
SSHは、スレーブでパスワードなしのログイン用に設定されています。
実行中のシステムでサービスを再起動すると、スレーブサーバーが再起動します。ただし、マスターシステムを再起動しても、スレーブシステムには何の影響もありません。このシステムデバイスをどのように正しく設定する必要がありますか?
他のSO投稿やチュートリアルではこのアプローチがうまくいくようですが、この特定のユースケースでは何もしないようです。