Provided by:
manpages-pl_20060617-4_all 
NAZWA
innd, inndstart - InterNetNews daemon
SK/LADNIA
innd [ -a ] [ -c dni ] [ -C ] [ -d ] [ -f ] [ -H licznik ] [ -i licznik
] [ -Iadres_IP ] [ -l rozmiar ] [ -m tryb ] [ -n flaga ] [ -o licznik ]
[ -pfd_des ] [ -Pport ] [ -r ] [ -s ] [ -t op'onienie ] [ -T licznik ] [
-u ] [ -X sekundy ] [ -Z ]
inndstart [ flagi ]
OPIS
Innd, ktory jest demonem news (InterNetNews), obsluguje wszystkie
nadchodzce feedy. Najpierw wczytuje do pamici pliki active(5),
newsfeeds(5) i incoming.conf(5). Potem otwiera port NNTP do odbierania
artykulow ze zdalnych stacji (zobacz opcj ``-p''). Jeli w
include/config.h zdefiniowano HAVE_UNIX_DOMAIN_SOCKETS, to do odbioru
artykulow od lokalnych procesow, takich jak nnrpd(8) i rnews(1)
otwierane jest gniazdo strumieniowe dziedziny Uniksowej, a dla
ctlinnd(8) odwierane jest analogiczne gniazdo datagramowe. Gdy makro
to nie jest zdefiniowane, uywane s lcza nazwane. Ctlinnd(8)
wykorzystywany jest do przekazywania serwerowi polece wykonania
okrelonych akcji. Otwiera rownie baz history(5) i dwa pliki raportowe,
zastpujce jego standardowe wyjcie i wyjcie bldu.
Po otwarciu wszystkich plikow i gniazd, innd oczekuje na polczenia i
dane na swoich portach, uywajc do tego select(2) i nieblokujcego I/O.
Jeli nie ma dostpnych danych, to wyproni on swoje wewntrzrdzeniowe
struktury danych. Domylna liczba sekund oponienia przed wypronieniem
jest ustawiana jako <DEFAULT_TIMEOUT w config.data> (zwykle 300)
sekund.
Jeli innd otrzyma bld ENOSPC (zobacz intro(2)) podczas zapisu pliku
active, pliku article lub bazy historii, to wyle do siebie komend
``throttle''. Stanie si tak rownie, jeli otrzyma zbyt wiele bldow
wejcia-wyjcia podczas zapisu do jakiego pliku.
Niektore parametry ustawiane w inn.conf(5) mog by rownie podane w linii
polece innd. W tym wypadku, opcje z inn.conf(5) bd nadpisane przez
opcje linii polece.
OPCJE
-a Domylnie, jeli host nie jest wymieniony w pliku incoming.conf to
polczenie jest przekazywane do nnrpd. Po uyciu tej flagi
dowolny host moe si podlczy i przesyla artykuly.
-c innd odrzuca stare artykuly. Zasadniczo zachowanie to moe by
sterowane przez baz historii, lecz czasem stacja wyrzuca w sie
paczk bardzo starych artykulow. Flaga ``odrzuca wszelkie
artyku/ly, wys/lane dawniej ni 21 dni temu. Warto zerowa
powstrzymuje ten test. Domyln wartoci jest 14 dni, lecz mona to
zmieni opcj ``artcutoff'' w inn.conf(5)
-C Jeli uyta jest flaga ``-C'', to innd przyjmie i przesyla dalej,
ale nie przetwarza wiadomoci anulowania i powstrzymania. Jest to
przeznaczone dla stacji, w ktorych naduywane s anulowania i
ktore wybieraj mechanizm z lepsz autoryzacj.
-d -f Innd normalnie przechodzi w tlo, ustawia standardowe wyjcia na
pliki raportowe i odlcza si od terminala. Po uyciu flagi ``-d''
serwer tego nie robi, a po uyciu flagi ``-f'', serwer pozostaje
na pierwszym planie.
-H -T -X
Flagi ``-H'', ``-T'' i ``-X'' steruj liczb polcze dozwolonych na
minut. Ma to w zaloeniach dziala jako ochrona serwera przed
czytnikami, ktore wykonuj w cigu minuty zbyt wiele polcze z
serwerem. Zazwyczaj nie uywa si tego, chyba e rzeczywicie
pojawia si jaki problem. Tablica uywana do tych sprawdze jest
ograniczona do 128 wpisow i jest uywana jako piercie (ring).
Rozmiar zostal wybrany do ulatwienia obliczania indeksu i do
upewnienia si, e nie zabraknie ci miejsca. Praktycznie wydaje
si wtpliwe, eby wykorzystal nawet polow tablicy naraz.
Flaga ``-H'' okrela maksymaln liczb polcze pochodzcych z danego
hosta z serwerem podczas ``-X'' sekund. Domylnie 2.
Flaga ``-T'' ogranicza calkowit liczb nadchodzcych polcze innda
w okresie ``-X'' sekund. Maksymaln wartoci jest 128. Domyln 60.
Flaga ``-X'' ustawia liczb sekund, uywan przez ``-H'' i ``-T''.
Warto zerowa wylcza sprawdzanie. Domylnie jest 0.
-i Flaga ``-i'' ogranicza liczb nadchodzcych polcze NNTP. Warto
zerowa wylcza to sprawdzenie. Domyln wartoci, jeli w inn.conf(5)
nie podano opcji ``maxconnections'' jest 50. Wymieniona opcja
jest zastpowana wartoci tej opcji.
-I Opcja ta umoliwia wizanie innda do podanego adresu interfejsu
IP. Adres IP musi by w postaci kropkowej czworki liczb
(nnn.nnn.nnn.nnn). Zobacz te opcj ``bindaddress'' w inn.conf(5).
-l Flaga ``-l'' ogranicza rozmiar artykulu. Po uyciu tej flagi,
wszystkie artykuly wiksze ni rozmiar bajtow bd odrzucane. Domyln
wartoci jest 1000000L bajtow. Sprawdzanie mona wylczy, uywajc
wartoci zerowej. Patrz take opcje ``maxartsize'' i
``localmaxartsize'' w inn.conf(5).
-m Flaga ``-m'' sluy do uruchamiania serwera w zatrzymanym lub
stlumionym stanie (zobacz ctlinnd(8)). Argument rozpoczyna si
pojedyncz liter: g, p lub t, wskazujce odpowiednio na ``go''
(startuj), ``pause'' (zatrzymaj) lub ``throttle'' (stlum).
-n Flaga ``-n'' okrela czy pauzowanie lub stlumienie serwera
powinno rownie wylczy przyszle procesy czytnikowe. Warto ``y''
powoduje, e czytniki zachowuj si jak serwer, a warto ``n''
umoliwia czytanie, nawet gdy serwer nie pracuje. Domylnie
zezwala si na czytanie, a zmieni mona to opcj
``readerswhenstopped'' w inn.conf(5).
-o Flaga ``-o'' sluy ograniczaniu liczby plikow, ktore s
utrzymywane otwarte dla wychodzcych feedow plikowych. Domyln
wartoci jest liczba dostpnych deskryptorow minus cz
zarezerwowana do uytku wewntrznego.
-p Po uyciu flagi ``-p'' przyjmuje si, e port NNTP jest otwierany
na podanym deskryptorze. (Jeli uyta jest ta flaga, to innd
zaklada, e pracuje z wlaciwymi uprawnieniami i nie bdzie wolal
chown(2) na adnych z tworzonych plikow lub katalogow.)
-P Jeli uyta jest flaga ``-P'', to podany port jest uywany do
nasluchiwania polcze. innd musi mie wystarczajce uprawnienia
startowe by otworzy podany port.
-r Jeli uyta jest flaga ``-r'', serwer przenumeruje plik active
zupelnie tak, jak po wyslaniu komendy ``renumber''.
-s Jeli uyta jest flaga ``-s'', to innd nic nie bdzie robi, lecz
tylko sprawdzi skladni pliku newsfeeds. Jeli bd tam bldy, to
zglosi kod bldu; rzeczywiste bldy bd natomiast zgloszone w
syslog(3).
-t Zmienia czas oponienia przed wypronieniem do timeout sekund.
-u Raporty s normalnie buforowane; flaga ta wylcza to zachowanie.
Inndstart jest malym programem typu front-end, ktory otwiera port NNTP,
ustawia uid i gid na opiekuna news, a nastpnie uruchamia demona innd z
flag ``-p'' i minimalnym bezpiecznym rodowiskiem. Jest to maly front-
end dla stacji, ktora nie chce uruchamia innd z uprawnieniami roota.
KOMUNIKATY STERUJCE
Artykuly przychodzce, majce naglowek Control s nazywane komunikatami
sterujcymi. Poza komunikatem anulowania, s one zaimplementowane przez
zewntrzne programy w katalogu <pathcontrol w inn.conf> o ile
<usecontrolchan w inn.conf> jest ustawione na ``false''. (Komunikaty
anulowania (cancel) odwieaj baz historii, wic musz by obslugiwane
wewntrznie; koszt synchronizowania, blokowania i odblokowywania bylby
zbyt wysoki przy odbiorze wielu takich komunikatow.)
Gdy nadchodzi komunikat sterujcy, pierwsze slowo tekstu jest
konwertowane na male litery i jest uywane jako nazwa uruchamianego
programu. Jeli program nie istnieje, wywolywany jest domylny program,
okrelony przez <pathcontrol w inn.conf>/default.
Wszystkie programy sterujce s wywolywane z czterema parametrami.
Pierwszym jest adres nadawcy komunikatu; jest to pobierane z naglowka
Sender. Jeli naglowek ten jest pusty, to dane s pobierane z naglowka
From. Nastpnym parametrem jest adres zwrotny replik; pobierany z
naglowka Reply-To. Jeli naglowek ten jest pusty, uyty zostanie adres
nadawcy. Trzecim parametrem bdzie nazwa pliku, w ktorym znajduje si
artykul wzgldem katalogu skladowego news. Czwartym parametrem jest
host, ktory wyslal artykul. Jest to odczytywane z linii Path.
Jeli <usecontrolchan w inn.conf> jest ustawione na ``true'', to aden
komunikat sterujcy nie bdzie przetwarzany przez program zewntrzny,
forkowany przez innda. Zamiast tego, bdzie przetwarzany przez skrypt
controlchan, ktory jest wywolywany jako program kanalowy innda. Musisz
do uywania tego skryptu skonfigurowa newsfeeds(5). Przetwarzanie z
uyciem controlchan moe zredukowa nadmierne obcienie, jeli zbyt wiele
komunikatow sterujcych pojawia si naraz.
Dystrybucja komunikatu sterujcego jest odmienna od dystrybucji
standardowych artykulow.
Komunikaty sterujce normalnie wpadaj do grupy dyskusyjnej control. Mog
one by zapisywane w podgrupach, lecz w oparciu o polecenie komunikatu
sterujcego. Na przyklad komunikat newgroup moe by zapisany w grupie
control.newgroup lub w ogolnym control, jeli specjalizowana podgrupa
nie istnieje.
Stacje mog jawnie udostpnia grup ``control'' w ich listach zapisowych,
lecz zwykle lepiej jest j wylczy. Jeli komunikat sterujcy jest wysylany
na grup, ktorej nazwa koczy si czterema znakami ``.ctl'', to przyrostek
jest obcinany, a to co pozostanie jest uywane jako nazwa grupy. Na
przyklad komunikat anulujcy, wyslany na ``news.admin.ctl'' zostanie
przeslany do wszystkich stacji zapisanych na grupy ``control'' lub
``news.admin''. Wiadomoci newgroup lub rmgroup wymagaj dodatkowego
specjalnego traktowania. Jeeli wiadomo jest zaakceptowana i zostala
wyslana do tworzonej lub usuwanej grupy, to ta wiadomo zostanie
przeslana do wszystkich serwerow, ktorych wzorce subskrypcji grup
pozwolilyby na odebranie wiadomoci wysylanych do tej grupy.
Jeli <mergetogroups w inn.conf> jest ustawione na ``true'', to gdy
artykul jest wysylany na grup, ktora rozpoczyna si trzema literami
``to.'', to zostanie potraktowany specjalnie, jeli grupa ta nie
istnieje w pliku active: artukul jest skladowany do grupy ``to'' i jest
wysylany do pierwszej stacji, nazwanej po przedrostku. Na przyklad,
wysylanie do ``to.uunet'' zostanie zloone do ``to'' i przeslane do
stacji ``uunet''. file:
R'ONICE PROTOKO/LU
Innd implementuje komendy NNTP zdefiniowane w RFC 977 z nastpujcymi
odstpstwami:
1. Za ``list'' moe wystpowa dodatkowo argument ``active'',
``active.times'', ``newsgroups'' lub ``subscription''. Jest to
popularne rozszerzenie, lecz nie w pelni obslugiwane; zobacz
nnrpd(8).
2. Zaimplementowane s komendy ``authinfo user'' oraz ``authinfo
pass''. Zobacz draft-barber-nntp-imp-07.txt dla dalszych
szczegolow.
3. Udostpniona jest nowa komenda, ``mode reader''. Komenda ta
powoduje, e serwer przekazuje polczenie do nnrpd. Komenda
``mode query'' przeznaczona jest dla przyszlych zastosowa i
obecnie jest traktowana tak samo.
4. Udostpnione s komendy wspierajce transfer strumieniowy: ``check
messageid'' i ``takethis messageid''.
5. Udostpniona jest komenda transferu wsadowego ``xbatch liczba-
bajt'ow''. Komenda ta odczyta liczb-bajt'ow bajtow i zapisze je
dla dalszego przetwarzania przez rnews(1) (ktory naley uruchomi
oddzielnie). Obejrzyj programy innxbatch i sendxbatches.sh.
6. Pozostalymi zaimplementowanymi komendami s ``head'' , ``help'' ,
``ihave'' , ``quit'' oraz ``stat''.
MODYFIKACJE NAG/L'OWK'OW
Innd modyfikuje tak malo naglowkow, jak tylko si da, lecz moglby by
lepszy.
Oto lista naglowkow, ktore jeli istniej, s usuwane:
Date-Received
Posted
Posting-Version
Received
Relay-Version
Puste naglowki oraz naglowki skladajce si z bialych spacji rownie s
opuszczane.
Do naglowka Path doklejana jest nazwa lokalnej stacji (okrelanej przez
warto ``pathhost'' w inn.conf(5)) i wyrzyknik (jeli nazwa pierwszej
stacji naglowka roni si od lokalnej).
Naglowek Xref jest usuwany i tworzony jest nowy.
W przypadku nieobecnoci, naglowek Lines jest dodawany.
Innd nie przepisuje nieprawidlowych naglowkow. Na przyklad nie bdzie
zmienia nieprawidlowego naglowka Lines, ale odrzuci artykul.
RAPORTOWANIE
Innd raportuje wszystkie nadchodzce artykuly do pliku raportowego. Jest
to plik tekstowy o zmiennej iloci rozdzielanych spacjami pol o jednym z
nastpujcych formatow:
mon dd hh:mm:ss.mmm + feed <Message-ID> stacja...
mon dd hh:mm:ss.mmm j feed <Message-ID> stacja...
mon dd hh:mm:ss.mmm c feed <Message-ID> stacja...
mon dd hh:mm:ss.mmm - feed <Message-ID> powod...
mon dd hh:mm:ss.mmm ? feed <Message-ID> powod...
Po polu Message-ID moe by rownie pole nazwy hosta i rozmiaru, zalenie
od opcji ``nntplinklog'' i ``logsize'' z inn.conf(5).
Pierwsze trzy pola s polami daty i czasu w rozdzielczoci
milisekundowej. Pite pole jest stacj, ktora wyslala artykul
(odczytywane z naglowka Path). Szoste pole jest identyfikatorem
artykulu; jeli informacja jest niedostpna, pojawi si w jej miejscu
pytajnik.
Czwarte pole okrela czy artykul zostal przyjty czy nie. Jeli jest tam
znak plus, to zostal przyjty. Jeli ``j'', to zostal przyjty, lecz
wszystkie grupy maj w swoich rekordach active ``j'', wic artykul zostal
zloony do grupy ``junk''. Jeli w polu pojawila si litera ``c'', to
przed pojawieniem si oryginalnego artykulu odebrany zostal komunikat
anulujcy. We wszystkich tych przypadkach artykul zostal przyjty i pole
``stacja...'' zawiera rozdzielon spacjami list stacji, do ktorych
artykul jest przesylany.
Jeli czwarte pole zawiera znak minusa, o artykul zostal odrzucony.
Powodami odrzucenia mog by:
"%s" header too long (za dlugi naglowek)
"%s" wants to cancel <%s> by "%s" ("%s" chce anulowa <%c> poprzez "%s")
Article exceeds local limit of %s bytes (Artykul przekracza lokalny
limit %s bajtow)
Article posted in the future -- "%s" (Artykul wyslany w przyszloci -- "%s")
Bad "%s" header (Zly naglowek "%s")
Can't write history (Nie mog zapisa historii)
Duplicate (Duplikat)
Duplicate "%s" header (Zduplikowany naglowek "%s")
EOF in headers (EOF w naglowkach)
Linecount %s != %s +- %s (Liczba linii %s != %s +- %s)
Missing %s header (Brak naglowka %s)
No body (Brak ciala)
No colon-space in "%s" header (Brak dwukropka-spacji w naglowku "%s")
No space (Brak spacji (albo miejsca???))
Space before colon in "%s" header (Spacja przed dwukropkiem w naglowku "%s")
Too old -- "%s" (Za stare -- "%s")
Unapproved for "%s" (Niezatwierdzone dla "%s")
Unwanted newsgroup "%s" (Niechciana grupa dyskusyjna "%s")
Unwanted distribution "%s" (Niechciana dystrybucja "%s")
Whitespace in "Newsgroups" header -- "%s" (Biala spacja w naglowku
"Newsgroups" -- "%s")
Gdzie ``%s'' jest podmieniane przez konretniejsze informacje.
Jeeli w czwartym polu wystpi znak ``?'', oznzcza to, e atykul zawiera
dziwne lacuchy znakow, tj. CR bez LF lub LF bez CR. Te znaki s uywane
razem ``CRLF'', co oznacza koniec linii. Obecnie taka informacja w logu
oznacza dziwno tego artykulu, ale innd nigdy nie odrzuca artykulu z
tego powodu.
Zauwa, e jeli artykul jest przyjty i <wanttrash w inn.conf> jest
ustawione na ``yes'' i adna z grup nie jest odpowiednia, to zostanie
zraportowany w dwoch liniach: w linii ``j'' i ``-''.
Innd zglasza te obszerne raporty poprzez sysloga. Pierwsze slowo
komunikatu raportowego bdzie: nazw stacji, jeli wpis jest dla niej
specyficzny (np. komunikat ``connected''); slowem ``SERVER'', jeli
komunikat jest zwizany z serwerem, np. gdy pojawi si bld odczytu.
Jeli drugim slowem s cztery litery ``cant'', to zglaszany jest bld. W
tym przypadku nastpne dwa slowa ogolnie nazywaj wywolanie systemowe lub
funkcj biblioteczn, ktora si nie powiodla oraz obiekt, wokol ktorego
wykonywane byly dzialania. Reszta linii moe zawiera inne informacje.
W innych przypadkach, drugie slowa okrela rodzaj zmiany, a reszta linii
ucila t informacj. Slowo ``internal'' ogolnie oznacza wewntrzny bld
logiczny.
SYGNA/LY
Innd przechwytuje sygnaly SIGTERM i SIGDANGER i wylcza si po nich. Jeli
uyta jest flaga ``-d'', przechwytywany bdzie rownie SIGINT i bdzie
dzialal analogicznie.
Innd przechwytuje sygnal SIGUSR1 i odtwarza kanal sterujcy,
wykorzystywany normalnie przez ctlinnd(8).
HISTORIA
Napisane przez Richa $alza <rsalz@uunet.uu.net> dla InterNetNews. Jest
to rewizja 1.24.2.4, z dnia 2000/08/20.
ZOBACZ TAKE
active(5), ctlinnd(8), dbz(3), history(5), incoming.conf(5),
inn.conf(5), newsfeeds(5), nnrpd(8), rnews(1), syslog(8).
INFORMACJE O T/LUMACZENIU
Powysze tlumaczenie pochodzi z nieistniejcego ju Projektu Tlumaczenia
Manuali i moe nie by aktualne. W razie zauwaenia ronic midzy powyszym
opisem a rzeczywistym zachowaniem opisywanego programu lub funkcji,
prosimy o zapoznanie si z oryginaln (angielsk) wersj strony podrcznika.
INND(8)