Nohup 进程未运行到 ssh

Nohup 进程未运行到 ssh

nohup我有一个关于在会话中使用的问题ssh。在三年多的时间里,我的 java 软件每天使用远程 ssh 会话执行以下命令:

cd some_path; chmod 777 script.sh; ./script.sh

脚本的内容是:

nohup java java_command parameters &

它非常简单并且在红帽机器上始终运行完美。

在使用相同环境的新软件安装中,该命令不起作用。如果我从任何远程 ssh 会话手动执行它,它也不起作用。但是,如果我更改 的内容script.sh,删除nohup&,则该命令可以正常工作。

可能是什么问题? ssh 设置相同。我发现的唯一区别是在新安装中和在原始安装中是不同umask的。00120022

附加信息:原始安装是 RHEL 5.4,新安装是 RHEL 6.3。 6.3版本默认限制更多吗?

答案1

您的登录 shell 已更改吗?

尝试一下。编辑您的脚本并更改nohup/usr/bin/nohup.

它可能是解决方案的原因是登录 shell(例如 C shell)有自己的“nohup”版本。 C shell(或 tcsh)nohup 接受命令,但不接受命令参数。另一方面,/usr/bin/nohup 可以接受一个命令和一个可选的命令参数,这就是您使用 nohup 的方式。

相关内容