屏幕日志记录无法通过ssh终端工作

问题描述 投票:-1回答:1

我想在debian linode服务器上运行“screen”,在ssh终端窗口启动。我想要一个shell脚本来启动和分离屏幕,以便在我注销时进程可以继续。我还想生成日志文件screenlog.0,以便在进程崩溃时有一条记录。

但是在写入日志文件时存在问题。在本地,在mac终端窗口,

% screen -dm -L sh -c 'echo hello'

工作正常,“你好”写入screenlog.0。但是在ssh窗口中向服务器发出的相同命令执行,但没有任何内容被写入。但是,如果在那个窗口我进入屏幕,

% screen -L

然后做一些事情,活动被写入screenlog.0(在服务器上)。

我错过了什么?

linux logging debian gnu-screen
1个回答
1
投票

事实证明,screen()命令可能有问题。上面的命令在'Debian GNU / Linux 9(stretch)'下没有向screenlog.0发送输出,而'Ubuntu 14.04.1 LTS'写了奇怪的消息,“错误:无法启动服务器!尝试以root身份运行!”,到screenlog.0,即使以root身份运行。 'Linux Mint 18.1'和MacOSX正常运行。

我被建议使用古老的unix命令“nohup”来解决我分离进程和记录其输出的问题,即使你关闭了ssh连接。通常,当您关闭终端窗口时,信号SIGHUP将被发送到在那里启动的任何进程。但

%nohup myprog> logfile.txt&

工作得很好。老路,好方法。

© www.soinside.com 2019 - 2024. All rights reserved.