Linux News HOWTO

Vince Skahan (vince@halcyon.com) und Jörg Stöpel (j.stoepel@marketingsystems.de)  v1.4-3, 30.

November 1996

Dieses Dokument beschreibt das Setup und die Pflege von USENET News unter Linux. Es ist notwendig, dieses HOWTO zu lesen, wenn geplant wird, USENET News zu versenden oder zu lesen. Dies betrifft sowohl lokal verwaltete News als auch den Austausch von News zwischen einem lokalen und über das Internet erreichbarer News Server. Das Dokument muß wahrscheinlich nicht gelesen werden, wenn nicht geplant wird, USENET News als Feature des lokalen Systems anzubieten.

Inhaltsverzeichnis

1 Einleitung 2 1.1 Feedback . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 1.2 Copyright . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.3 Disclaimer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.4 Weiterführende Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

1.4.1 USENET . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.4.2 Literatur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

2 Hardwarevoraussetzungen 4

3 Beschaffung der USENET News Software 4

4 News Transport Software 4

4.1 CNews Cleanup Release . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 4.1.1 Installation von CNews . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 4.1.2 Die Konfiguration von CNews . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 4.1.3 Pflege eines CNews-Servers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

4.2 InterNetNews (INN) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 4.2.1 Installation von INN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 4.2.2 Konfiguration von INN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 4.2.3 Pflege einer INN-Site . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

4.3 Andere News Transport Agenten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

5 Lesen der News 8 5.1 tin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 5.2 trn/mthreads . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 5.3 NN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 5.4 Andere Newsreader . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 6 Danksagungen 10

7 Häufig gestellte Fragen zum USENET 11

7.1 Warum kann ich keine Artikel in moderierte Gruppen posten? . . . . . . . . . . . . . . . . . . 11

7.2 Warum scheine ich Probleme mit den Zugriffsrechten zu haben? . . . . . . . . . . . . . . . . . 11

7.3 Warum kann ich Artikel lokal posten, aber sie werden nicht gezeigt? . . . . . . . . . . . . . . 11

7.4 Warum enthält mein Paket mit den Binaries kein nntp? . . . . . . . . . . . . . . . . . . . . . 11

7.5 Warum beschweren sich Programme über »severe space shortage«, obwohl ausreichend Platz vorhanden ist? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

7.6 Es sieht zwar alles normal aus, aber Artikel werden nicht gepostet? . . . . . . . . . . . . . . . 12

7.7 Können trn/tin/nn News Overview (NOV) anstelle einer eigenen Thread Datenbanken verwenden? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

7.8 Warum gibt es keine binäre Distribution von nntp? . . . . . . . . . . . . . . . . . . . . . . . 12

7.9 Wie konfiguriere ich nntp, um Lesen/Schreiben über das Netzwerk zu erlauben, ohne irgendwelche Artikel oder Datenbanken lokal halten zu müssen? . . . . . . . . . . . . . . . . . . . . 12

1 Einleitung

Der Zweck dieses Dokuments ist die Beantwortung von Fragen, die in die Kategorie der »häufig gestellten Fragen« in bezug auf USENET News-Software unter Linux im allgemeinen oder als Slackware-Distribution im besonderen fallen.

Dieses Dokument ersetzt in Verbindung mit dem korrespondierenden Mail und UUCP HOWTO die UUCP-NEWS-MAIL FAQ, die zuvor in comp.os.linux.announce veröffentlicht wurde.

1.1 Feedback

Rückmeldungen via E-Mail in jeder Form, sowohl positive als auch negative, bezüglich des Inhalts des Dokumentes sind erwünscht. Auf jeden Fall sollte einer der beiden Autoren benachrichtigt werden, wenn Fehler oder offensichtliche Versäumnisse entdeckt werden. Deutsche Rückmeldungen nimmt Jörg Stöpel entgegen, um dann mit Vince Skahan, dem Autor des englischen Originals, Kontakt aufzunehmen.

Alle E-Mails werden gelesen, aber eine Antwort erfolgt nicht notwendigerweise. Vorschläge für Erweiterungen und Ergänzungen werden im Rahmen der zeitlichen Möglichkeiten und der Dringlichkeit der Änderung berücksichtigt.

Flames landen - je nach Unterhaltungswert - in /dev/null oder im Poesiealbum.

Insbesondere die Konventionen bezüglich Pfadnamen sind unter Linux einer ständigen Veränderung unterworfen. Daher können die hier verwendeten Bezeichnungen nur ein Beispiel sein, das sich am gerade aktuellen Standard orientiert. Bei Unstimmigkeiten sollte die verwendete Distribution und ihre Konvention genauer betrachtet werden.

Feedback bezüglich des grundsätzlichen Formats des Dokumentes sollte direkt an den Betreuer des Deutschen HOWTO Projektes, Marco Budde (Budde@tu-harburg.de), bzw. den Linux HOWTO Koordinator Greg

