我在 init.rc 中将 shell 脚本作为服务运行,但它被终止并不断重新启动。
服务在init.rc中注册如下
service Storelog /system/bin/logwrapper /system/bin/store_log.sh
user root
disabled
脚本store_log.sh是
#!bin/sh
while true
do
echo "Updating system log.."
logcat > /data/system.log &
sleep 600
echo "Killing background logcat."
logpid=$!
echo "logpid $logpid"
kill $logpid
logcat -c
done
我将在某些触发器(例如 boot_completed)上启动此 Storelog
该服务启动,在一个循环后被终止并重新启动。
我在这里缺少什么?一些许可? 任何建议都有帮助。
最佳答案
根据此页面:http://developer.android.com/tools/help/logcat.html
“-c”选项导致 logcat 退出
但是,此时,“kill”已经退出了 logcat。
建议修改脚本为:(以下未经测试)
#!bin/sh
while true
do
echo "Updating system log.."
logcat -d > /data/system.log &
sleep 600
done
关于android - 初始化.rc : service killed and restarts,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30841174/