EQEmulator Forums

EQEmulator Forums (https://www.eqemulator.org/forums/index.php)
-   Support::Linux Servers (https://www.eqemulator.org/forums/forumdisplay.php?f=588)
-   -   Updating Server Code (https://www.eqemulator.org/forums/showthread.php?t=43413)

Kennebec 09-26-2021 04:21 PM

Updating Server Code
 
Is there a prescribed server update process to update my eqemu server? I want to keep the code current and want to make sure I follow the correct steps to ensure it stays whole. I've searched the site but couldn't find instructions. Thanks for any advice.

hayward6 10-05-2021 09:13 AM

Quote:

Originally Posted by Kennebec (Post 267166)
Is there a prescribed server update process to update my eqemu server? I want to keep the code current and want to make sure I follow the correct steps to ensure it stays whole. I've searched the site but couldn't find instructions. Thanks for any advice.

You're in the same boat I have always been in. As long as you keep up with the code and mySQL updates, you can maintain the cutting edge changes a lot easier than if you let them lapse. In my case I just wipe the server every few months and start from a fresh build. This works for me because I'm alone on my server these days and really just use it to explore zones and tactics I want to try in live. I know Linux well enough to hold my own, but I can't design a script that will do the updates. I think the newer install script and executables makes it easier than it was in the past, but I'm not familiar with the steps.

Secrets 10-05-2021 09:57 AM

The EQEmu server update script will handle merging in latest SQL updates. It's embedded into the world server.

As for PEQ, no, there isn't an 'approved' way to merge in latest content. You'll just have to nuke your non-player tables.

Baltros101 10-18-2021 06:00 PM

Try something like this while logged in as eqemu user:

Code:

#! /bin/sh
cd /home/eqemu/server
./server_stop.sh
./world database:dump --login-tables --player-tables
cd /home/eqemu
tar -zcf old_binaries.tar.gz server_source
cd /home/eqemu/server_source
git pull --recurse-submodules
cd /home/eqemu/server_build
rm -rf *
cmake -DEQEMU_BUILD_LOGIN=ON -DEQEMU_BUILD_LUA=ON -G "Unix Makefiles" /home/eqemu/server_source
make
cd /home/eqemu/server
./server_start_with_login.sh

This assumes you are using Ubuntu or Debian and aren't using bots. If you're using bots then add "-DEQEMU_ENABLE_BOTS=ON" to the cmake line just after the cmake. If you're using Fedora then the cmake line should look more like this:

cmake -DEQEMU_BUILD_LOGIN=ON -DEQEMU_BUILD_LUA=ON -DLUA_INCLUDE_DIR=/usr/include/lua-5.1/ -G "Unix Makefiles" cd /home/eqemu/server_source

Note that the script backs up the player and login tables before running, and also tarballs up the old binaries in case the compilation fails.

Disclaimer: I take no responsibility if this borks anything. If in doubt, manually back up your stuff and run it one line at a time.


All times are GMT -4. The time now is 07:39 PM.

Powered by vBulletin®, Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.