Bash nohup作业控制rhel6/centos
我对RHEL6中的UNIX作业控制有一个问题 基本上,我正在尝试使用logrotate实现调试日志旋转。我按照这里的指示: (我想)我把一切都安排好了。我的问题是,;当我使用Bash nohup作业控制rhel6/centos,bash,passenger,rhel6,Bash,Passenger,Rhel6,我对RHEL6中的UNIX作业控制有一个问题 基本上,我正在尝试使用logrotate实现调试日志旋转。我按照这里的指示: (我想)我把一切都安排好了。我的问题是,;当我使用 nohup pipetool $HOME/passenger.log < $HOME/passenger.pipe & nohup pipetool$HOME/passenger.log
nohup pipetool $HOME/passenger.log < $HOME/passenger.pipe &
nohup pipetool$HOME/passenger.log<$HOME/passenger.pipe&
然后注销并重新登录,如果我检查进程表,例如使用“ps aux”,如果我检查进程的pid,它将显示为命令“bash”。我已尝试将命令的第一行更改为“#!/usr/bin/ruby”。以下是一个例子:
[root@server]# nohup pipetool /var/log/nginx/passenger-debug.log < /var/pipe/passenger.pipe &
[1] 63767
[root@server]# exit
exit
[me@server]$ sudo su
[sudo] password for me:
[root@server]# ps aux | grep 63767
root 63767 0.0 0.0 108144 2392 pts/0 S 15:26 0:00 bash
root 63887 0.0 0.0 103236 856 pts/0 S+ 15:26 0:00 grep 63767
[root@server]#
[root@server]#nohup pipetool/var/log/nginx/passenger-debug.log
出现这种情况时,提供的logrotate文件(killall-HUP pipetool)中的行将失败,因为“pipetool”不匹配。我再次尝试将第一行改为#/usr/bin/ruby。这没有任何影响。所以我的问题基本上是,;在使用作业控制生成时,有没有什么好方法可以让实际命令显示在进程表中,而不仅仅是“bash”?调用pipetool时,我使用bash作为shell。非常感谢您抽出时间来帮助我。这应该对您有用:编辑
pipetool
以设置全局变量$PROGRAM\u NAME
:
$PROGRAM_NAME = 'pipetool'
然后,脚本应在进程列表中显示为
pipetool
。取决于您的操作系统等。请尝试查找ptree$PID
,或ps的可视化树选项。然后,您将看到父bash
进程及其子进程。为什么你不能搜索乘客呢。。。。或pipetool
?祝你好运