【问题标题】:Executing python script in background in init.d在init.d的后台执行python脚本
【发布时间】:2011-01-01 15:57:51
【问题描述】:

为了与我的 iPhone 交互,我创建了一个通过套接字发送和接收数据的 python 脚本,该脚本必须在 emule 之后启动才能工作, 我想到了这样的事情:

PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DAEMON=/usr/local/bin/amuled
WEB=/usr/local/bin/amuleweb
NAME=amuled
DESC=amuled
RUNAMULE=no
USER=piros
# ADDED FOR iPhone
SOCKET= /home/piros/amule_scripts/aMuleSocket/aMuleSocket.py
#

然后

case "$1" in
start)
  echo -n "Starting $DESC: "
   su $USER -c "$DAEMON -f"
   while ! netstat -l -n -p -t | grep -q amuled ; do sleep 1 ; done
   su $USER -c "$WEB --quiet & "
   ##iPhone
   su $USER -c "$SOCKET & "
   ##
echo "$NAME."
;;

最大的问题是,虽然我指定了 & 标志,但进程不想在后台运行:(有什么想法吗??

谢谢!

【问题讨论】:

    标签: python bash init.d sysv


    【解决方案1】:

    su 进程置于后台,而不是其子进程。例如:

    su $USER -c "$WEB --quiet" &
    

    请注意,和号在引号之外。

    【讨论】:

      【解决方案2】:

      尝试使用nohup process.py &启动

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2014-12-18
        • 2021-08-27
        • 2023-03-23
        • 2015-05-11
        • 1970-01-01
        • 1970-01-01
        • 2022-06-18
        • 1970-01-01
        相关资源
        最近更新 更多