すべてのBusyBoxアッシュセッションでGNUスクリーンコマンドが自動的に開始されるようにするにはどうすればよいですか?

すべてのBusyBoxアッシュセッションでGNUスクリーンコマンドが自動的に開始されるようにするにはどうすればよいですか?

BusyBoxがインストールされている組み込みデバイスでBusyBoxセッションが開始されると、gnu screenコマンドが自動的に開始されるように設定したいと思います。

ファイルにscreenコマンドを追加できることがわかりましたが、/etc/profileこれを実行する他の方法はありますか?

答え1

SSHを使用している場合は、接続時にシェル(デフォルト)の代わりに実行できます。

ssh -t me@host screen -RD

存在しない新しいセッションが作成されるか、既存のセッションに接続されます。

sshのフラグは、-tシェルを起動しなくてもptyを生成するように指示します。インタラクティブに使用するために必要です。

答え2

exec screen -R端末の最後に追加~/.profile:ログインするたびに、最後に作成されたスクリーンセッションにセッションが再接続されます。より正確には、設定された環境変数をscreen読み取ろうとする非対話型セッションで開始したくない場合は、.profile次のコマンドを使用します。

case $- in *i*) exec screen -R;; esac

実行すると、対話型セッションで画面に接続することを回避できます。ssh -t bash -iこれを行うと.profile

関連情報