Updated documentation.

This commit is contained in:
Alexander Barton 2003-03-04 13:46:53 +00:00
parent b896f8acda
commit fd4a6b5dd5
2 changed files with 117 additions and 134 deletions

View File

@ -36,7 +36,7 @@ ngIRCd CVS-HEAD
- Moved tool functions to own library: "libngtool". - Moved tool functions to own library: "libngtool".
- New command TRACE (you can trace only servers at the moment). - New command TRACE (you can trace only servers at the moment).
- New command HELP that lists all understood commands. - New command HELP that lists all understood commands.
- There should no longer remain "unknown connections" (see e.g. LUSRS) - There should no longer remain "unknown connections" (see e.g. LUSERS)
if an outgoing server link can't be established. if an outgoing server link can't be established.
- Added AC_PREREQ(2.50) to configure.in for better autoconf compatibility. - Added AC_PREREQ(2.50) to configure.in for better autoconf compatibility.
- Conn_Close() now handles recurisive calls for the same link correctly. - Conn_Close() now handles recurisive calls for the same link correctly.
@ -423,4 +423,4 @@ ngIRCd 0.0.1, 31.12.2001
-- --
$Id: ChangeLog,v 1.178 2003/02/23 12:02:39 alex Exp $ $Id: ChangeLog,v 1.179 2003/03/04 13:46:53 alex Exp $

247
INSTALL
View File