Hankins (greph@sunsite.unc.edu) gehen.

1.2 Copyright

Dieses Dokument ist urheberrechtlich geschützt. Das Copyright für die englische News HOWTO, auf der dieses Dokument basiert, liegt bei Vince Skahan. Das Copyright für die deutsche Version liegt bei Jörg Stöpel.

Das Dokument darf gemäß der GNU General Public License verbreitet werden. Insbesondere bedeutet dieses, daß der Text sowohl über elektronische wie auch physikalische Medien ohne die Zahlung von Lizenzgebühren verbreitet werden darf, solange dieser Copyright-Hinweis nicht entfernt wird. Eine kommerzielle Verbreitung ist erlaubt und ausdrücklich erwünscht. Bei einer Publikation in Papierform ist das Deutsche Linux HOWTO Projekt hierüber zu informieren.

1.3 Disclaimer

Natürlich lehnen die Autoren jegliche Haftung für den Inhalt des Dokumentes ab. Die Verwendung der hier beschriebenen Konzepte, Beispiele und/oder jedes anderen Inhaltes dieses Dokumentes geschieht auf eigene Verantwortung.

1.4 Weiterführende Information

1.4.1 USENET

Folgende Newsgruppen beschäftigen sich mit Themen rund um News:

     news.admin.misc         Allgemeines zur News Administration im Netz
     news.admin.policy       Politik des USENET
     news.admin.technical    Verwaltung von Netzwerk-News (moderiert)
     news.software.b         Diskussion von B-News-kompatibler Software
     news.software.nn        Diskussion des »nn« Newsreader Pakets
     news.software.nntp      Network News Transfer Protocol
     news.software.readers   Software zum Lesen von Netzwerk-News
     news.sysadmin           Für Systemadministratoren.
     news.announce.newusers  Beispielgruppe für neue News-Benutzer (mod.)
     news.newusers.questions Fragen und Antworten für Neueinsteiger im Usenet

1.4.2 Literatur

Die folgende, nicht vollständige Liste enthält Bücher, die hilfreich sein können:

• Managing UUCP and USENET von Grace Todino und Tim O’Reilly, erschienen 1992 bei O’Reilly, ist meiner Meinung nach das beste Buch, um herauszufinden, welche Programme und Protokolle für einen USENET-Server Verwendung finden.

• Unix Communications, veröffentlicht von The Waite Group, beinhaltet eine sehr schöne Beschreibung aller Teile und wie sie zusammen passen.

• Practical Unix Security, erschienen bei O’Reilly, enthält gute Hinweise, wie UUCP im allgemeinen abgesichert werden kann.

• The Internet Complete Reference von Osborne ist eine sehr gute Referenz. Sie erläutert die verschiedenen zur Verfügung stehenden Internetdienste und ist eine ausgezeichnete Quelle für Informationen über News, Mail und andere verschiedene Internetressourcen.

• The Linux Networking Administrators’ Guide von Olaf Kirch vom Linux Dokumentation Projekt ist im Netz verfügbar. Eine überarbeitete Version wurde bei O’Reilly veröffentlicht. Beim gleichen Verlag ist auch eine deutsche Übersetzung erschienen. Dieses Buch ist sehr gut geeignet, einen generellen Überblick über TCP/IP und die darauf aufsetzenden Programme zu erhalten.

2 Hardwarevoraussetzungen

Es gibt keine besonderen Hardwarevoraussetzungen für USENET News unter Linux. Das einzige was vorhanden sein sollte, ist ausreichende Festplattenkapazität für die Software und die News Datenbank, deren Größe von der Menge der Nachrichten abhängig ist, die man im System halten will. Für den Anfang sollten 10 MB ausreichen.

3 Beschaffung der USENET News Software

Falls die notwendigen Pakete nicht schon in der eigenen Linux-Distribution enthalten sind, findet sich die gesamte Software, die in diesem HOWTO erwähnt wird, auf den bekannten FTP-Servern im Internet.

Ein guter Ausgangspunkt ist folgendes Verzeichnis:

     ftp.uu.net:/networking/news

Die im newspak-2.4.tar.z Paket enthaltenen Konfigurations- und Readme-Dateien beziehen sich alle auf das Zusammenstellen von UUCP, News und Mail Software unter Linux von den verschiedensten frei erhältlichen Quellen. Das Paket ist normalerweise in metalab.unc.edu:/pub/Linux/system/Mail/news zu finden. Falls es dort nicht sein sollte, werden die Autoren sicherlich eine Kopie zur Verfügung stellen.

4 News Transport Software

Heute werden hauptsächlich zwei Pakete für den News Transport unter Unix eingesetzt: CNews und INN. Das ältere BNews wurde von den Autoren offiziell für tot erklärt und wird nicht mehr unterstützt.

News Transport wird hier verwendet für die Software, die hinter den Kulissen arbeitet, um sowohl News Artikel zu posten und zu verteilen, als auch die Artikel für die verschiedenen Newsreader zum Lesen verfügbar zu machen.

