UnVent - Ventrilo Server on unRAID


Recommended Posts

Hey guys,

 

I just finished configuring Ventrilo Server to work with unRAID.  If anyone is interested, I'll put together a how-to covering what I did and including all of the scripts I modified to make it work.  The only thing I need to update is where unRAID puts the .log and .pid files since right now they are being written to the flash drive.

Link to comment

Hey guys,

 

Sorry it took me so long to post instructions. Work has kept me pretty busy and prevented me from writing everything up before now.

 

Here are the links to the original files used:

 

Linux Ventrilo client: http://www.ventrilo.com/dlprod.php?id=102

3rd Party Linux Ventrilo script: http://ventrilo.com/dlprod.php?id=301

 

You can also download my preconfigured files from here:

http://digital-brilliance.net/ventsrv.zip (the preconfigured files are for Linux v3.0.3)

 

If you download the preconfigured files, extract the zipped ventsrv folder to the packages folder on your flash drive.

 

Your vent path should look like: /boot/packages/ventsrv .   

(If your are setting the flash drive up in Windows it would look something like: D:\packages\ventsrv or \\TOWER\flash\packages\ventsrv )

 

Now, edit your go script in the config folder on the flash drive and add the following code to the end:

 

# START Ventrilo Server
# For Ventrilo server v3.x

# Path to ventrilo startup script
VENSCRIPT=/boot/packages/ventsrv/ventrilo

$VENSCRIPT start 3784

 

This section of code will run a modified version of the original ventrilo script (linked above) that has been placed into the ventsrv folder. My current version of the script writes both the .pid file and the .log file to the flash drive directory for Ventrilo. I haven't worried about changing it because the log size after 2 weeks of running is only 200KB.

 

Finally, to personalize your settings, edit the ventrilo_srv.ini file to your liking. The ventrilo_srv.htm file included explains the various .ini file settings.

 

A note of caution:

If you use the original startup script posted on the Vent website, you will run into issues because, the script as-is, passes the port number to the startup script as the Ventrilo server file and will cause the server to not start.  My modified version of this script is in the ventsrv directory and is named ventrilo.

 

Here is the code for the modified startup script (/ventsrv/ventrilo).

 

#!/bin/sh
#Ventrilo Script v2.1.0_02 written by Crypt Keeper
#Updated for UnRAID 4.x by PhatalOne
#For ventrilo server v2.x

#Replace the values of VENPATH and VENSRV with your ventrilo path and server name.
#Replace the value of VENUSER with the account name that ventrilo runs under.
VENPATH=/boot/packages/ventsrv
VENNAME=ventrilo_srv
VENSRV=$VENPATH/$VENNAME
VENUSER=root

if [ "$UID" -ne 0 ]
then
        echo "You must be root to run this script"
        exit 64
fi

check_pid ()
{
if [ -e $VENPATH/$VENNAME.pid ]
then
PID=`cat $VENPATH/$VENNAME.pid`
else
PID=0
fi
}

start ()
{
echo ""

su $VENUSER -c "$VENSRV -f$VENSRV -d"

check_pid $VENNAME
if [ $PID -ne 0 ]
then
renice -20 $PID
        echo ""
        echo "Ventrilo server on Port:"$1" Started."
        echo ""
else
        echo ""
        echo "ERROR Ventrilo server on Port:"$1" Failed to Start"
        echo ""
        exit 66
fi
}

stop ()
{
check_pid $1
if [ $PID -ne 0 ]
then
        kill $PID
        echo ""
        echo "Ventrilo server on Port:"$1" with PID:"$PID" Stopped."
        echo ""
else
        echo ""
        echo "ERROR Ventrilo server on Port:"$1" Not Running."
        echo ""
        exit 67
fi
}

noport ()
{
echo ""
echo "Invalid argument string"
echo "Please specify a port number"
echo "-h|--help for usage"
echo ""
exit 68
}

case $1 in
-h|--help)
        echo ""
        echo "Ventrilo Script by Crypt Keeper"
        echo "Modified for unRAID by PhatalOne"
        echo "       start port#"
        echo "       stop port#"
        echo "       restart port#"
echo "       status port#"
echo ""
        ;;
start)
        if [ $# -eq 2 ]
        then
	start $2
else
        	noport
        fi
        ;;
stop)
        if [ $# -eq 2 ]
        then
	stop $2
else
        	noport
        fi
        ;;
restart)
        if [ $# -eq 2 ]
        then
	stop $2
	start $2
else
	noport
        fi
;;
status)
        if [ $# -eq 2 ]
        then
	check_pid $2
	if [ $PID -ne 0 ]
	then
		echo ""		
		echo "Ventrilo server on Port:"$2" -Running- with PID:"$PID
		echo ""
	else
		echo ""
		echo "Ventrilo server on Port:"$2" -Not Running-"
		echo ""
	fi
        else
                noport
        fi
        ;;

* )
        echo ""
        echo "Invalid Argument $1"
        echo "-h|--help for usage"
        echo ""
        exit 69
        ;;
esac
exit 0

 

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.