我正在尝试与其他用户一起使用 screen 而不是我登录。命令开始于:
sudo -u user /usr/bin/screen -A -m -d -S screen ./nice_command
Run Code Online (Sandbox Code Playgroud)
对于重新连接,我正在使用screen -x screen,但它总是说:
没有要附加的屏幕匹配屏幕
我的错误是什么?
编辑:
screen -x user/22969.screen
There is a screen on:
22969.screen (12/13/2011 11:37:43 PM) (Private)
Run Code Online (Sandbox Code Playgroud)
由于您确实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(或其他用户)。这是从屏幕内完成的。
Screen 还需要设置为 setuid,chmod u+s $(which screen)并且 screen sockets 目录必须是可读的。(这几乎总是如此)。
(这里有很好的指南:http : //aperiodic.net/screen/multiuser)