Pfade können ganz nach Belieben gesetzt werden, solange UUCP den absoluten Pfad zu rnews in der Permissions-Datei hat und solange der jeweilige Newsreader so konfiguriert ist, daß er inews und mail findet.

Beachten Sie bitte, daß das Mischen von CNews und INN ist die beste Voraussetzung ist, um Ärger zu provozieren. Es sollte nur einer von beiden verwendet werden. Das Hinzufügen des NNTP »Reference Release« zu CNews geht in Ordnung, da beide aufeinander abgestimmt sind.

4.1 CNews Cleanup Release

Der de-facto-Standard für News Software ist zur Zeit CNews. Es existiert bereits eine Reihe von Jahren. Die aktuelle Version zum Zeitpunkt dieser Übersetzung heißt »CNews Cleanup Release, with patch CR.G« und datiert von 1995.

Der Hauptvorteil von CNews ist seine Reife. Es läuft auf wohl allen Unix Systemen, die man findet und es gibt buchstäblich tausende von Systemen weltweit, auf denen es läuft.

Sein größter Nachteil ist, daß es anscheinend für UUCP Verbindungen mittels Modem bestimmt war, und daher zusätzliche NNTP Software benötigt, um z.B. die News per TCP/IP zu lesen.

Trotzdem sollte ein angehender USENET Administrator CNews als erstes versuchen, da es äußerst stabil läuft, gut dokumentiert ist und es unzählige erfahrene Administratoren weltweit gibt, die mit Rat zur Seite stehen können.

Die »Cleanup Release« behauptet von sich, daß jetzt vollständige »Overview« Unterstützung integriert ist und diese schneller ist als vorher. Das Ergebnis erlaubt die Verwendung von CNews NOV Support, statt ein externes Paket zur Erzeugung der Bezugsverkettung für Newsreader wie nn, tin oder trn als Newsreader zu verwenden.

Ich habe noch nicht ausprobiert, wie dieser Teil angesprochen wird, da ich zu Hause seit längerem auf INN umgestiegen bin. Wenn jemand mir diesbezüglich weiterhelfen kann, so aktualisiere ich dieses Dokument gerne.

Das Newspak Paket auf der Sunsite enthält sowohl lauffähige Konfigurationsdateien für die CNews »Cleanup Release« unter Linux als auch einige Patches, die benötigt werden, damit doexplode mit einigen Problemen fertig wird, die bash 1.12 verursacht.

Grundsätzlich genügt es, das neue quiz Skript laufen zu lassen und die Standardwerte zu verwenden. Es werden einige Fragen gestellt, die sich auf den /usr/include Dateibaum beziehen, aber das wirft keine Probleme auf.

4.1.1 Installation von CNews

Die Installation der »Cleanup Release« von CNews ist von Anfang bis Ende ein »RTFM«-Projekt. Man hole sich die Quelltexte, entpacke sie und folge den Instruktionen.

Das quiz.def in newspak wurde durch einen initialen Aufruf von quiz erzeugt, wobei lediglich die Antworten mit Hilfe der Dateien in /usr/include erzeugt wurden.

Für die Durchführung der Selbsttests des CNews Paketes ist eine neuere bash Version notwendig. Der Aufruf bash -ver sollte als Version 1.14.5 oder höher ergeben.

Steve Robbins hat festgestellt, daß die »Cleanup Release« von CNews einen Bug im GNU join Kommando der shellutils Version 1.9 offenlegt. Einige Quelltexte von join müssen zu Behebung gepatcht werden; die Patches wurden von Steve auf der Sunsite abgelegt. Inzwischen gibt es die shellutils in der Version 1.12.

4.1.2 Die Konfiguration von CNews

Man sollte sich wenigstens die folgenden Dateien im Verzeichnis /usr/local/lib/news oder /usr/lib/news ansehen und gegebenenfalls ändern:

     active        -  Enthält die Namen und Daten der lokalen Newsgruppen.
     batchparms    -  Parameter zur Aufbereitung zu sendender News-Batches.
     explist       -  Steuert Verhalten von expire, dem Entsorger alter Artikel.
     mailname      -  Name in Antworten via E-Mail.
     mailpaths     -  Wohin gehen moderierte Postings per E-Mail?
     organization  -  Die eigene »Organisation«.
     sys           -  Steuert, was geholt und verschickt wird.
     whoami        -  Der eigene Hostname für die Path:-Zeile.

4.1.3 Pflege eines CNews-Servers

Als erste, wichtigste Regel gilt: Alle Dateien, für deren Konfiguration es Tools gibt, sollten nicht von Hand bearbeitet werden. Insbesondere sollten newsfeeds nicht per Hand eingerichtet werden, dazu gibt es addfeed. Eine andere Datei ist active, für die es das Programm addgroup gibt. Im Zweifelsfall lese man die Dokumentation, die mit dem Paket kommt.

