我一直遇到 screen (终端命令) 问题。如果我输入screen -ls
它,它会给我:
/var/run/screen/S-root 中未找到套接字。
我screen -r
得到:
没有要恢复的屏幕。
我所做的是将其放入@reboot screen -d -m /path/to/script
crontab,我的 shell 脚本启动一个 java 进程。
我htop
显示了 java 和屏幕命令 PID。有什么想法吗?
提前致谢。
PS:我使用 Ubuntu 14.04.1 LTS
答案1
我在 Ubuntu 14.04.1 上也看到了同样的问题。我仍然不确定是什么导致了这个问题,但这将重新创建 fifo/socket 并允许您重新连接到屏幕会话。
kill -CHLD <PID_OF_SCREEN>
答案2
也许屏幕是由除 之外的用户创建的root
,因此不在目录中/var/run/screen/S-root
,而是在/var/run/screen/S-username
目录中。
您可以尝试将屏幕添加到您的根 crontab 而不是用户的 crontab。例如:
sudo crontab -u root -e