Upgrading UnrealIRCd

This page explains how to upgrade your UnrealIRCd to a newer version if you stay on the same series: so 5.2.x to 5.2.y or 6.0.x to 6.0.y.

IMPORTANT: If you are upgrading from UnrealIRCd 5 to 6, then see Upgrading from 5.x.

Automated upgrade (*NIX)

Simply run: ./unrealircd upgrade if you want to:

  • upgrade from 5.0.9 or later to 5.2.x
  • upgrade from 6.0.x to a later 6.0.y

The ./unrealircd upgrade will keep 5.x users on 5.x, so no need to worry about accidental upgrades from U5 to U6. If you want to upgrade from 5.x to 6.x with the new upgrade command, see here.

After the command has finished, read the output on the terminal. It will tell you if the upgrade went OK and your configuration file needs updating or not. If all is good then you can restart the IRCd to complete the upgrade.

Exit status

For advanced users interested in the exit status of the ./unrealircd upgrade command (eg for mass-scripting purposes):

  • Exit code 0: Upgrade and configtest successful. You can restart the IRCd now.
  • Exit code 1: An error occured
  • Exit code 5: Upgrade successful but configuration file needs updating. Do not restart IRCd but make changes first.
  • Exit code 10: No newer version available

Manual upgrade (*NIX)

You can upgrade form any 5.X.X version to any 5.Y.Y version.

NOTE: If you are upgrading from old unsupport major version, see Upgrading from 4.x.

  1. Backup your existing /home/xxx/unrealircd directory:
    cp -Rav /home/xxx/unrealircd /home/xxx/unrealircd.bak
  2. Download and install latest version of UnrealIRCd. See Installing from source and stop before Creating a configuration file.
  3. Double check: make sure you ran make install as this will install all new files in /home/xxx/unrealircd.
  4. Configuration test to make sure the IRCd will boot later (this will not start the ircd, it will only TEST the configuration!):
    cd /home/xxx/unrealircd
    ./unrealircd configtest
    This should print out:
    Configuration test passed OK
    If you see warnings/errors, fix them and run ./unrealircd configtest again until all issues are fixed.
  5. Now you can restart the IRCd so it uses the new version:
    cd /home/xxx/unrealircd
    ./unrealircd restart

Get the latest source code

Most people should use the downloads from www.unrealircd.org. Those are releases that have actually been tested by several people.

There also exists something else, which is the very latest source code from our git repository. This contains code changes committed only minutes or days ago and is considered bleeding edge. Possibly nobody has tested this code, or just one person. It may not even compile. People run this code to help UnrealIRCd development, to find bugs, or to get fixes for issues that have not been addressed in a release.

The 'real way' to get the latest bleeding edge source...

This describes how to 'checkout' the repository on your machine, which allows you to easily pull in updates (which happen every day/week). First, run:

git clone https://github.com/unrealircd/unrealircd.git unrealircd-src

This will create a directory unrealircd-src with all the source code (UnrealIRCd 6 bleeding edge).

cd unrealircd-src
./Config
make
make install

Now go unrealircd directory and run:

./unrealircd configtest

If you see no errors, that means your config file is correct and you may restart your server

If there is a new release and you want to pull in the latest changes then run the following in your unrealircd-src directory: git pull

cd unrealircd-src
git pull
./Config
make
make install

If everything went the way it should, than you will see message like this at the end:

* UnrealIRCd is now installed.
* Leave this directory and run "cd /home/sisrv/unrealircd" now
* Directory layout:
 * Base directory: /home/sisrv/unrealircd
  * Configuration files: /home/sisrv/unrealircd/conf
  * Log files: /home/sisrv/unrealircd/logs
  * Modules: /home/sisrv/unrealircd/modules
* To start/stop UnrealIRCd run: /home/sisrv/unrealircd/unrealircd"

* Consult the documentation online at:
  * https://www.unrealircd.org/docs/
  * https://www.unrealircd.org/docs/FAQ
* You may also wish to install a cron job to ensure UnrealIRCd is always running:
  * https://www.unrealircd.org/docs/Cron_job

Again, be sure to change to the /home/sisrv/unrealircd directory!

NOTE: If you have had stable release installed before, do NOT delete the source code, if you do not want to re-install all modules all over again.

  • upgrade UnrealIRCd
  • 38 Users Found This Useful
Was this answer helpful?

Related Articles

Upgrading from UnrealIRCd 4 to UnrealIRCd 5

Upgrading from UnrealIRCd 4.x to UnrealIRCd 5.x is really easy, there are almost no configuration...

How to install UnrealIRCd modules

UnrealIRCd has a module manager which allows you to install, update and uninstall 3rd party...

UnrealIRCd FAQ

Is UnrealIRCd suitable for me? UnrealIRCd is a highly advanced and customizable IRC daemon. It...

How to install UnrealIRCd 5

To install UnrealIRCd on Linux, FreeBSD, OpenBSD, OS X and other *NIX systems you generally...

How to link Unrealircd servers

This page explains how to link two (or more) UnrealIRCd servers securely so you have a...

Powered by WHMCompleteSolution