Ein weiterer Punkt ist die korrekte Rechtevergabe für alle Dateien und Programme. Daher sollte die komplette Konfiguration als Benutzer news erfolgen. Zur Erinnerung, in der Regel muß man sich erst als root anmelden und anschließend mit su - news zum NEWSBIN werden.

Die eigentliche Arbeit wird über cron erledigt. Die crontab für news kann in etwa wie folgt aussehen:

     # Beispiel crontab für die CNews cleanup Release
     #
     # Empfangene und (extern und lokale) News-Batches
     # einsortieren
     20 * * * * /usr/lib/news/bin/input/newsrun
     # Nach draußen gehende News einpacken
     0 * * * * /usr/lib/news/bin/batch/sendbatches myfeedsite
     # Alte News nach dem Haltbarkeitsdatum wegwerfen
     59 0 * * * /usr/lib/news/bin/expire/doexpire
     # Monitor und Report Tools wenn gewünscht
     10 5 * * * /usr/lib/news/bin/newsdaily
     00 5 * * * /usr/lib/new/bin/newswatch
     # Bearbeiten von News Batches nicht von 6:30 - 16:00
     30 6  * * * /usr/lib/news/bin/input/newsrunning off
     00 16 * * * /usr/lib/news/bin/input/newsrunning on

4.2 InterNetNews (INN)

INN ist der Newcomer in der Szene, aber das Programm wird mit zunehmender Reife immer populärer. Der Hauptvorteil ist die Schnelligkeit und die Tatsache, daß ein NNTP-Paket bereits enthalten ist. Der Hauptnachteil ist, daß er noch neu ist und sich von daher auf den vielen Standard-Unix-Versionen noch nicht unbedingt reibungslos installieren und betreiben läßt. Zusätzlich arbeitet das Programm mit einem ständig laufenden Daemon, nämlich innd, und einem zusätzlichen Daemon, der das Threading übernimmt. Die Kosten für die Schnelligkeit bestehen im hohen Speicherbedarf.

Ein Newsaufkommen von 5 MB pro Nacht über UUCP mit einem 14,4 kBit/s Modem mit INN auf einem 8 MB 386-33 ohne X Window System macht aber keine Probleme.

Als erstmaliger USENET-Administrator sollte man vielleicht nicht unbedingt mit INN anfangen, bevor man nicht Erfahrungen mit CNews gesammelt hat. Obwohl das Programm unter Linux schnell und zuverlässig läuft, ist es noch ziemlich schlecht dokumentiert für einen angehenden News Administrator. In der Praxis ist die Administration allerdings recht einfach, wenn man einmal herausgefunden hat, wie es funktioniert.

INN ist auch ziemlich eigen, was Zugriffsrechte angeht. Man sollte sie nicht durcheinanderbringen.

INN ist außerdem ziemlich eigen, wenn es um die »Qualität« des TCP/IP geht, mit dem es zusammenarbeiten soll. Linux ist momentan noch nicht unbedingt das, was erwartet wird (Dez. 95). Es wird daher empfohlen, sich ein Linux-spezifische INN-Paket von den üblichen FTP-Servern zu besorgen.

4.2.1 Installation von INN

Von Arjan de Vet stammt ein Patch + Config Kit für INN 1.4, um den Server unter Linux zum Laufen zu bringen. Er kann gefunden werden auf:

     ftp.win.tue.nl:/pub/linux/ports/

INN benötigt ebenfalls dringend einen guten Ersatz für /bin/sh. bash 1.12 hat einige kleinere Probleme bereitet: Newsgruppen wurden z.B. nicht behandelt. Die Beschreibung hier geht von bash 1.13 aus.

4.2.2 Konfiguration von INN

Man folgt einfach den Anweisungen von Arjan und alles sollte funktionieren. Hier ist die Zusammenfassung, was getan werden muß:

   • In config.data muß HAVE_UNIX_DOMAIN DONT stehen.

• In hosts.nntp wird der Hostname des Rechners, auf dem der innd läuft, eingefügt. Für ein reines UUCP System ist es der UUCP Name.

• In /etc/inetd.conf darf keine Zeile für nntp vorkommen.

• innshellvars sollte HAVE_UUSTAT DO anstelle von DONT enthalten, wie es in der Beispiel config.data der Fall ist, wenn uustat vom Taylor UUCP-Paket installiert ist. Falls dieses falsch definiert ist, werden keine für andere Systeme bestimmten News als Batch gepackt.

• Wenn INN läuft, sollte unbedingt die empfohlene Konfiguration von syslogd durchgeführt werden; sie ist sehr hilfreich.

Es gibt eine außergewöhnliche FAQ für INN, die monatlich aktualisiert wird. Wer danach unter

rtfm.mit.edu:/pub/usenet-by-hierarchy/news sucht, wird es sicherlich nicht bereuen.

4.2.3 Pflege einer INN-Site

