使用virtuoso手动重启问题

时间:2014-01-14 19:33:03

标签: rdf triplestore virtuoso

我在我的Ubuntu机器上安装了virtuoso的开源版本。我面临的问题是,每次重新启动机器时我都必须手动重启virtuoso。有没有什么方法可以让我的机器自动启动virtuoso?就像,我有tomcat安装在另一个端口,我不需要重新启动我的机器后重启Apache。有谁知道我可以在哪里进行更改来解决这个问题。感谢

2 个答案:

答案 0 :(得分:1)

写一个类似的脚本:

#!/斌/庆典

sudo /usr/virtuoso-6.1.7/bin/virtuoso-t -fd + configfile /usr/virtuoso-6.1.7/bin/virtuoso.ini

(或任何其他配置) 将脚本保存在某个地方

在/etc/rc.local

中输入以下内容

openvt -s / path / to / your / script

重新启动后,这将通常在CTRL + ALT + F7(您的桌面)之后在新的后台终端(或其所谓的其他术语)中自动启动您的脚本 - > CTRL + ALT + F8

我希望我能够正确地记住这一点并记录所有步骤(已经有一段时间了)。

问候

答案 1 :(得分:1)

有必要处理艺术家的开始和停止 一种可能的方式: (作为运行virtuoso的用户) 在运行virtuoso的用户的主页中创建bin文件夹并添加以下脚本

virtuosoStart.sh

DBDIR=/vol0/virtuosodb
VIRTUOSO_BIN=/opt/virtuoso7/bin/
export PATH=$VIRTUOSO_BIN:$PATH
cd $DBDIR
virtuoso-t

virtuosoStop.sh

#!/bin/bash
VIRTUOSO_BIN=/opt/virtuoso7/bin/
${VIRTUOSO_BIN}isql-v 1111 dba dba  -K

请根据您的环境更改DBDIR和VIRTUOSO_BIN

(以root身份,“sudo su”或在每个命令之前添加sudo) 现在有必要制作接受文件夹/etc/init.d中的启动和停止参数的脚本。

cp skeleton virtuoso
chmod a+x virtuoso

您可以按照以下方式删除eunnecessary函数并实现启动停止和状态操作:

DESC="virtuoso server"
NAME=virtuoso
DAEMON=/opt/virtuoso7/bin/virtuoso-t
# Exit if the package is not installed
[ -x "$DAEMON" ] || exit 0
DBDIR=/vol0/virtuosodb
PIDFILE=${DBDIR}/virtuoso.lck
SCRIPTNAME=/etc/init.d/$NAME
USER=ubuntu
START_SCRIPT=/home/${USER}/bin/virtuosoStart.sh
STOP_SCRIPT=/home/${USER}/bin/virtuosoStop.sh

case "$1" in
 start)
    [ "$VERBOSE" != no ] && log_daemon_msg "Starting $DESC" "$NAME"
    su -l $USER -c $START_SCRIPT
    case "$?" in
            0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
            2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
    esac
    ;;
stop)
    [ "$VERBOSE" != no ] && log_daemon_msg "Stopping $DESC" "$NAME"
    su -l $USER -c $STOP_SCRIPT
    case "$?" in
            0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
            2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
    esac
    ;;
status)
    if [ -f $PIDFILE ] && ps -p$(cut -d "=" -f 2 ${PIDFILE} ) > /dev/null;then
            log_success_msg "$NAME is running"
            exit 0
    else
            log_failure_msg "$name is not running"
            exit 1
    fi
   ;;
*)
    echo "Usage: $SCRIPTNAME {start|stop|status}" >&2
    exit 3
    ;;
esac

现在必须将脚本链接添加到适当的/etc/rc.x文件夹中。你可以手动或更好的方式来做:

update-rc.d virtuoso defaults

希望它有所帮助,祝你好运

btw:您可以添加检查virtuoso是否已经运行到init脚本的开始部分