INSTALL.txt には次のように記述があります。
Files created by ircd package during normal execution would be ircd.pid, ircd.tune, iauth.pid, ircdwatch.pid in PREFIX/var/run/ and ircd.users, ircd.rejects, ircd.auth, ircd.opers, ircd.debug, iauth.debug in PREFIX/var/log/.
PREFIX/var/log に、
を作成してください。
また、ircdが書き込める権限にする必要があります。
ログファイルは、クライアントを切断した段階でログファイルに記録されるため、接続した瞬間にはログファイルに記録されません。
This server was created 2009綛??11? 10?・JST at ?・?・19:20:45
これは、サーバをコンパイルしたとき、環境変数が大きく影響を受けます。
コンパイルするときの環境を確認してください。
LANG=C ; export LANG LANGUAGE=C ; export LANGUAGE LC_ALL=C ; export LANGUAGE
setenv LANG C setenv LANGUAGE C setenv LC_ALL C
ircd.conf のO-Lineに使用できる権限を記述することが出来ます。
O-Line にも二種類存在し、ローカルオペレータ、グローバルオペレータの2通りがあり、言葉の通りローカルオペレータは、そのサーバの権限しかありませんが、グローバルオペレータ権限があると、IRCサーバ同士接続されている他のサーバにたいして、管理者権限でコマンドを実行することが可能となります。
小文字のo-Line については、ローカルオペレータ、大文字のO-Lineは、グローバルオペレータという位置づけでしたが、irc2.11以降、O-Lineに統一され、権限フラグを付けることによって細分化されています。
詳しくは、INSTALL.txtに記載がありますが、一部抜粋いたします。
Flags This field contains flags of an O:line; flags are one character in size, can be combined and their order does not matter. They define privileges of an operator. o L - local operator (disables all remote functions) o P - removes penalty o p - allows flooding o & - allows joining &CLIENTS o A - enables all flags below o C - allows local and remote CONNECT o c - allows local CONNECT o D - allows DIE o d - allows DNS o e - allows SET o h - allows HAZH o K - allows local and remote KILL o k - allows local KILL o l - allows CLOSE o R - allows RESTART o r - allows REHASH o S - allows local and remote SQUIT o s - allows local SQUIT o T - allows TKLINE o q - allows KLINE o t - enables full TRACE and STATS L o v - allows SIDTRACE ``L'' flag cannot be overridden by other flags. If <Flags> field is left empty, no privileges will be granted. Example O:orion.cair.du.edu:pyunxc:Jeff::1:A
&ERRORS &NOTICES &KILLS &SERVERS といったチャンネルにJOINしても、特殊チャンネルとして扱われず、メッセージが表示されない時は、config.h のログの設定を有効にしてください。
/* ** If you want your server channels logged to a file, define this and ** any of LOG_SCH_* you want. Logfile names are taken from channel names ** (like: ircd.ERRORS) and they must exist to be used. */ #undef LOG_SERVER_CHANNELS #ifdef LOG_SERVER_CHANNELS #undef LOG_SCH_ERROR /* &ERRORS */ #undef LOG_SCH_NOTICE /* &NOTICES */ #undef LOG_SCH_KILL /* &KILLS */ #undef LOG_SCH_CHAN /* &CHANNEL */ #undef LOG_SCH_NUM /* &NUMERICS */ #undef LOG_SCH_SERVER /* &SERVERS */ #undef LOG_SCH_HASH /* &HASH */ #undef LOG_SCH_LOCAL /* &LOCAL */ #undef LOG_SCH_SERVICE /* &SERVICES */ #undef LOG_SCH_DEBUG /* &DEBUG */ #undef LOG_SCH_AUTH /* &AUTH */ #undef LOG_SCH_SAVE /* &SAVE */ #undef LOG_SCH_WALLOP /* &WALLOPS */ #undef LOG_SCH_CLIENT /* &CLIENTS (if defined to exist) */ #undef LOG_SCH_OPER /* &OPER */ #endif /* LOG_SERVER_CHANNELS */
irc2.11.0 以降、&CLIENTS というシステムチャンネルがあり、IRCサーバへの接続、切断ログを普段使用しているIRCクライアントで閲覧することが出来ます。
方法
oper になり、&CLIENTS というチャンネルにJOINします。
エラー
oper になっていないとき、若しくはO-Lineに`&' フラグが内場合は、は次のようなエラーメッセージが表示されます。
:<SERVER> 473 <NICKNAME> &CLIENTS :Cannot join channel (+i)
表示メッセージ
JOINすると、NOTICEで次のような接続・切断ログが表示されます。
0000AAAAA nick1 ~nick1 2001:db8:12:3456:abcd:eabc:ac00:ac00 QUIT 0 0000BBBBB nick1 ~nick1 2001:db8:12:3456:abcd:eabc:ac00:ac00 CONN 2001:db8:12:3456:abcd:eabc:ac00:ac00
尚、0000AAAAA はirc2.11.0以降実装されたUIDとなります。
注意
このチャンネルはシステムチャンネルのため、発言することは出来ません。
ircd2.11.2 より日本語パッチが正式にマージされています。
ただし、ircd2.11.1p1 までは、不具合があるため、ircd2.11.2p2 以降を使用してください。
また、日本語パッチ機能を有効にするには、config.h で日本語を使用するように設定する必要があります。
/* ** Define this if you want to use Japanese channel names in JIS encoding. */ #undef JAPANESE ↓ #define JAPANESE
サーバに接続したとき、Server is currently in split-mode. と表示され、split-mode に入ってしまい、新規でチャンネルを作成した際チャンネルオペレータ権限が無い状態が発生します。
この split-mode に入る条件は、config.hに記載されています。
デフォルトのconfig.hには、
#define DEFAULT_SPLIT_USERS 65000 #define DEFAULT_SPLIT_SERVERS 70
となっており、接続している網全体で、65000USER 若しくは リンクされているサーバの数が 70を下回ったとき網全体が大きく分断していると判断され、split-mode に入ってしまいます。無効にするには、 DEFAULT_SPLIT_USERS 及び DEFAULT_SPLIT_SERVERS を 0として下さい。