私はsshとtmuxを初めて使用します。 sshを介してリモートサーバーでrakeタスクを実行したいのですが、コンピューターをシャットダウンして、サーバーでタスクを実行し続けたいと思います。だから私はそれをしているように見えるtmuxを発見しました、しかし昨夜私はtmuxセッションを再接続した後に「書き込みエラー、壊れたパイプ」を受け取りました。私のインターネットホームインターネットは非常に不安定なので、新しいIPを取得する可能性がありますが、それは問題ですか?では、どうすればこれを防ぐことができますか?
私が理解しているように、サーバー上でプログラムを実行したままにしておき、プログラムはtmux内で実行する必要があります。これを機能させるには、サーバーでtmuxを実行する必要があります。
client$ ssh server
server$ tmux
server$ program
[detach from tmux]
server$ exit
client$
再接続するには、次の操作を実行できます。
client$ ssh server
server$ tmux attach
client$ ssh -t server tmux new program
[detach]
-d
スイッチをnew
に追加すると、tmuxセッションは接続されませんが、バックグラウンドで実行されます。このようなもの:
client$ ssh -qt server tmux new -d "'program'"
コマンドに空白が含まれている場合は、コマンドを二重引用符で囲む必要があることに注意してください。
再接続:
ssh -t server tmux attach