Es hat sich gezeigt, daß eine Linux-INN-Site praktisch keine Pflege benötigt, wenn man einen funktionierenden cron besitzt. Die notwendige crontab wird in etwa wie folgt aussehen:

     # tägliche Pflege, .overview und veraltete Artikel
     # aktualisieren
     1 0 * * * /usenet/sw/inn/bin/news.daily expireover delayrm < /dev/null
     # lokale Artikel rausschicken
     5 * * * * /usenet/sw/inn/lib/send-uucp

Bei bash ab Version 1.13 wird das < /dev/null nicht benötigt.

4.3 Andere News Transport Agenten

Es folgt eine nicht vollständige Liste anderer News Transport Software, die unter Linux lauffähig ist:

• dynafeed • nntp1.5.11

• slurp1.05

• suck 3.2.1

5 Lesen der News

Es gibt nicht den einzig wahren Newsreader. Das heißt, es gibt ziemlich viele, die leicht portiert werden können, insbesondere nach Linux. Zur Zeit (Dez. 95) sind tin, trn und nn in den gebräuchlichsten Linux-Distributionen und im newspak enthalten.

Bei der Auswahl eines Newsreaders möchte man in der Regel ein Programm wählen, das einfach zu bedienen ist, gut durch den Benutzer konfigurierbar ist und Threading und »Kill Files« unterstützt. »Kill Files« erlauben es, interessante Artikel auszuwählen, oder nicht interessante von vornherein gar nicht erst anzeigen zu lassen.

Die Pfade können ganz nach Geschmack gesetzt werden, solange alle Newsreader inews von der CNews oder INN Installation und ein mail Programm zum Versenden von Antworten auf Artikel finden können.

In diesem Abschnitt werden einige der populärsten Newsreader kurz beschrieben. Bevor Fragen gestellt werden: Es gibt viele gute Gründe nn zu verwenden :-).

5.1 tin

tin ist ein Newsreader mit Unterstützung für Threads, der besonders von neuen Anwendern einfach benutzt werden kann. Er unterstützt »Kill Files« und »NOV Threading«. Bei der Verwendung von INN liest er NOV .overview Dateien per Default und erstellt keine Index-Dateien.

Um tin unter Linux zu übersetzen, editiert man das Makefile, um die Pfade zur News Software zu setzen. Dieses betrifft insbesondere den Pfad von inews. Anschließend genügt ein make linux. Es sind keine speziellen Patches für Linux notwendig.

Für News Threads startet man das Programm einfach mit tin -u, um die Indexdateien zu aktualisieren.

tin bietet die Möglichkeit, News über das NNTP-Protokoll zu lesen. Dazu muß man bei der Kompilierung die Konstante NNTP_ABLE definieren. Als Ergebnis erhält man zum einen das Programm tin für lokalenund zum anderen rtin für einen NNTP-Zugriff. tin -r verhält sich dann genauso wie rtin.

Iain Lea empfiehlt den folgenden crontab Eintrag, wobei man mit make daemon das Programm tind übersetzt:

     # Datenbank der Bezugsverkettungen erzeugen
     35 * * * * /usenet/bin/tind -u

Vince Skahan hat tin über eine SLIP Anbindung als einen NNTP-basierten Newsreader gefahren. Wenn das angeschlossene System ein umfangreicheres Spektrum an News Gruppen beherbergt, dann kann man ziemlich alt werden, während man darauf wartet, daß die active Datei geladen wird.

5.2 trn/mthreads

trn ist ein Abkömmling des rn Newsreaders mit Thread-Unterstützung. trn Version 3.2 und neuer haben die nette Eigenschaft, entweder das trn-eigene Threading mit mthreads oder NOV, die Thread-Unterstützung von INN zu verwenden.

Zum Kompilieren startet man Configure und verwendet die generierten Standardeinstellungen. Möglicherweise ist lib4.4.1 und bash Version 1.13 notwendig, damit Configure erfolgreich durchläuft.

Das newspak-Paket auf Sunsite enthält einsatzbereite Konfigurationsdateien, um trn unter Linux einzusetzen.

Es kann ziemlich unklug sein, config.sh von trn von Hand zu editieren, es sei denn, man macht etwas wirklich sehr einfaches wie das Ändern von Pfaden. Falls man es macht, so muß Configure -S gestartet werden, bevor man make depend, make und make install auf das System losläßt.

Obwohl Configure normalerweise unter Linux mit der bash Version 1.12 den Dienst verweigert, macht Configure -S keine Probleme. Wenn man also die config.sh aus dem newspak als Startpunkt verwendet, ist man dem Ziel schon recht nahe.

Das Kompilieren für das Lesen via NNTP ist genauso einfach, wie »yes« zu antworten, wenn Configure fragt, ob man es denn so möchte. Eine zukünftige Ausgabe des newspak wird eine config.sk für NNTP zusätzlich zu der für lokales Lesen beinhalten für alle die, die immer noch mit einer alten bash Version gestraft sind.

