NSLU2-Linux
view · edit · print · history

Ventrillo is a voice-over-IP server with surround-sound features. This page will enable you to run a Ventrilo server on your Slug using unSLUng 6.8b. I've not tried this on any other version of the OS but my guess is that it should be set up in a similar method.

Installing Ventrilo

First you need to download the Ventrilo server from the Ventrilo site and pick the version for Linux i386.

This comes as a gz so you will need to install gunzip (if not already installed) onto your Slug. Once you have gunzip installed copy the Ventrilo server into a directory, I called mine called /home/ventrilo,

cp ventrilo_srv-2.3.1-Linux-i386.tar.gz /home/ventrilo

upack the vent server file using the command

gunzip ventrilo_srv-2.3.1-Linux-i386.tar.gz

then type

tar -xf ventrilo_srv-2.3.1-Linux-i386.tar

You will probably have to chmod the ventrilo_srv file to make it executable:

chmod +x ventrilo_srv

Make sure the permissions are set ok for the ventrilo_srv file as follows (ls -l will show you the permissions) -

rwxr-x--x

Installing i386 Emulator

Now install Qemu, this is required to run the server which has been written for i386 processors and not ARM processors which is what your Slug CPU is. Once Qemu is installed, open up the ventrilo_srv.ini with nano (this is what I used, but any editor like vi should work fine).

Testing The Server Works

In this file edit the password and admin password so that they have an entry. The reason for this is because I found I couldn't log in and kept getting incorrect password without any value set for them. Also set auth to 1 so that you require a password for logging on.

Once saved launch the ventrio_srv file as follows -

cd /home/ventrilo qemu-i386 ./ventrilo_srv

  • It is important to always run the application from the directory it is installed from. It wont run if you try to run differently to the above**

If this works then you will be logged into the server at console. the only error that should come up is socket error.

Unsupported setsockopt level=1 optname=13

I don't know what this means, but mine works fine with this error. (if anyone can explain what this means?) In the server console type status to get a server status. Also check you can connect to the server with the client software from another PC.

All working fine, good. Now close the server with the quit command. This is good, but defies the point of running the server on your Slug as you need to be logged in via ssh from another machine and closing that connection with drop the server.

Configuring Firewall

Open up port 3784 on UDP and TCP, test your firewall works and allows you access to connect to the Ventrilo server from a client within the network. You will also need to open up the 3784 port UDP and TCP on your router so that the server can be connected to from outside your network.

Running From Boot

Now to get it to run from boot. I put the following line into my /etc/rc.d/rc.local file

cd /home/ventrilo qemu-i386 ./ventrilo_srv -d

If you don't put the -d on then it will cause the Slug to get stuck on boot, but the server will still be running ok. This is not really what you want as you wont be able to log in securely the only way in is via telnet.

Viola, you now have a Ventrilo server running off your Slug.

Other Notes

It might be a wise option to set up another user to run ventrilo under instead of as root, for security reasons with a script. I'm still working out how to do this myself so if some one creates one that works please add for the community to use.

I've not got the ventrilo_status to work as yet and have tried to run using the qemu-i386 command so that it is run in emulated mode. Get the following error -

  1. qemu-i386 ./ventrilo_status

ERROR: No command code specified.

(Please update if you manage to get this working.)

Unfortunately this can't be repackaged due to the EULA which states you will be breaking this if the server download is repackaged.

I've got the ventrilo_status to work. Try using the following command line: qemu-i386 ./ventrilo_status -c2 -t127.0.0.1 Where 127.0.0.1 is your NSLU2 IP.

view · edit · print · history · Last edited by Reedy Boy.
Based on work by Reedy Boy, Grasshpr, and Phil Endecott.
Originally by Reedy Boy.
Page last modified on June 08, 2007, at 10:21 PM