Installing RMX-OS on Ubuntu Linux 14.04 (32-bit)

Started by lilbrudder917, January 02, 2020, 07:20:11 pm

Previous topic - Next topic


January 02, 2020, 07:20:11 pm Last Edit: January 02, 2020, 08:56:28 pm by lilbrudder917
Installing RMX-OS on Linux

Setting up our environment
For the purposes of this tutorial, we will be installing RMX-OS on a fresh Vultr instance running a 32-bit version of Ubuntu Server 14.04. You will need to download the ISO here, as Vultr does not natively support Ubuntu 14.04.

Once registered with Vultr, begin by deploying a new Cloud Compute instance. You can choose whichever server location you wish to use.
Spoiler: ShowHide

Make sure to upload and select the Ubuntu 14.04 ISO. Finally, choose a hostname and label - anything works. Then, deploy the server and wait for Vultr to finish up.
Spoiler: ShowHide

Click on the label you gave the server to manage your server, then click on the icon displayed below to view the console in noVNC. This is important because you won't be able to SSH into the machine until Ubuntu is installed. This step can vary a lot, so unless requested, I won't walk you through the steps to install Ubuntu - just make sure you include the OpenSSH package. Follow the steps in this guide if you need help.

Spoiler: ShowHide

Setting up Ruby
This part is easy. We're going to be installing Ruby 1.9.1 through Ruby Version Manager (RVM). To install, SSH into your server and run:

sudo apt-get install software-properties-common libmysqlclient* mysql-client
sudo apt-add-repository -y ppa:rael-gc/rvm
sudo apt-get update
sudo apt-get install rvm
sudo shutdown -r 0

This will install RVM (and other RMX-OS dependencies) and also reboot the server, which is required to actually use RVM. Note that you may have to use the noVNC console again to start the server back up; it will try to reinstall Ubuntu. Press escape and then select "Boot from first disk." When the server starts back up, SSH back into it and run the following command:

rvm install ruby-1.9.1
This will take some time, but will eventually complete. Use the following command to ensure that Ruby was installed correctly.

ruby -v

If you get a Ruby not installed error, try using the following:

rvm use ruby-1.9.1

Getting our files

Next, we need to get RMX-OS and its required files onto the server. We will be using the MRMX-OS version of RMX-OS provided by Aegisrox, though I am unsure if it would make a difference if you used the official Blizzard version. Download MRMX-OS from here or here.

If you do not have an FTP client that supports SFTP, download the Filezilla FTP client here. Open Filezilla and fill in the following settings:


Once connected via SFTP, the default directory will be your home directory. This is a fine spot for MRMX-OS, so create a new directory (perhaps called "game" or something similar) and enter it. Unzip the MRMX-OS zip file and upload the contents of the "MRMX-OS Server" folder into the newly created directory.

Return to your SSH shell and enter the following commands:

gem install mysql
vi ./RMX-OS.rb

Scroll down to line 72, press Insert to enter insert mode, and replace
require "./bin/#{version}/mysql_api"
with this:
require 'mysql'
Then, press escape and type in :wq, then press enter to write and quit.

Finally, edit your cfg.ini file to point to the MySQL server you will be using. If you need help setting up the MySQL server, I would be happy to continue this guide to include that information as well. But for now, run the following code:
ruby ./RMX-OS.rb

You should get the following warning screen, or something similar:
Spoiler: ShowHide

RMX-OS Server v2.0 (using Ruby v1.9.1)
MRMX-OS System Server v1.0
Loading extensions...
'MOTD.rb' v1.0 loaded and initialized.
'UserLogger.rb' v1.2 loaded and initialized.
> Starting TCP Server at ''...
> Connecting to MySQL database 'rmxosdb'...
Unexpected error occured!
Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
./src/SQL.rb:23:in `new'
/home/aov/game/src/SQL.rb:23:in `initialize'
/home/aov/game/src/Server.rb:81:in `new'
/home/aov/game/src/Server.rb:81:in `connect_to_database'
/home/aov/game/src/Server.rb:55:in `start'
./RMX-OS.rb:109:in `main'
./RMX-OS.rb:269:in `<main>'

RMX-OS Server is being terminated...

If you do, then that means that RMX-OS is properly running on Ubuntu, but still requires a SQL database to connect to. Let me know if you found this guide helpful; if anyone needs help setting up the SQL database I'd be happy to assist, but the bulk of the work is done! Pat yourself on the back and treat yourself to something nice.

Edit: Following the same instructions, I was able to get RMX-OS working on Ubuntu Linux 16.04 (64-bit).