IRCD(8)
π IRCD(8) β the manual page, but make it cute π
okay bestie, we're in the System Manager's Manual section of the manual pages, and today's main character is IRCD(8). yes it's a section 8 page. yes it's for the girlies who run daemons. let's go π¦
β¨ NAME β¨
ircd β The Internet Relay Chat Program Server πΈ
β¨ SYNOPSIS β¨
ircd [ -abciqst ] [ -f configfile ] [ -x debuglevel ] [ -h hostname ]
[ -T [ tunefile ] ] [ -p mode ]
ircd -v
β¨ DESCRIPTION β¨
so ircd is literally the server (the daemon, the big one) for the Internet Relay Chat Program. it's called a server because its whole job is to "serve" the client program irc(1) with messages and commands. that's it. that's the gig. π
every single command and every user message gets passed straight to the ircd for processing and for relaying to other ircd sites. and here's the thing β irc(1) depends on there being an ircd server running somewhere (either on your local UNIX site or on a remote ircd site) so it has somewhere to connect to, which is the only way the user can start talking to other users. no server, no chatting. periodt.
ircd will reread its configuration file whenever it received a hangup signal, SIGHUP. π
sending an interrupt signal to the ircd process will cause it to restart. iconic behaviour honestly.
β¨ OPTIONS β¨
-aβ tells the server to automatically die off if it loses all it's clients. yes, all of them. gone. bye π«Ά-bβ if theircd.tunefile is corrupted, by default the server will not start. this option will make the server start anyways, with the default values (ignoring the corrupted file). it's giving "we ball" energy ngl.-cβ this flag must be given if you are runningircdfrom/dev/consoleor any other situation where fd 0 isnt a tty and you want the server to fork off and run in the background. this needs to be given if you are startingircdfrom an rc (such as/etc/rc.local) file. don't skip it, bestie, it's not optional π-iβ the server was started byinetdand it should start accepting connections from standard input. the followinginetd.conf-line could be used to start upircdautomatically when needed:
ircd stream tcp wait irc /etc/ircd ircd -i
that one allows inetd to start up ircd on request. so slay β¨
-qβ using this option stops the server from doing DNS lookups on all the servers in yourircd.conffile when it boots. this can take a lengthy amount of time if you have a large number of servers and they are not all close by. so if you're impatient (me, I'm impatient), you know what to do π-sβ when this option is specified,iauthwill not be started. this means that the IRC daemon will perform "ident lookups" (RFC 1413) internally to attempt to authenticate incoming connections. no other authentication mechanism will be used. that last bit is important, keep it in mind π-tβ instructs the server to direct debugging output to standard output and to not fork nor detach from terminal. it stays right there with you. clingy but useful π-f filenameβ specifies theircd.conffile to be used for this ircdaemon. the option is used to override the defaultircd.confgiven at compile time. choose your own adventure π¦-x #β defines the debuglevel forircd. the higher the debuglevel, the more stuff gets directed to debugging file (or standard output if-toption was used as well). crank it up and watch the chaos π₯-h hostnameβ allows the user to manually set the server name at startup. the default name ishostname.domainname. name yourself, main character π-p modeβ specify whether the server should enable built-in protections against various type of user abuse that is commonly found on big public networks. possible modes arestrict(default),onandoffandstandalone. thestrictoption enables the protections, and refuses to establish a link to a server not running with this option. this is useful to force all servers on an IRC network to enable them. thestandaloneoption removes split checks and disallows any server to connect. sostrictis the "we all agree or nobody plays" mode, okay? π«Ά-T tunefileβ specifies theircd.tunefile to be used for this ircdaemon. the option is used to override the defaultircd.tunegiven at compile time. if no tune file is given, reading and writing of tune file is disabled. no tune file, no tunes π΅-vβ this option prevents the server from starting, and dumps some information about the version instead. it's the "just tell me who you are, don't actually do anything" flag. respect π
if you plan to connect your ircd server to an existing Irc-Network, you will need to alter your local IRC CONFIGURATION FILE (typically named "ircd.conf") so that it will accept and make connections to other ircd servers. this file contains the hostnames, Network Addresses, and sometimes passwords for connections to other ircds around the world. because description of the actual file format of the "ircd.conf" file is beyond the scope of this document, please refer to the file INSTALL in the IRC source files documentation directory. i'm not explaining the whole format here, that's a whole other post bestie π
BOOTING THE SERVER: theircdserver can be started as part of the UNIX boot procedure or just by placing the server into Unix Background. keep in mind that if it is not part of your UNIXES Boot-up procedure then you will have to manually start theircdserver each time your UNIX is rebooted. this means if your UNIX is prone to crashing or going for for repairs a lot it would make sense to start theircdserver as part of your UNIX bootup procedure. in some cases theirc(1)will automatically attempt to boot theircdserver if the user is on the SAME UNIX that theircdis supposed to be running on. if theirc(1)cannot connect to theircdserver it will try to start the server on it's own and will then try to reconnect to the newly bootedircdserver. it's giving self-sufficient queen energy honestly π
β¨ EXAMPLE β¨
tolsun% ircd
places ircd into UNIX Background and starts up the server for use.
Note: you do not have to add the "&" to this command, the program will automatically detach itself from tty. it handles that itself. independent. π
tolsun% ircd -v
ircd 2.9.3 AaCDEfFHiIkMsu_V1
zlib not used
Tue Apr 1 1997 at 20:17:50 EDT #1
this indicates that this binary is the version 2.9.3 of the software. AaCDEfFHiIkMsu_V1 are the compile time options which were used. this binary does not support compression of server-server links (does not use zlib) and was compiled on April the 1st. cute little info dump, ate π
β¨ COPYRIGHT β¨
(c) 1988,1989 University of Oulu, Computing Center, Finland,
(c) 1988,1989 Department of Information Processing Science, University of Oulu, Finland
(c) 1988,1989,1990,1991 Jarkko Oikarinen
for full COPYRIGHT see LICENSE file with IRC package. read the license bestie, it's the rules π
β¨ FILES β¨
"ircd.conf"
β¨ SEE ALSO β¨
β¨ BUGS β¨
None... ;-) if somebody finds one, please send mail to ircd-bugs@irc.org
not them saying "None... ;-)" like that's a real answer π iconic confidence though, and if you do find one, mail the address above, they asked nicely.
β¨ AUTHOR β¨
Jarkko Oikarinen, currently jto@tolsun.oulu.fi, manual page written by Jeff Trim, jtrim@orion.cair.du.edu, later modified by jto@tolsun.oulu.fi.
and that's the whole page babes π this version of the page is dated $Date: 2006/04/26 20:26:07 $, it lives in the System Manager's Manual section as IRCD(8), and now you know it top to bottom. go run your server, you're doing amazing π«Άβ¨πΈ
π¦ where this page comes from
- debian bookworm: ircd-irc2 2.11.2p3~dfsg-7+b2
- debian trixie: ircd-irc2 2.11.2p3~dfsg-7.1
- ubuntu jammy: ircd-irc2 2.11.2p3~dfsg-7
- ubuntu noble: ircd-irc2 2.11.2p3~dfsg-7
- ubuntu questing: ircd-irc2 2.11.2p3~dfsg-7.2
- ubuntu resolute: ircd-irc2 2.11.2p3~dfsg-7.3
- ubuntu stonking: ircd-irc2 2.11.2p3~dfsg-7.3
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms