تنفيذ Python Script في الخلفية في Init.d
سؤال
للتفاعل مع جهاز iPhone الخاص بي، قمت بإنشاء برنامج نصي ثعبان يرسل ويتذكر البيانات من خلال مأخذ توصيل، يجب أن يبدأ البرنامج النصي بعد 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."
;;
المشكلة الكبيرة هي، على الرغم من أنني حددت وتوقيع العملية لا تريد تشغيلها في الخلفية :( أي أفكار؟
شكرا!
المحلول
ضع ال su
عملية في الخلفية وليس طفلك. علي سبيل المثال:
su $USER -c "$WEB --quiet" &
لاحظ أن أمبيرساند خارج الاقتباسات.
نصائح أخرى
حاول إطلاق مع nohup process.py &
لا تنتمي إلى StackOverflow