Vince Skahan hat trn über eine SLIP-Anbindung als einen NNTP-basierten Newsreader gefahren. Wenn das angeschlossene System ein umfangreicheres Spektrum an Newsgruppen beherbergt, dann kann man ziemlich alt werden, während man darauf wartet, daß die active Datei geladen wird und die Bezugsverkettung aufgebaut wird.

Es gibt Dutzende von Kommandozeilenparametern für trn, um alle möglichen Dinge zu erreichen. Details finden sich in der Manual Page zu trn. Eine einfache Möglichkeit, die gewünschten Parameter zu setzen, ist die Verwendung der Konfigurationsdatei:

• Man erzeuge eine Datei mit allen Parametern unter ˜ /.trnrc

   • export TRNINIT="˜ /.trnrc

Das aktuelle newspak enthält als Beispiel eine Kopie von Vince Skahans .trnrc Datei.

trn Version 3.2 und neuere unterstützen NOV oder mthreads für’s Threading; der Benutzer hat die Wahl. Demzufolge wird empfohlen, beim Übersetzen beide Threadingmöglichkeiten zuzulassen; Configure fragt danach. Auswählen kann man zur Laufzeit NOV mit trn -Zo und die mthreads mit trn -Zt. Mittels eines Alias kann man sich die jeweils gewünschte Variante auswählen.

Um die mthreads Datenbank zu erzeugen, benötigt man in etwa folgenden Eintrag in der crontab:

     # trn Bezugsverkettung erzeugen
     35 * * * * /usenet/bin/mthreads all

5.3 NN

Das newspak-Paket auf der Sunsite enthält funktionierende Konfigurationsdateien für nn 6.4.18, die man an die richtige Stelle bringt und dann einfach make unter Linux startet. Sie arbeiten ebenfalls mit nn 6.5.

Nach dem Übersetzen sind die folgenden Schritte notwendig:

• Starten Sie das inst Programm für die Installation.

• Initialisieren sie die Datenbank.

• Starten Sie nnmaster.

Details stehen in der Dokumentation von nn. Übersetzen, Konfigurieren und Benutzen von nn unter Linux unterscheidet sich in nichts von anderen Unix-Systemen. Allerdings wird man nnmaster eher über cron starten, statt es als Daemon laufen zu lassen, da es als Daemon eventuell nicht einwandfrei funktioniert.

Die Unterstützung von nn ist so einfach, wie die folgenden crontab Einträge:

     # nnmaster starten, um "nn" Daten zu sammeln
     # (nicht nötig beim Einsatz von NOV und INN bei
     # nn-6.5beta3)
     25 * * * * /usenet/sw/nn/lib/nnmaster
     # Veraltete Artikel aus der nn Datenbank werfen
     # (nicht nötig beim Einsatz von NOV und INN bei
     # nn-6.5beta3)
     0  4       * * * /usenet/sw/nn/bin/nnadmin =EYW
     # stash a copy of the active file for "nngoback" and
     # keep last 7
     0 3 * * * /usenet/sw/nn/lib/back_act 7

Vince Skahan hat etwas mit nn als NNTP-basiertem Newsreader experimentiert. Bei dieser Konfiguration muß die config.h leicht modifiziert werden. Die Kommentare in der Datei sollten aussagekräftig genug sein. Wenn nn als NNTP-basierter Newsreader benutzt wird, startet nn eine lokale Kopie des nnmaster und unterhält eine lokale Thread-Datenbank. Dadurch wird ein sehr schneller Zugriff bei der Auswahl der Artikel erreicht. Natürlich muß man etwas warten, bis der eigentliche Text des Artikels geladen ist, wenn SLIP über ein Modem verwendet wird.

Die neue Version 6.5.x von nn unterstützt die NOV Datenbank von INN, welche den Einsatz von nnmaster erübrigt. Die Konfiguration wird auf’s höchste empfohlen, da man CPU-Zeit spart und die Datenbank und die tatsächlichen Artikel immer abgeglichen sind.

5.4 Andere Newsreader

Es folgt eine Liste weiterer Newsreader unter Linux ohne Anspruch auf Vollständigkeit.

   • tass
   • xrn
   • gnus
   • netscape

6 Danksagungen

Die folgenden Personen haben geholfen, die Informationen und Erfahrungen zusammenzutragen, und damit dieses Dokument ermöglicht:

Ed Carp, Steve Robbins, Ian Taylor, Greg Naber, Matt Welsh, Iain Lea und Arjan de Vet

Falls jemand vergessen wurde, so bitten wir um Entschuldigung.

7 Häufig gestellte Fragen zum USENET

7.1 Warum kann ich keine Artikel in moderierte Gruppen posten?

Vermutlich weil der Newsreader versucht, über /bin/mail zu posten und es nicht mag. Ersetzen Sie das alte /bin/mail durch die neue Portierung von mailx-5.5.tar.gz der Slackware Distribution. Die Installation mit dem Slackware pkgtool stellt alles korrekt ein.

