So you want to update your ircd: Difference between revisions

From pisswiki
No edit summary
No edit summary
Line 1: Line 1:
Tested 4x on pissircd and unrealircd, some servers with custom scripts installed, and confirmed with another dozen or so successful updates.
Tested 4x on pissircd and unrealircd, some servers with custom scripts installed, and confirmed with another dozen or so successful updates.


---
----


When I was attempting to upgrade using the built in unrealircd upgrader on a server that had 5.x, it failed with an error about calling a script directly despite using the correct command to do a version upgrade. Updating required a few extra steps when done manually, all from this page: https://www.unrealircd.org/docs/Upgrading_from_5.x
When I was attempting to upgrade using the built in unrealircd upgrader on a server that had 5.x, it failed with an error about calling a script directly despite using the correct command to do a version upgrade. Updating required a few extra steps when done manually, all from this page: https://www.unrealircd.org/docs/Upgrading_from_5.x
Line 13: Line 13:
The fun bit: You can build, upgrade and make all changes while your ircd is running, needing only to stop and restart when done.
The fun bit: You can build, upgrade and make all changes while your ircd is running, needing only to stop and restart when done.


---
----


* Remove all of your previous build and backup folders (you won't be using the built in unrealircd upgrader, so clear out the old cruft.)
* Remove all of your previous build and backup folders (you won't be using the built in unrealircd upgrader, so clear out the old cruft.)
Line 50: Line 50:
* '''./unrealircd start'''
* '''./unrealircd start'''


---
----


You should be running piss60 successfully.
You should be running piss60 successfully.


If not, delete 'unrealircd' ( '''rm -rf ~/unrealircd''' ) folder and rename 'backup.unrealircd' to 'unrealircd' ( '''mv backup.unrealircd unrealircd''' )
If not, delete 'unrealircd' ( '''rm -rf ~/unrealircd''' ) folder and rename 'backup.unrealircd' to 'unrealircd' ( '''mv backup.unrealircd unrealircd''' ) and then restart unrealircd ( '''cd unrealircd''' then '''./unrealircd start''' )


Nothing will be lost except uptime.
Nothing will be lost except uptime.

Revision as of 06:18, 6 April 2022

Tested 4x on pissircd and unrealircd, some servers with custom scripts installed, and confirmed with another dozen or so successful updates.


When I was attempting to upgrade using the built in unrealircd upgrader on a server that had 5.x, it failed with an error about calling a script directly despite using the correct command to do a version upgrade. Updating required a few extra steps when done manually, all from this page: https://www.unrealircd.org/docs/Upgrading_from_5.x

This was documented specifically for working around the built in updater to go from 5.x to 6.x while also doing a build for pissircd specifically.

This upgrade method will also work for those running vanilla unrealircd and upgrading to pissircd. But we're making a backup of your unrealircd folder regardless.

There's no risk in this upgrade method aside from a minute of downtime should you be unable to restart.

The fun bit: You can build, upgrade and make all changes while your ircd is running, needing only to stop and restart when done.


  • Remove all of your previous build and backup folders (you won't be using the built in unrealircd upgrader, so clear out the old cruft.)
  • Back up your unrealircd folder (cp -R unrealircd backup.unrealircd)
  • git clone https://github.com/pissnet/pissircd
  • cd pissircd && ./Config
  • Hit enter on everything (defaults)
  • make
  • make install
  • cd ..
  • cd unrealircd
  • cd conf
  • nano unrealircd.conf
  • Comment out the entire block for > log "ircd.log"
    • from log "ircd.log"
    • including "flags {"
    • to second "}"
    • (Needed for 6.x, otherwise your conf fails checks.)
  • Add the following:
log {
        source {
            !debug;
            all;
        }
        destination {
            file "ircd.log" { maxsize 100M; }
        }
}

include "snomasks.default.conf";
loadmodule "cloak_md5";
  • Save (Ctrl X)
  • cd ..
  • ./unrealircd stop
  • ./unrealircd start

You should be running piss60 successfully.

If not, delete 'unrealircd' ( rm -rf ~/unrealircd ) folder and rename 'backup.unrealircd' to 'unrealircd' ( mv backup.unrealircd unrealircd ) and then restart unrealircd ( cd unrealircd then ./unrealircd start )

Nothing will be lost except uptime.