画面を使う画面ビジュアルコンソール。画面を切り離すにはCtrl+を押しAてから+を押す必要がありますDが、時々切り離さずにセッションが閉じられることがあります。次(Attached)
のように表示されますscreen -list
。
eduard@eduard-X:~$ screen -list
There are screens on:
4561.pts-46.eduard-X (30.03.2015 14:48:51) (Attached)
4547.pts-46.eduard-X (30.03.2015 14:48:33) (Detached)
4329.pts-41.eduard-X (30.03.2015 14:46:28) (Attached)
3995.pts-30.eduard-X (30.03.2015 14:30:01) (Detached)
復元しようとすると、画面に復元する画面がないと応答します。
eduard@eduard-X:~$ screen -r 4329
There is a screen on:
4329.pts-41.eduard-X (30.03.2015 14:46:28) (Attached)
There is no screen to be resumed matching 4329.
正しく分離されていない画面を復元できますか?
答え1
もちろん、
screen -d -r
あなたは選ぶことができますどのscreen .screenでpid(またはフルネーム)を見つけて、通常どおり分離して再接続しますscreen -list
。
screen -d -r 12345
答え2
名前の画面を作成する必要があります。
$ screen -S foo
$ screen -list
There are screens on:
16994.foo (03/30/15 14:05:13) (Detached)
20082.q (12/17/14 18:06:44) (Detached)
11008.w (11/12/14 10:52:43) (Detached)
1199.irc (11/12/14 01:34:40) (Detached)
その後、画面を再接続できます
$ screen -dr foo
(16994.fooに追加され、他のプロセスが分離されました)または
$ screen -x i
(他のプロセスと画面を共有する1999.ircに追加されます)
画面ネーミングが大事だと思います。
答え3
私が使用した投稿に提案されたコメントに基づいて:
screen -x <session id>
マニュアルページから:スクリーン-x
-x
分離されていない画面セッションに接続します。 (マルチディスプレイモード)。画面はそれ自体の内部から取り付けることを拒否します。 ただし、複数の画面がカスケード接続されている場合、ループは検出されませんので注意してください。
また、少し調査しながらこのオプションの他の用途を見つけました。画面を使用してリモートで対話する 複数の端末で接続が可能であると説明すると、共有環境でリモートで実際に見て入力できるリモートコンソール共有システムである。
学生を教えたり、同僚との会合をするときに使用できます。
同じ画面IDを使用する2つの異なる端末で同じ画面に接続してみることができます。 (screen -x 4329
)。ある項目に入力した内容が別の項目に表示される場合があり、その逆も同様です。