Eine andere Möglichkeit ist, daß eine moderierte Gruppe lokal als nicht-moderiert eingerichtet ist und irgendein Programm die Artikel auf dem Weg in die Öffentlichkeit löscht. Es ist sicherzustellen, daß checkgroups ab und zu gestartet wird, wenn der Checkgroups-Artikel alle paar Wochen in news.admin einläuft.

7.2 Warum scheine ich Probleme mit den Zugriffsrechten zu haben?

Es scheint nicht nur so :-).

Überprüfen Sie, ob die Zugriffsrechte korrekt sind, und stellen Sie sicher, daß es in /etc/passwd und /etc/group eine Benutzerkennung für den $NEWSBIN, z.B. news, gibt, die der in dem installierten Paket verwendeten entspricht. Es scheint hier noch keinen Linux-Standard zu geben.

Alles in /usr/lib/news mit der Ausnahme von /usr/lib/news/setnewsids sollte news.news gehören.

Letzteres sollte setuid root sein.

Die Benutzer- und Gruppenkennung für den $NEWSBIN kann news sein, muß es aber nicht.

7.3 Warum kann ich Artikel lokal posten, aber sie werden nicht gezeigt?

Möglicherweise wurde newsrun nicht von cron aufgerufen. Vielleicht haben Sie die sys Datei editiert und durcheinander gebracht. Vielleicht gibt es keine /var/spool/news/out.going Verzeichnishierarchie oder ähnliches. Vielleicht habe Sie ein Paket mit der »Performance« oder »Cleanup« Release der CNews installiert. Diese packen die Artikel in Pakete und benötigen newsrun, um diese Batches lokal einzusortieren oder an andere Server zu füttern.

Sie sollten keine Newsgruppen durch das Editieren der active oder sys Dateien erzeugen. Dazu gibt es Tools in /usr/lib/news/bin/maint, die das sauber erledigen.

7.4 Warum enthält mein Paket mit den Binaries kein nntp?

Weil der Autor das SLS News Paket nicht auf die doppelte Größe aufblasen wollte, um dann NNTP- und nicht-NNTP-Versionen der Newsreader und News Transport-Software zu pflegen. Außerdem werden beim Übersetzen lokale Informationen verwendet, die zur Laufzeit nicht durch eine Konfigurationsdatei geändert werden können.

7.5 Warum beschweren sich Programme über »severe space shortage«, obwohl ausreichend Platz vorhanden ist?

Weil ein Programm die Datei /etc/mtab nicht lesen kann. Als Zugriffmodus wird 644 benötigt. Das kann passieren, wenn man ein von root gemountetes Filesystem unmounted und die umask ein allgemeines Lesen von Dateien, die root gehören, nicht zuläßt.

7.6 Es sieht zwar alles normal aus, aber Artikel werden nicht gepostet?

Ältere Versionen von Linux enthielten ein defektes sed, das CNews regelmäßig in die ewigen Jagdgründe schickte. Falls Sie die News Software über einer alten SLS Distribution installiert haben, stellen Sie sicher, daß in /bin bzw. /usr/bin nur eine einzige moderne Version von sed vorhanden ist.

Seit der »Performance Release« im Februar 1993 muß außerdem newsrun regelmäßig zur Arbeit herangezogen werden; am besten benutzt man dafür cron. Dieses Feature hat schon einige Leute überrascht.

7.7 Können trn/tin/nn News Overview (NOV) anstelle einer eigenen Thread Datenbanken verwenden?

Ja. trn, tin und die Beta-Version von nn unterstützen es jetzt.

Es funktioniert ebenfalls mit der Performance and Cleanup Release von CNews und verschiedenen Newsreadern.

Die Beta-Version von nn 6.5, die der Autor der HOWTO einsetzt, hat NOV-Unterstützung und arbeitet erstklassig unter Linux ohne nnmaster. Auf

     uniwa.uwa.edu.au:/

sollte eine Kopie zu finden sein.

7.8 Warum gibt es keine binäre Distribution von nntp?

Weil ein beachtlicher Anteil an lokalen Informationen einkompiliert werden muß, die nicht zur Laufzeit bestimmt werden können. Wer damit Probleme hat, sollte eher INN versuchen, als CNews plus nntp selber zu bauen.

7.9 Wie konfiguriere ich nntp, um Lesen/Schreiben über das Netzwerk zu erlauben, ohne irgendwelche Artikel oder Datenbanken lokal halten zu müssen?

Matt Welsh (mdw@sunsite.unc.edu)

1. Besorgen Sie sich die »Reference Implementation« von nntp und eine Kopie von rn aus einem Archiv,

     z.B.: ftp.uu.net:/networking/news/nntp/

2. Übersetzen Sie nntp wie folgt: Kopieren Sie common/conf.h.dist nach common/conf.h und editieren Sie common/conf.h, um verschiedene Optionen zu setzen. Die einzigen Optionen, die der Autor der HOWTO setzen mußte, waren folgende:

