ほぼ2日間、LinuxセッションでMatlabを実行しましたが、ネットワーク接続が失敗した場合、計算結果が失われるのではないかと心配しました。 Matlabを背景に移動して「スクリーン」を起動すると、この問題は解決しますか?
答え1
いいえ、プロセスの開始後に画面セッションを開始することは役に立ちません。あなたが試すことができるのは、プロセスをバックグラウンドに置くことだけです。私のLinux(Mint 17)では、別のシェルで試してみて、バックグラウンドに「sleep 100000」を入れました。
その後、セッションからログアウトして新しいセッションを開始しました。プロセスsleep 100000
は引き続き実行され、親プロセスはプロセス1(initプロセス)になります。
ステップは次のとおりです。
sleep 100000
Ctrl+z
bg 1
ps -ef |grep sleep
testuser 7482 7320 0 14:44 pts/11 00:00:00 sleep 10000000
ログアウト
ログイン
ps -ef |grep sleep
testuser 7482 1 0 14:44 ? 00:00:00 sleep 10000000
Solarisなどの他のシステムには、nohup
停止を防ぐためにpidを指定できるコマンドがあります。
答え2
習慣。 Matlab出力はscreen
セッション中の魔法のようには見えません。これはscreen
、Matlabセッションを開始してから開始する必要があるためです。同様に適用されますtmux
。
この実行中のプロセスの標準入力/出力を別のプロセスに再接続しようとします。レプテル