Versions Compared

Key

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

Configuring and running Ryzom Core server on GNU/Linux

...

Panel

sudo apt-get install apache2 php5 php5-mysql php5-gd rrdtool screen

 

Making changes in services config files

...

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

...

cd code/ryzom/tools/server/admin/templates/
cp -r default default_c
chmod a+w default_c

 

Setting up MySQL

Note

The configuration files in code/ryzom/server 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 .cfg files and change these values from 'shard' and "" wherever they appear. (they appear in several of the .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.

...

  • Use the Quick Start SQL Setup Script
  • Edit the file and replace the following path with your own:
    • /home/ryzom/code/ryzom/server/save_shard/rrd_graphs
  • Import in phpMyAdmin or sourcing via the mysql CLI.

Running the shard

  • Make sure $RYZOM_PATH is set correctly: export RYZOM_PATH="/home/user/ryzom/code/ryzom"
  • If you did a CMake build you will need to copy the compiled binaries to their proper locations before running shard start:

From location: /home/user/ryzom/code run:

Panel
titleCopy Binaries To Run Location
borderStyledashed
cp ./build/bin/ryzom_admin_service $RYZOM_PATH/server/src/ryzom_admin_service/ryzom_admin_service
cp ./build/bin/ryzom_ai_service $RYZOM_PATH/server/src/ai_service/ai_service
cp ./build/bin/ryzom_backup_service $RYZOM_PATH/server/src/backup_service/backup_service
cp ./build/bin/ryzom_dynamic_scenario_service $RYZOM_PATH/server/src/dynamic_scenario_service/dynamic_scenario_service
cp ./build/bin/ryzom_entities_game_service $RYZOM_PATH/server/src/entities_game_service/entities_game_service
cp ./build/bin/ryzom_frontend_service $RYZOM_PATH/server/src/frontend_service/frontend_service
cp ./build/bin/ryzom_gpm_service $RYZOM_PATH/server/src/gpm_service/gpm_service
cp ./build/bin/ryzom_ios_service $RYZOM_PATH/server/src/input_output_service/input_output_service
cp ./build/bin/ryzom_log_analyser_service $RYZOM_PATH/server/src/log_analyser_service/log_analyser_service
cp ./build/bin/ryzom_logger_service $RYZOM_PATH/server/src/logger_service/logger_service
cp ./build/bin/ryzom_mail_forum_service $RYZOM_PATH/server/src/mail_forum_service/mail_forum_service
cp ./build/bin/ryzom_mirror_service $RYZOM_PATH/server/src/mirror_service/mirror_service
cp ./build/bin/ryzom_naming_service $RYZOM_PATH/server/src/ryzom_naming_service/ryzom_naming_service
cp ./build/bin/ryzom_pd_support_service $RYZOM_PATH/server/src/pd_support_service/pd_support_service
cp ./build/bin/ryzom_persistant_data_service $RYZOM_PATH/server/src/persistant_data_service/persistant_data_service
cp ./build/bin/ryzom_reference_builder_service $RYZOM_PATH/server/src/pd_reference_builder/pd_reference_builder
cp ./build/bin/ryzom_session_browser_service $RYZOM_PATH/server/src/session_browser_server/session_browser_server
cp ./build/bin/ryzom_shard_unifier_service $RYZOM_PATH/server/src/shard_unifier_service/shard_unifier_service
cp ./build/bin/ryzom_tick_service $RYZOM_PATH/server/src/tick_service/tick_service
cp ./build/bin/ryzom_welcome_service $RYZOM_PATH/server/src/ryzom_welcome_service/ryzom_welcome_service

 

  • Ubuntu users, the 'shard/screen' scripts included will not work properly with the default 'dash' shell included in order to fix this run "sudo dpkg-reconfigure dash" and select "no". Alternatively you could modify both code/ryzom/tools/scripts/linux/shard andcode/ryzom/server/shard.screen.rc and find/replace any /bin/sh to /bin/bash.
  • Run commands:
export PATH=$PATH:$RYZOM_PATH/tools/scripts/linux
shard start

and of course to stop services:

shard stop 

You should now have 20 Ryzom Core services running. You can monitor each running service using screen by:

...

Info

If you're running on Ubuntu 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
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 - disable dash:
if [ `lsb_release -si` = 'Ubuntu' ];
then
    # Change your selection to 'no' so it uses bash instead.
    sudo dpkg-reconfigure dash;
fi
echo "export RYZOM_PATH=/home/user/ryzom/code/ryzom" >> ~/.bashrc
echo "export PATH=$PATH:$RYZOM_PATH/tools/scripts/linux" >> ~/.bashrc
source ~/.bashrc

 

  • Start the shard by typing: shard start

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


 

Client login errors

 

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:

...