DOMAIN

Löschen Sie die Definition, indem Sie sie z.B. in #undef DOMAIN ändern. REALDOMAIN

Muß definiert sein. Es sucht nach der Domain unter Verwendung der Libraries. SERVER_FILE

Muß auf den Namen der Datei gesetzt sein, die den Hostnamen des Newsservers enthält. Das ist der Rechner, über den News gelesen und gepostet werden. Ich verwende

         /usr/local/lib/news/server.

PASSFILE Wenn der Newsserver für das Versenden von Artikeln ein Paßwort und einen Benutzernamen zur Autorisierung benötigt, dann wird hier der Name der Datei hinterlegt, die die Benutzernamen und Paßwörter enthält (s.u.). Ich verwende /usr/local/lib/news/nntppass.

Ich habe mich entschlossen, alle anderen News-bezogenen Dateien in /usr/local/lib/news zu lassen. Daher habe ich den ganzen Rest der Pfadnamen in dieser Datei (z.B. ACTIVE_FILE, NEWSGROUPS_FILE usw.) auch auf /usr/local/lib/news/... gesetzt. Viele dieser Dateien werden nur vom NNTP-Server verwendet, aber nicht vom Client. Aber um sicher zu gehen, habe ich sie alle so geändert, daß sie auf das richtige Verzeichnis zeigen. Man muß nur sicher sein, die Verzeichnisse auch entsprechend anzulegen.

3. Erzeugen Sie einen Benutzer usenet, wenn dieses noch nicht geschehen ist. Das Programm inews läuft unter dieser Kennung. Es wird lediglich eine Benutzerkennung benötigt, ein Home Verzeichnis, eine Shell oder anderes ist nicht notwendig. Es genügt folgender Eintrag in die Datei /etc/passwd:

     usenet:*:13:1::/:

Stellen Sie sicher, daß die UserID, hier 13, eindeutig ist. Die Gruppe kann irgend etwas sein, ich verwende daemon (GroupID 1).

4. Erzeugen Sie die SERVER_FILE Datei (s.o.). Zum Beispiel ist mein News Server

wonton.tc.cornell.edu, also habe ich eine Datei /usr/local/lib/news/server erzeugt, wel-

che eine einzige Zeile enthält:

     wonton.tc.cornell.edu

5. Erzeugen Sie die PASSFILE Datei. Diese Datei enthält Zeilen in folgender Form:

     <server name> <benutzername> <paßwort>

Nehmen wir an, der News Server ist shoop.vpizza.com und zum Posten ist man als Benutzer news mit dem Paßwort floof autorisiert. Dann steht in dem PASSFILE, ich verwende

/usr/local/lib/news/nntppass, diese Zeile:
     shoop.vpizza.com news floof

6. Schützen Sie diese Datei und machen Sie sie sicher! Das inews Programm läuft als User usenet, also machen Sie usenet zum Eigentümer dieses News Verzeichnisses und der nntppass Datei.

     chown usenet /usr/local/lib/news
     chmod 755 /usr/local/lib/news
     chown usenet /usr/local/lib/news/nntppass
     chmod 600 /usr/local/lib/news/nntppass

Dann kann niemand anderes diese Datei lesen. Nein, die Paßwörter in dieser Datei sind nicht verschlüsselt.

7. Jetzt wechseln Sie wieder in das nntp.1.5.11 Quellverzeichnis und starten make client. Hiermit wird die NNTP-Version von inews erzeugt, welche das einzige Programm ist, welches der NNTP Client verwendet. Als ich inews übersetzt habe, war ein Fehler in der Bibliothek. Dieser führte dazu, daß die Funktion uname() aus uname.c sich in einer Endlosschleife selbst aufgerufen hat. Das sollte inzwischen eigentlich behoben sein. Aber falls inews zu hängen scheint und das System extrem langsam wird, sollte die Funktion uname() in uname.c in etwas wie my_uname() umbenannt werden und die Aufrufe in inews.c sollten statt dessen auch my_uname() aufrufen.

8. Starten Sie make install_client. Das installiert die inews Software. Außerdem müssen Sie einen

Link von /usr/local/lib/news/inews nach /usr/local/bin/inews erzeugen.

Jetzt sollte ein fröhliches Posten von Hand möglich sein. Zum Testen kann man folgendes probieren.

     $ inews -h << EOF
     Newsgroups: misc.test
     From: me@foo.bar.com
     Subject: Testing
     Reply-To: my-real-address@wherever.edu
     This is a test.
     EOF

Wenn alles funktioniert, dann sollte inews den Artikel posten. Sie werden es erfahren, da ein Programm Ihnen darauf automatisch eine Antwort per E-Mail schicken wird. Aber bitte schicken Sie keine Artikel zum Test in normale Newsgruppen, da dieses die Kommunikation stört und von vielen Teilnehmern als Belästigung empfunden wird.