画面の再接続:端末を開けません


2

ログインしているユーザーとは別のユーザーで画面を使用しようとしています。コマンドは次のコマンドで開始されます。

sudo -u user /usr/bin/screen -A -m -d -S screen ./nice_command

再接続にはを使用しscreen -x screenていますが、常に次のように表示されます。

一致する画面を添付する画面はありません

私の間違いは何ですか?

編集:

screen -x user/22969.screen
There is a screen on:
        22969.screen       (12/13/2011 11:37:43 PM)        (Private)

screen -lsあなたが持っているスクリーンソケットとその名前が何であるかを確認するために行います。
micke

私は次の出力を得ましたNo Sockets found in /var/run/screen/S-root.
CSchulz

回答:


5

su -u userスクリーンセッションを取得したので、今ではに属しuserます。添付
する必要がありますsudo -u user screen -x screen

またはscreen -x user/[pid].screen、画面がマルチユーザーモードであり、アクセスできる場合は、パスを指定します()。screen -ls user/のセッションに関する情報を提供しますuser

マルチユーザー画面が機能するには、それを有効にctrl+a:multiuser onしてユーザーctrl+a:acladd root(または他のユーザー)を追加する必要があります。これは画面内から行われます。
画面もsetuidである必要がありchmod u+s $(which screen)、画面ソケットdirが読み取り可能でなければなりません。(これは、ほとんどの場合すでに既に行われています)。

(こちらの良いガイド:http : //aperiodic.net/screen/multiuser


画面はプライベートであると思われるため、再接続できません(上記を参照)。
CSchulz

1
投稿を編集して、マルチユーザースクリーンセッションに関する情報を含めました。
micke

おかげで、multiuserにスペルがありません。シェルスクリプトまたはそのような何かでそれを行う可能性はありますか?
CSchulz

構成ファイル.screenrcにマルチユーザーとacladdの行を入れます。ここで良いガイドを見つけました:aperiodic.net/screen/multiuser
micke
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.