Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Configuring and running Ryzom Core server !!!Web Services!!! on GNU/Linux

Table of Contents

...

Tip

If your frontend service is available through a firewall using NAT and a mapped IP address this is how you can advertise that external IP address. For example if your FS is on 192.168.1.100 internally but your firewall maps 74.125.225.210 through to your FS you would want to configure FSListenHost to be the address the clients connect to: 74.125.225.210.

 

 

Configuring Apache and web tools

...

/etc/init.d/apache2 restart

 

  • Make sure the directory's requiring write permissions is writeable by all.
chmod a+w code/ryzom/tools/server/admin/graphs_output
chmod a+w code/ryzom/tools/server/admin/templates/default_c
chmod a+w code/ryzom/tools/server/www/login/logs
chmod a+w code/ryzom/tools/server/ryzom_ams/www/
chmod a+w code/ryzom/tools/server/ryzom_ams/www/html/cache
chmod a+w code/ryzom/tools/server/ryzom_ams/www/html/templates_c

 

Setting up MySQL

Note

The configuration files in

  • code/ryzom/server
  • code/ryzom/tools/server/ryzom_ams/www/config.default.php
  • code/ryzom/tools/server/admin/config.php
  • code/ryzom/tools/server/www/login/config.php

expect your user to be named 'shard' with NO PASSWORD. If you decide to use a different name for your MySQL user, or assign it a password, you will need to go through the files and change these values from 'shard' and "" wherever they appear. (they appear in several .cfg files)

Since this (and a password) can lead to unexpected errors (eg. error '4000') it is best to make sure everything works correctly with the defaults first.

...

Code Block
languagesql
titleCreate Database and Grant Privileges
GRANT ALL ON nel.* TO newuser@localhost;
GRANT ALL ON nel_tool.* TO newuser@localhost;
GRANT ALL ON ring_open.* TO newuser@localhost;

FLUSH PRIVILEGES;

 

Running the shard

...

titleVery Important Note

...

Info

If you're running on Ubuntu or Debian, the default shell is actually dash and the shard/screen scripts will not run correctly in dash. The steps following will have you switch to bash. If you want to keep using dash as the default shell then you will need change the shebang from /bin/sh to /bin/bash in the following files:

  • code/ryzom/tools/scripts/linux/shard
  • code/ryzom/server/shard.screen.rc

This note no longer applies. Scripts have been modified for /bin/sh.

Warning
titleVery Very Important Note

The information below is not valid for the latest repository version.

Tip

Great screen how-to at: http://www.rackaid.com/resources/linux-screen-tutorial-and-how-to/

  • Run commands:
Code Block
# if you're on Ubuntu or Debian - disable dash:
[[ `lsb_release -si` = 'Ubuntu' ]] || [[ `lsb_release -si` = 'Debian' ]] &&\
    # Change your selection to 'no' so it uses bash instead.
    sudo dpkg-reconfigure dash
echo "export RYZOM_PATH=/home/user/ryzom/code/ryzom" >> ~/.bashrc
source ~/.bashrc
echo "export PATH=$PATH:$RYZOM_PATH/tools/scripts/linux" >> ~/.bashrc
source ~/.bashrc

 

...

Tip
titleRunning and Monitor the Shard
  • To start: shard start
  • To stop: shard stop
  • To view screen: shard join
  • To switch monitored service: Ctrl-A+n

 To make the shard start on boot use the below init script, you will need to change "export RYZOM_PATH=/home/username/ryzom/code/ryzom" to your path

Info
titleService Script

#!/bin/sh

# chkconfig: 235 99 10

# description: Start or stop the Ryzom Core server

#

### BEGIN INIT INFO

# Provides: Ryzom Core Shard

# Required-Start: $network $syslog

# Required-Stop: $network

# Default-Start: 2 3 5

# Default-Stop: 0 1 6

# Description: Start or stop the Ryzom Core server

### END INIT INFO

 

export RYZOM_PATH=/home/username/ryzom/code/ryzom

export PATH=$PATH:$RYZOM_PATH/tools/scripts/linux

 

start="$RYZOM_PATH/tools/scripts/linux/shard start"

stop="$RYZOM_PATH/tools/scripts/linux/shard stop"

lockfile=/var/lock/ryzomcoreshard

name='Ryzom Core Shard'

 

case "$1" in

'start')

        $start >/dev/null 2>&1 </dev/null

        RETVAL=$?

        if [ "$RETVAL" = "0" ]; then

                touch $lockfile >/dev/null 2>&1

        fi

        ;;

'stop')

        $stop

        RETVAL=$?

        if [ "$RETVAL" = "0" ]; then

                rm -f $lockfile

        fi

        ;;

'status')

        if [ -f $lockfile ]; then

                echo "$name is running"

                RETVAL=0

        else

                echo "$name is stopped"

                RETVAL=1

        fi

        ;;

'restart')

        $stop ; $start

        RETVAL=$?

        ;;

*)

        echo "Usage: $0 { start | stop | restart }"

        RETVAL=1

        ;;

esac

exit $RETVAL

 

 

Client login errors

Setting up Web Applications

For user administration and ticketing you will need to Setup the AMS

Creating a client

Now you need to create your own client please see Creating a Client

Notes

If you want to use your shard with the core client, you will have to copy the following file into code/ryzom/common/data_common:

...