启动时运行脚本

启动时运行脚本

我尝试在启动时运行一些脚本(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

相关内容