@ -1,162 +1,145 @@
ngIRCd - Next Generation IRC Server ngIRCd - Next Generation IRC Server
(c)2001,2002 by Alexander Barton, (c)2001-2003 by Alexander Barton,
alex@barton.de, http://www.barton.de/ alex@barton.de, http://www.barton.de/
ngIRCd ist freie Software und steht unter ngIRCd is free software and published under the
der GNU General Public License. terms of the GNU General Public License.
-- INSTALL --
-- INSTALL / Installation --
Ilja Osthoff, <ilja@glide.ath.cx>
I. Upgrade Information
~~~~~~~~~~~~~~~~~~~~~~
Differences to version 0.5.x
- Starting with version 0.6.0, other servers are identified using asyncronous
passwords: therefore the variable "Password" in [Server]-sections has been
replaced by "MyPassword" and "PeerPassword".
- New configuration variables, section [Global]: MaxConnections, MaxJoins
(see example configuration file "doc/sample-ngircd.conf"!).
+-----------------------------------------------------------------------+ II. Standard Installation
| Please note: English translations of some of the german documentation | ~~~~~~~~~~~~~~~~~~~~~~~~~
| files can be found in the directory "doc/en" -- please have a look! |
+-----------------------------------------------------------------------+ ngIRCd is developed for UNIX-like systems, which means that the installation
on modern UNIX-like systems witch are supported by GNU autoconf and GNU
automake ("configure") should be no problem.
The normal installation procedure after getting (and expanding) the source
files (using a distribution archive or CVS) is as following:
1) ./autogen.sh [only necessary when using CVS]
2) ./configure
3) make
4) make install
1): "autogen.sh"
The first step, autogen.sh, is only necessary if the configure-script isn't
already generated. This never happens in official ("stable") releases in
tar.gz-archieves, but when using CVS.
This step is therefore only interesting for developpers.
autogen.sh produces the Makefile.in's, which are necessary for the configure
script itself, and some more files for make. To run autogen.sh you'll need
GNU autoconf and GNU automake (in recent versions!).
Again: "end users" do not need this step!
4): "./configure"
The configure-script is used to detect local system dependancies.
In the perfect case, configure should recognize all needed libraries, header
files and so on. If this shouldn't work, "./configure --help" shows all
possible options.
In addition, you can pass some command line options to "configure" to enable
and/or disable some features of ngIRCd. All these options are shown using
"./configure --help", too.
5): "make"
The make command uses the Makefiles produced by configure and compiles the
ngIRCd daemon.
6): "make install"
Use "make install" to install the server and a sample configuration file on
the local system. Normally, root privileges are necessary to complete this
step. If there is already an older configuration file present, it won't be
overwritten.
This files will be installed by default:
- /usr/local/sbin/ngircd: exectable server
- /usr/local/etc/ngircd.conf: sample configuration (if not already present)
0. Update von frueheren Versionen II. Useful make-targets
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~
Unterschiede zu Version 0.5.x The Makefile produced by the configure-script contains always these useful
targets:
- Ab Version 0.6.0 werden asyncrone Passwoerter zur Identifikation anderer - clean: delete every product from the compiler/linker
Server, die Variable "Password" in [Server]-Abschnitten wird nicht mehr next step: -> make
unterstuetzt. Passwoerter fuer Server-Server-Links werden nun mit den
Variablen "MyPassword" und "PeerPassword" angegeben.
- Neue Konfigurationsvariablen, Sektion [Global]: MaxConnections, MaxJoins - distclean: the above plus erase all generated Makefiles
(vgl. auch Beispiel-Konfiguration "doc/sample-ngircd.conf"!) next step: -> ./configure
- maintainer-clean: erease all automatic generated files
next step: -> ./autogen.sh
I. Standard-Installation III. Sample configuration file ngircd.conf
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In the sample configuration file, there are comments beginning with "#" OR
";" -- this is only for the better understanding of the file.
The file is seperated in four blocks: [Global], [Operator], [Server], and
[Channel]. In the [Gobal] part, there is the main configuration, like the
server-name and the ports, on which the server should be listening. In the
[Operator] section, the server-operators are defined and [Server] is the
section, where the server-links are configured. Use [Channel] blocks to
configure pre-defined ("persistent") IRC channels.
The meaning of the variables in the configuration file is explained in the
"doc/sample-ngircd.conf", which is used as sample configuration file in
/usr/local/etc after running "make install" (if you don't already have one).
IV. Command line options
~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~
ngIRCd ist fuer UNIXoide-Systeme konzipiert worden, das bedeutet, dass die These parameters could be passed to the ngIRCd:
Installation auf einem modernen UNIX-aehnlichen System kein Problem dar-
stellen sollte. Das System muss nur von GNU automake und GNU autoconf
("configure") unterstuetzt werden.
Die Standard-Installation sieht so aus:
1) tar xzf ngircd-<Version>.tar.gz
2) cd ngircd-<Version>
3) ./autogen.sh [nur erforderlich, wenn ueber CVS bezogen]
4) ./configure
5) make
6) make install
zu 3): "autogen.sh"
Der erste Schritt, autogen.sh, ist nur notwendig, wenn das configure-Script
noch nicht vorhanden ist. Dies ist nie bei offiziellen ("stabilen") Versionen
in tar.gz-Archiven der Fall, jedoch immer, wenn der Source-Code ueber CVS
bezogen wurde.
Dieser Absatz ist also eigentlich ausschliesslich fuer Entwickler interessant.
autogen.sh erzeugt die fuer das configure-Script notwendigen Makefile.in's
sowie das configure-Script selber und weitere fuer den make-Lauf erforderliche
Dateien. Dazu wird sowohl GNU automake als auch GNU autoconf (in aktuellen
Versionen!) benoetigt.
(nochmal: "Endanwender" mussen diesen Schritt i.d.R. nicht ausfuehren!)
zu 4): "./configure"
Mit dem configure-Script wird ngIRCd, wie GNU Software meistens, an das
lokale System angepasst und die erforderlichen Makefile's erzeugt.
Im Optimalfall sollte configure alle benoetigten Libraries, Header etc. selber
erkennen und entsprechend reagieren. Sollte dies einmal nicht der Fall sein,
so zeigt "./configure --help" moegliche Optionen.
zu 5): "make"
Der make-Befehl bearbeitet die vom configure-Script erzeugten Makefile's und
uebersetzt den ngIRCd.
zu 6): "make install"
Mit "make install" wird der Server und ggf. eine Beispiels-Konfiguration
im System installiert; hierzu sind in der Regel root-Rechte erforderlich.
Eine bereits vorhandene Konfigurationsdatei wird nie ueberschrieben.
Folgende Dateien werden installiert:
- /usr/local/sbin/ngircd: ausfuehrbarer Server
- /usr/local/etc/ngircd.conf: Beispiel-Konfiguration, wenn nicht vorhanden
II. Nuetzliche make-Targets
~~~~~~~~~~~~~~~~~~~~~~~~~~~
Die vom configure-Script erzeugten Makefile's enthalten immer die folgenden
nuetzlichen Targets:
- clean: alle Erzeugnisse des Compilers/Linkers loeschen.
Naechster Schritt: -> make
- distclean: zusaetzliche alle Makefile's loeschen.
Naechster Schritt: -> ./configure
- maintainer-clean: alle automat. erzeugten Dateien loeschen.
Naechster Schritt: -> ./autogen.sh
III. Konfigurationsdatei ngircd.conf
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In der Konfigurationsdatei werden Kommentare durch "#" oder durch ";"
eingeleitet. Dieses dient nur der besseren Lesbarkeit.
Die Datei ist in drei Abschnitte unterteilt: [Global], [Operator] und
[Server]. Im [Global]-Teil werden die grundlegenden Einstellungen vor-
genommen, z.B. der Server-Name und die Ports, auf denen er Verbindungen
annehmen soll. In [Operator]-Abschnitten werden Server-Operatoren fest-
gelegt und unter [Server] werden die Einstellungen fuer die Verbindung
mit anderen Servern konfiguriert.
Die Bedeutung der einzelnen Variablen ist in der Beispiel-Konfiguration
"doc/sample-ngircd.conf" erklaert, die bei "make install" auch als
"ngircd.conf" in /usr/local/etc installiert wird, wenn dort noch keine
Konfigurationsdatei vorhanden ist.
IV. Kommandozeilen-Optionen
~~~~~~~~~~~~~~~~~~~~~~~~~~~
Folgende Parameter koennen dem ngIRCd u.a. uebergeben werden:
-f, --config <file> -f, --config <file>
Der Daemon wird angewiesen, statt der Standard-Konfigurationsdatei The daemon uses the file <file> as configuration file rather than
/usr/local/etc/ngircd.conf die Datei <file> einzulesen. the standard configuration /usr/local/etc/ngircd.conf.
-n, --nodaemon -n, --nodaemon
ngIRCd soll im Fordergrund laufen; alle Meldungen werden zusaetzlich ngIRCd should be running as a foreground process.
zum Syslog auch auf der Konsole ausgegeben.
-p, --passive -p, --passive
Verbindungen zu anderen Servern (wie in der Konfigurationsdatei in Server-links won't be automatically established.
[Server]-Abschnitten definiert) werden nicht automatisch hergestellt.
--configtest --configtest
Die Konfigurationsdatei wird eingelesen, ueberprueft und so aus- Reads, validates and dumps the configuration file as interpreted
gegeben, wie sie vom ngIRCd interpretiert wurde. Danach beendet by the server. Then exits.
sich der Server wieder.
Mit dem Parameter "--help" werden alle unterstuetzten Parameter angezeigt, Use "--help" to see a short help text describing all available parameters
mit "--version" die Versionsnummer. Bei beiden Parametern beendet sich der the server understands, with "--version" the ngIRCd shows its version
Server nach der Ausgabe wieder. number. In both cases the server exits after the output.
-- --
$Id: INSTALL,v 1.9 2002/12/18 12:19:07 alex Exp $ $Id: INSTALL,v 1.10 2003/03/04 13:46:53 alex Exp $