如何让我的Stardog服务在azure ubuntu VM中自动启动?

时间:2014-11-19 16:57:03

标签: ubuntu azure upstart autostart stardog

我是linux超级新手,所以让我们分解吧。 我正在关注these instructions,但它似乎仍无效。

我的stardog.conf文件如下:

description "stardog database"

start on runlevel [2345]
stop on runlevel [!2345]

umask 077

env STARDOG_UID=azureuser
env STARDOG_GID=1000
env ROOTJAIL=
env STARDOG_LOCATION=/stardog
env STARDOG_HOME=

exec /bin/bash /stardog/sparent

respawn

我已经将这个.conf文件放在/ etc / init中,就像说明的那样,我有一个schild和sparent文件放在stardog目录中,然后我在VM中运行“sudo start stardog”。这似乎不起作用,因为即使我得到所有进程的列表(ps -a)stardog或java没有出现在列表中(它将显示为java服务)。当我重新启动时,stardog没有运行。

1 个答案:

答案 0 :(得分:1)

对于https://github.com/snowell/stardog-ubuntu-scripts处的脚本 - 确保设置所有变量。你有没有设置STARDOG_HOME?这需要是Stardog存储变量的目录。

如果您想要一个更灵活源github项目的更直接的脚本,这里是Stardog的第一个Ubuntu新手脚本之一(这是1.x),并使用上述repo的conf文件进行推广。

uparent:

#!/bin/sh

exec &>/tmp/s.out
set -x

mount -t proc proc /opt/tomcat/chroot/proc

#/usr/sbin/chroot --userspec=1005:1005 /opt/tomcat/chroot /opt/test/stardog/uchild
/usr/sbin/chroot --userspec=1005:1005 /opt/tomcat/chroot /opt/stardog/uchild

umount /opt/tomcat/chroot/proc

和相应的schlid

#!/bin/sh

export JAVA_HOME=/usr/lib/jvm/java-6-sun
export STARDOG_HOME=/opt/stardog

function shutdownStardog {
	/opt/stardog/stardog-admin server stop
}

trap shutdownStardog HUP INT QUIT ABRT KILL ALRM TERM TSTP

sync; echo 3 > /proc/sys/vm/drop_caches

#/opt/stardog/stardog-admin server start
# Instead we will execute the stardog-cli.jar directly so the wait command will have an infinite process
# to wait for.  Maybe.
java -XX:SoftRefLRUPolicyMSPerMB=1 -XX:+UseParallelOldGC -XX:+UseCompressedOops -server -classpath /opt/stardog/client/cli/stardog-cli.jar com.complexible.stardog.cli.admin.CLI server start >> /opt/stardog/stardog.log 2>&1 &

wait $!