Es gibt viele Gründe, sich in ein Chat-Forum (in IRC-Sprache: auf einen Channel) zu verirren, denn IRC bietet zu allen denkbaren Themen einen solchen "Gesprächskanal". Haben Sie eine Frage zur Linux-Kernel-Kompilation oder möchten Sie über das letzte Konzert Ihrer Lieblingsgruppe sprechen? Suchen Sie einfach nach dem passenden IRC-Channel, und Sie werden dort andere mit gleichen Interessen treffen.
Da beim Chatten nur Text zwischen den Teilnehmern übertragen wird, benötigt man prinzipiell kein grafisches Programm für diese Aufgabe; so zeigt die Zu-Befehl-Rubrik dieser Ausgabe eine Reihe von IRC-Programmen, die im Textmodus (also auf der Konsole oder in einem Terminal-Fenster) arbeiten. Mit X-Chat wird das Chatten allerdings deutlich komfortabler – die Maus hilft.
Sollte X-Chat noch nicht installiert sein, gibt es wie üblich zwei Wege, das Programm auf Ihren Rechner zu bringen:
Kasten 1: Installation aus Quellen
Um X-Chat selbst aus den Quelltexten zu übersetzen und zu installieren, gehen Sie wie folgt vor: Wechseln Sie in das Verzeichnis /usr/local/src/, werden Sie dort (mit dem Befehl su zum Systemadministrator root und entpacken Sie das Quelltext-Archiv (z. B. von der Heft-CD) mit dem Befehl
tar xIf /cdrom/LinuxUser/xchat/xchat-1.6.2.tar.bz2
Wechseln Sie dann in das neue Unterverzeichnis xchat-1.6.2 und führen Sie dort den Befehl
./configure
aus. configure ist ein Skript, das Ihr System nach vorhandenen Compilern, Bibliotheken und weiteren Dingen durchsucht, die für die Erstellung des ausführbaren X-Chat-Programmes notwendig sind. Am Ende der Skript-Ausführung erscheint eine Zusammenfassung der Form
xchat 1.6.2 Building interfaces: GTK+ TEXT gnome-libs ………. : yes 1.2.0 gnome panel ……… : no zvt shell tab ……. : yes gdk-pixbuf……….. : yes perl ……………. : yes python ………….. : yes 1.5 plugin interface …. : yes link with socks5 …. : no link with openssl … : no nls/gettext ……… : yes translation tables… : yes glib replace …….. : no hebrew support …… : no The binary will be installed in /usr/bin configure complete, now type 'make' and pray.
Wie Sie der letzten Zeile bereits entnehmen können, ist der nächste Schritt die Eingabe von
make
Dieser Schritt wird etwas länger dauern: Die Programm-Quelltexte werden nun übersetzt. Ist auch dieses ohne Fehlermeldungen gut verlaufen, geben Sie schließlich noch
make install
ein, um alle Programmdateien in die richtigen Verzeichnisse zu kopieren. Damit ist die Installation abgeschlossen, und Sie können das Verzeichnis xchat-1.6.2 verlassen und löschen:
cd .. ; rm -rf xchat-1.6.2
X-Chat verwendet die Gtk-Bibliothek und lässt sich (wie alle GNOME-Programme) durch Setzen der Umgebungsvariable $LANG zur Verwendung verschiedener Sprachen in Menüs und Dialogen bringen. Falls $LANG nicht oder nicht richtig gesetzt ist (und X-Chat sich in Englisch präsentiert), fügen Sie den Befehl
export LANG=de_DE
in eine der Shell-Startdateien ein; ein guter Platz dafür ist ~/.bashrc. Sie können den Befehl aber auch vor den X-Chat-Aufruf stellen, um die Variable nur für dieses Programm für einen einzelnen Aufruf zu ändern:
env LANG=de_DE xchat
Beachten Sie, dass das Setzen der Variable über die Startdatei erst wirksam wird, wenn Sie die Shell (bzw. das Terminal-Programm) neu gestartet haben, z. B. mit . .bashrc oder xterm &.
Vor der Kontaktaufnahme mit anderen Chattern ist zunächst eine Verbindung zwischen Ihrem Chat-Programm und einem der IRC-Server im Internet aufzubauen. Zu diesem Zweck öffnet sich bei jedem Programmstart immer gleich ein Fenster mit einer Auswahl dieser Server und der Möglichkeit, einen eigenen sogenannten Nicknamezu wählen. X-Chats Server-Liste ist dabei nach Netzwerken unterteilt; einige dieser Netzwerke sind IRCnet, UnderNet und OtherNet. Klicken Sie in der Server-Liste auf das Plus-Zeichen vor einem der Netzwerke, um die zugehörigen Server anzuzeigen. Per Doppelklick auf einen der Server baut X-Chat nun eine Verbindung zu diesem IRC-Server auf – das Fenster mit der Server-Liste wird geschlossen, und Sie sehen nun nur noch das eigentliche Chat-Fenster.
IRCnet ist der Klassiker; in den meisten Fällen werden Sie daher eine Verbindung zu einem der IRCnet-Server aufbauen wollen. Die Server, die in der Liste von X-Chat unter IRCNet aufgeführt sind, sind leider sämtlich nicht erreichbar – daher haben wir für Sie eine modifizierte Datei serverlist.conf bereitgestellt, die Sie in das Verzeichnis ~/.xchat/ kopieren müssen – danach stehen unter dem Menüpunkt IRCNet die folgenden Server zur Verfügung:
Über den Befehl
/LIST
lässt sich zwar jederzeit eine Liste aller offenen (und sichtbaren) Channels auf dem IRC-Server abrufen, diese ist allerdings in größeren Netzen so lang, dass X-Chat einige Minuten mit dem Download und der Anzeige beschäftigt ist – und besonders übersichtlich ist die Auflistung auch nicht. Interessanter ist da schon die Verwendung einer Suchfunktion, wie sie etwa für das IRCnet die Seite http://www.ludd.luth.se/irc/list.html bietet. Abb. 3 zeigt das Ergebnis einer Anfrage mit dem Suchbegriff #*linux*: Neben den Channel-Namen wird das aktuelle Channel-Topic angezeigt. Im IRCnet finden Sie immer Linux-Anwender auf den Channels #linux, #linux.de, #linuxger und #linux.at.
Bevor Sie loslegen, sollten Sie vielleicht einige Tests starten: Denken Sie sich einen Channel-Namen aus, den es sicher nicht gibt, z. B. eine eine Kombination aus Ihrem Vor- und Nachnamen… Geben Sie in die Eingabezeile
/join #vorname.nachname
ein – Channel-Namen beginnen immer mit "#" und dürfen einige Sonderzeichen wie ".", "-", "+", "/" usw. enthalten; selbst deutsche Umlaute sind kein Problem. Das Leerzeichen und Anführungszeichen sind nicht möglich.
Jetzt sind Sie also (alleine) auf Ihrem Test-Channel. X-Chat zeigt in der rechten Spalte alle Anwender an, die sich auf dem Channel befinden – in diesem Fall also nur Ihren eigenen Nickname. Links von Ihrem Nickname sehen Sie einen grünen Punkt: Dieser zeigt an, dass Sie "Operator", kurz "Op" auf dem Channel sind. Channel-Ops haben besondere Rechte, einige davon können Sie jetzt ausprobieren.
Was in der Regel jeder Anwender kann, ist das Schreiben in den Channel. Versuchen Sie es: Tippen Sie eine Zeile Text ein (die nicht mit dem Schrägstrich "/" beginnen darf), und drücken Sie [Return], um die Zeile abzuschicken. Der Text erscheint dann im schwarzen Bereich, und Ihrer Zeile wird Ihr Nickname in spitzen Klammern vorangestellt, also z. B.
<linuxuser> Ein kleiner Test
Wären auf diesem Channel noch mehr User, dann würde die Zeile auch bei diesen im IRC-Programm angezeigt werden, und sie könnten auf Ihren Beitrag antworten. Wollen Sie eine "Aktion" ausdrücken, also etwa, dass Sie gleich den Channel verlassen oder über etwas nachdenken, dann können Sie den IRC-Befehl /me verwenden. Geben Sie etwa /me schreibt einen Artikel ein, und es erscheint
* linuxuser schreibt einen Artikel
Das Sternchen drückt eine "Action" aus; andere IRC-Programme zeigen dies eventuell leicht anders an. BitchX z. B. nennt (sofern nicht anders konfiguriert) den Channel-Namen mit.
Wer die Öffentlichkeit eines Channels scheut, kann sich auch mit einem anderen IRC-Anwender im sogenannten Query treffen: Kennen Sie den Nickname des gewünschten Gesprächspartners, so geben Sie einfach
/query nick
ein, und es öffnet sich ein neuer Tab. Dies ist kein Channel sondern ein Eins-zu-Eins-Gespräch: Hier wird Ihnen niemand zuhören, es sei denn die Verbindung zum IRC-Server wird abgehört…
Viel Wirbel wird im IRC um den Op-Status gemacht: Als Channel Operator haben Sie einige Sonderrechte gegenüber "nicht-privilegierten" Anwendern auf dem Channel; dies ist mit dem root-Account auf Ihrem Linux-System vergleichbar. Als Op haben Sie unter anderem die folgenden Möglichkeiten:
/topic Titel
/op nick /deop nick
/kick nick Grund
Der Kick-Grund kann mehrere Worte enthalten und muss nicht speziell geklammert oder in Anführungszeichen gesetzt werden. Beispiel: /kick idiot28 Gib endlich Ruhe. Nach einem Kick kann der User den Channel wieder betreten, weshalb Kicks in der Regel nur verwarnenden Charakter haben; gelegentlich trifft man auch auf Ops, die "just for fun" kicken.
/ban nick
Sie erhalten eine Bestätigung der Form
hgesser sets ban on *!*@192.168.1.*
Was geht hier vor? Hier wird eine sogenannte Hostmaskverwendet, die in die Ban-Liste des Channels eingetragen wird. Um den Anwender dauerhaft zu bannen, geht X-Chat hier recht rigide vor: Unter der Annahme, dass der Störenfried vom IRC-System als idiot@192.168.1.26 erkannt wurde, werden alle Anwender mit beliebigen Benutzernamen (* nach dem !) und beliebigen Nickname (* vor dem !) ausgeschlossen, die über einen Rechner online sind, dessen IP-Adresse in den ersten drei Teilen übereinstimmt – also in diesem Fall 192.168.1.1 bis 192.168.1.254. Dadurch wird sichergestellt, dass der Anwender nicht einfach seinen Nickname ändert oder in seinem IRC-Programm den Benutzernamen ändert. Um einen Ban wieder aufzuheben, gibt es in einigen X-Chat-Versionen den Befehl /unban, in der aktuellen jedoch nicht. Tatsächlich ist auch /ban nur ein Makro: X-Chat wertet dieses aus und schickt (im obigen Beispiel) folgenden Befehl an den IRC-Server:
/mode #channel +b *!*@192.168.1.*
Kurz gesagt: /mode ist ein sehr allgemeiner Befehl, mit dem sich verschiedene Modi (Betriebsarten) des Channels einstellen lassen. Hier wird festgelegt, dass ein neuer Ban (+b) in die Ban-Liste einzutragen ist. Mit -b können Sie das rückgängig machen:
/mode #channel -b *!*@192.168.1.*
Einen Blick auf die aktuelle Ban-Liste werfen Sie mit dem (naheliegenden) Kommando /banlist.
/kickban nick Grund
Dabei wird der Ban vor dem Kick ausgeführt, da ein schneller IRC-Client, der auf Auto-Rejoineingestellt ist, den Anwender sonst sofort wieder auf den Channel bringen würde – noch bevor der Ban wirksam wird.
nick!user@host
Dabei können Sternchen ("*") verwendet werden, die die gleiche Bedeutung wie in Dateinamen haben: Sie stehen für beliebige Zeichen. So steht etwa *!*esser@*.linux-user.de für Benutzer mit beliebigem Nickname, einem Login-Namen, der auf esser endet, und einem Rechnernamen, der zur Domain linux-user.de gehört. Bei numerischen IP-Adressen steht das Sternchen hinten, da dort die vorderen Teile der Adresse bei mehreren Rechnern aus einem Netz identisch sind.
Ein interessantes Feature von X-Chat ist das Anlegen von Log-Dateien (Logfiles). Es ist standardmäßig deaktiviert und kann über den Menüpunkt Einstellungen/Einstellungen/IRC/Logbücher eingeschaltet werden: Klicken Sie dazu im Dialog das Feld Logbücher an. Unter Maske für Logbücher geben Sie ein, wie die Dateinamen der Log-Dateien aufgebaut sein sollen. Voreingestellt ist hier "%s,%c.xchatlog" – bei Verwendung des IRC-Servers irc.belwue.de (der sich unter dem Namen "Belwue.DE" meldet) erhalten Sie dann Log-Dateien der Form Belwue.DE,#channel.xchatlog für Channel-Logs und Belwue.DE,nickname.xchatlog für die Logs privater Dialoge (Queries oder DCCChats).
Alle Log-Dateien werden im Verzeichnis ~/.xchat/xchatlogs/ gespeichert, das erst angelegt wird, wenn eine erste Log-Datei entsteht. Beachten Sie bei der Verwendung von Log-Dateien aber, dass Ihre Gesprächspartner es eventuell nicht schätzen, wenn Sie alles protokollieren: Abgesehen von eventuellen rechtlichen Bedenken (Datenschutz) ist es auch eine Frage der Höflichkeit, vor dem Loggen um Erlaubnis zu bitten.
Hinter dem Fenster-Menü verstecken sich einige Zusatzfunktionen, deren Wert Sie vielleicht erst schätzen lernen, wenn Sie einige Zeit mit X-Chat gearbeitet haben.
Die mit den X-Chat-Sourcen mitgelieferte Dokumentation ist noch auf dem Stand von 1999 und identifiziert sich als zu X-Chat 1.2 gehörig. Die HTML-Dateien befinden sich nach dem Auspacken der Programm-Sourcen im Unterverzeichnis doc, bei Installation des RPM-Pakets in /usr/doc/xchat-1.6.2 und des Debian-Pakets in /usr/doc/xchat/html/.
Im folgenden Artikel geht es um IRC-Clients für die Kommandozeile, insbesondere BitchX, einen recht komfortablen Vertreter dieser Kategorie.
Kasten 2: Konfigurationsdateien
X-Chat legt die benutzerspezifischen Konfigurationsdateien im Unterverzeichnis .xchat/ Ihres Home-Verzeichnisses ab, Sie finden dort die folgenden Dateien:
Glossar
Channel
Ein Channel im IRC ist ein Diskussionsforum, das Sie mit dem Befehl /join #channel betreten (engl.: to join) können. Alles, was Sie nach dem Betreten des Channels in die Eingabezeile schreiben, erscheint nicht nur bei Ihnen, sondern auch bei allen anderen Anwendern, die sich auf diesem Channel befinden. So ist ein Gespräch in einer großen Runde möglich.
Nickname
Ein Spitzname, der pro IRC-Server genau einmal vergeben wird. Beim Start von X-Chat bietet Ihnen das Programm Ihren Login-Namen Ihres eigenen Rechners an. Sollte der Name bereits von einem anderen User verwendet werden, wird als nächste Möglichkeit ein Unterstrich angehängt, usw. Natürlich können Sie die Einträge nach Ihren eigenen Wünschen modifizieren und anpassen. Meistens dürfen diese Spitznamen die Länge von neun Zeichen nicht überschreiten.
Hostmask
Die Hostmask dient zur Identifizierung eines IRC-Benutzers. Offensichtlich taugt der Nickname dazu recht wenig, da sich dieser mit einem einfachen /nick abcde… jederzeit in jeden gerade unbenutzten Nick ändern lässt. Daher wird zusätzlich die IP-Adresse (oder falls erkennbar der nicht-numerische Name) des Rechners und der dort verwendete Benutzername verwendet. Eine Hostmask setzt sieht wie eine erweiterte E-Mail-Adresse aus und hat den Aufbau
Auto-Rejoin
Viele IRC-Programme lassen sich so konfigurieren, dass man nach einem Kick sofort wieder auf den Channel zurückkehren kann. Das nennt sich Auto-Rejoin und wird bei X-Chat über den Menüpunkt Benutzermodi/Auto Rejoin bei Kick eingeschaltet. Auf manchen Channels finden sich Bots, die auf dieses Verhalten reagieren und jeden Auto-Rejoin mit einem Ban für mehrere Minuten "belohnen".
Bot
Ein Bot, kurz für Roboter, ist ein Programm, das sich wie ein normaler Anwender in den IRC einloggt, in der Regel auf einem Channel Op-Rechte erhält und dann über die Einhaltung bestimmter Regeln auf diesem Channel wacht (oder im einfachsten Fall nur seinem Besitzer Op-Status gibt, wenn dieser auf den Channel kommt). Sehr beliebt ist das Bot-Programm eggdrop. Vorsicht: Auf manchen Netzwerken ist der Einsatz von Bots nicht erlaubt. Daher sollten Sie vorher prüfen, ob Sie einen Bot verwenden dürfen, falls Sie mit diesem Gedanken spielen. Die Konfiguration eines Eggdrop setzt aber fortgeschrittene Kenntnisse voraus und ist im übrigen nur sinnvoll, wenn Sie über eine permanente Anbindung zum Internet (Standleitung; keine Flatrate, bei der regelmäßig die Verbindung unterbrochen wird) verfügen.
DCC
Bei dem Direct Client to Client handelt es sich um ein spezielles Protokoll, das für IRC-Clients entwickelt wurde. Einige "Beschränkungen", denen IRC unterliegt, können hiermit umgangen werden. DCC benutzt die TCP-Verbindung ("Transmission Control Protocol"), um Daten zwischen jeweils zwei Clients zu übertragen. "Datenpakete" können auf diese Weise mit der ganzen zur Verfügung stehenden Geschwindigkeit gesendet und empfangen werden. Es gibt zwei verschiedene Wege, DCC sinnvoll zum Einsatz zu bringen: /dcc chat nick und /dcc send nick datei. Eine der beiden teilnehmenden Seiten muss dazu ein "Angebot" unterbreiten, z. B. /dcc chat nick. Die Gegenseite erhält eine Meldung mit Informationen über den User, seine IP-Nummer und eine Port-Nummer und kann die Verbindung nun mit dem Kommando /dcc chat other_nick herstellen. Der Vorteil: Die Verbindung läuft nicht mehr über den IRC-Server, d.h. es kommt zu keinen serverbedingten Verzögerungen, und die Übertragung bleibt bestehen, wenn ein Server verlassen wird. Verlassen können Sie den DCC mit dem Aufruf /dcc close chat other_nick. Die Befehle zum Übertragen von Dateien sind ähnlich: /dcc send nick datei, Verbindungsaufbau mit /dcc get other_nick.
Flag
Spezielle Eigenschaften oder Attribute, die für einen Channel oder Nickname gesetzt werden können. Führt der Channel-Op den Befehl /mode #channel +i ("invite only") aus, können nur noch Benutzer auf den Channel kommen, die vom Op mit /invite nick dazu aufgefordert wurden. Dieses +i-Flag kann auch für den eigenen Nick gesetzt werden: /mode nick +i – in diesem Fall steht es für "invisible". Damit ist man nur noch "sichtbar" für Teilnehmer, die den Nickname genau kennen.
Infos
[1] X-Chat-Homepage: http://www.xchat.org
[2] Infos rund um IRC (inkl. FAQ): http://www.irchelp.org
[3] Deutsche Infos der FU Berlin: http://irc.fu-berlin.de