cpp restart コマンドは SSH セッションを終了しません。

cpp restart コマンドは SSH セッションを終了しません。

システムを再起動する小さなcppアプリケーションがあります。これまで、これは非常にうまく機能しています。

sync(); //need for data safety
reboot(RB_AUTOBOOT);

SSHを介して接続し、接続されたデバイスでこのプログラムを実行しない限り。その後、SSH 接続が中断されます。

SSH経由で接続してCLI命令を使用する場合

sudo reboot

または

sudo shutdown -r now

SSH 接続は次のメッセージで終了します。

Connection to xxx.xxx.xxx.xxx closed by remote host.
Connection to xxx.xxx.xxx.xxx closed.

cppの再起動方法を使用して同じ動作をどのように取得できますか?

私は読んだhttps://man7.org/linux/man-pages/man2/reboot.2.htmlインターネットで検索しましたが、このトピックについては何も見つかりませんでした。

ベストアンサー1

解決策はkill(1, SIGINT)代わりに使用することです。reboot(RB_AUTOBOOT)

詳細については、次を参照してください。https://stackoverflow.com/a/69042761/6729765

おすすめ記事