Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 9 Next »

Configuring and running Ryzom Core server on GNU/Linux

Preparing Packages

For Debian/Ubuntu users you will need to install the following packages:

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

 

Making changes in services config files

  • Change FSListenHost in code/ryzom/server/frontend_service.cfg to your address (e.g. 192.168.0.1). If you set up server on different machine, remember it has to be address that's reachable on client host.

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

Advanced Configuration Topics

In order to execute system commands like restarting services you will need to be able to log in as root or execute the command using sudo, e.g.:

sudo /etc/init.d/apache2 restart
  • Restart Apache by typing the following.
/etc/init.d/apache2 restart
  • Set NELTOOL_SITEBASE to your server address and NELTOOL_SYSTEMBASE to your path in code/ryzom/tools/server/admin/config.php.
  • Create code/ryzom/server/save_shard/rrd_graphs/ directory.
mkdir -p code/ryzom/server/save_shard/rrd_graphs/
  • Make sure the code/ryzom/tools/server/admin/graphs_output directory is writeable by all.
chmod a+w code/ryzom/tools/server/admin/graphs_output
  • Change $LogRelativePath to 'logs/' in code/ryzom/tools/server/www/login/config.php (NOTE: log directory has to be writeable by webserver and it's not wise to give it write access to the directory where script is.)
$LogRelativePath = 'logs/';
  • Make code/ryzom/tools/server/www/login/logs/ directory and make it writeable by all for login script logs.
mkdir -p code/ryzom/tools/server/www/login/logs/
chmod a+w code/ryzom/tools/server/www/login/logs/
cd code/ryzom/tools/server/admin/templates/
cp -r default default_c
chmod a+w default_c

 

Setting up MySQL

You may also skip this section and use the next section entitled "Setting up MySQL (Alternative)". It condenses all the steps listed below into a pre-generated MySQL file that you import.

SHOW VARIABLES WHERE Variable_name='sql_mode';
SET @@global.sql_mode= '';
* Login to the MySQL database server using the command line:

mysql -uroot -p
cat code/ryzom/tools/server/sql/ryzom_tables.sql | mysql -ushard
cat code/ryzom/tools/server/sql/ryzom_default_data.sql | mysql -ushard
cat code/ryzom/tools/server/sql/ryzom_admin_default_data.sql | mysql -ushard nel_tool
USE nel_tool;
UPDATE neltool_domains SET domain_as_host='YOUR_ADDRESS' where domain_id=12;
< Kaetemi> and only the SU, FS and web services should have a public ip, the other should be behind private for security reasons :)

Setting up MySQL (Alternative)

Use the Quick Start SQL Setup Script

https://docs.google.com/leaf?id=0B3LX3q7MsUEGNjdkMTJlZDItMzZlNy00Y2M0LTg0ODctMGI5MTExNjEzNTlk

Edit the file and replace the following path with your own:

/home/ryzom/code/ryzom/server/save_shard/rrd_graphs

Import in phpMyAdmin.

 

Running the shard

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

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:

momentarily pressing "ctrl" and "a" together and then press "n" to cycle through.

 

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:

http://ks35074.kimsufi.com:8080/visual_slot.tab

  • No labels