我尝试在启动时运行一些脚本(MongoDB 和 Leanote),但遇到了一些困难。我有一个名为 leanote 的文件:
/etc/init.d/leanote.sh
我还跑了:
update-rc.d leanote.sh defaults 100
据我所知,它应该在系统启动时运行,但我遇到了问题,它似乎没有运行。这是文件:
#!/bin/bash
su - keith -c mongod --dbpath /home/keith/data/ --logpath /home/keith/log/mongodb.log --logappend --fork &
su - keith -c sh /home/keith/leanote/bin/run.sh
无论我怎么尝试,我似乎都无法弄清楚为什么它在启动时没有运行。我可以通过运行 mongo 来检查这一点,它无法建立连接,这意味着它似乎没有运行。
我尝试按照指南操作这里,并添加了 su 部分,因为我认为它是以 root 而不是我的本地用户身份运行的,尽管我不确定这是否重要。
有什么建议吗?谢谢!
答案1
我决定如下:
#!/bin/bash
#
# /etc/init.d/leanote
. /lib/lsb/init-functions
case "$1" in
start)
echo "Starting LEANOTE..."
bash /home/keith/leanote/bin/run.sh &
;;
stop)
echo "Stoping LEANOTE..."
pkill leanote
;;
*)
echo "Usage: $0 {start|stop}"
exit 1
esac
exit 0
运行权限:
chmod +x leanote
在系统启动时插入:
update-rc.d leanote defaults