RPOST(1)

NUME
rpost - publică un articol pe un server de știri NNTP

SINOPSIS
rpost [ nume-gazdă ] [ @nume-fișier ] [ -s | -S nume-fișier ] [ -e | -E nume-fișier ] [ -b fișier-loturi ] [ -r fișier-rnews ruta-rnews ] [ -p prefix ] [ -Q ] [ -d ] [ -U id-utilizator ] [ -P parolă ] [ -M ] [ -N număr-port ] [ -l fișier-frază ] [ -D ] [ -T timp-așteptare ] [ -u ] [ -n ]

[ -F fișier-perl ] [ -i ] [ -z ] [ -f filtru $$o=<fișier-ieșire> arg-filtru1 ... ]

DESCRIERE
rpost va publica unul sau mai multe articole, specificate de către nume-gazdă. Dacă numele de gazdă nu este specificat, «rpost» va folosi variabila de mediu NNTPSERVER. Numele de gazdă poate include opțional numărul de port, sub forma Gazdă:Port. Dacă se folosește această formă, orice număr de port specificat prin opțiunea „-N” va fi ignorat.

Opțiuni generice

@nume-fișier

Această opțiune îi indică lui «rpost» să citească și alte opțiuni dintr-un fișier, în plus față de linia de comandă.

-D Această opțiune îi indică lui «rpost» să înregistreze diverse mesaje de depanare în „debug.suck”, în primul rând pentru a fi utilizate de către dezvoltator.

-e|-E nume-fișier

Aceste opțiuni vor trimite toate mesajele de eroare (afișate în mod normal la ieșirea de eroare standard) către un fișier alternativ. Versiunea în minusculă a opțiunii, „-e”, va trimite mesajele de eroare la fișierul implicit compilat definit în suck_config.h. Valoarea implicită este suck.errlog. Versiunea în majusculă a opțiunii, „-E”, necesită parametrul „nume-fișier. Toate mesajele de eroare vor fi trimise în acest fișier.

-i

Această opțiune îi indică lui «rpost» să ignore 201 (mesajul „no posting allowed”, nu este permisă nicio publicare) din mesajul de bun venit și să încerce să publice oricum. Unele servere de știri (inn-2.3.1) trimit „201 no posting allowed” atunci când sunt folosite comenzile AUTHINFO pentru a verifica permisiunea de a publica.

-l fișier-frază

Această opțiune îi indică lui «rpost» să încarce un fișier de fraze alternativ, în loc să utilizeze mesajele încorporate. Acest lucru vă permite ca «rpost» să afișeze fraze în altă limbă sau să vă permită să personalizați mesajele fără a le reconstrui. Pentru mai multe detalii, consultați „FRAZE ÎN LIMBĂ STRĂINĂ” de la «suck.1».

-M

Această opțiune îi indică lui «rpost» să trimită comanda „mode reader” (modul cititor) către serverul de la distanță. Dacă primiți un mesaj de comandă nevalid de la «rpost» imediat după anunțul de bun venit, încercați această opțiune.

-n

Această opțiune îi indică lui «rpost» să afișeze numele fișierului pe măsură ce acesta este încărcat.

-N număr-port

Această opțiune îi indică lui «rpost» să utilizeze un alt număr de port NNRP atunci când se conectează la gazdă, în loc de numărul de port implicit, 119.

-s|-S nume-fișier

Aceste opțiuni vor trimite toate mesajele de stare (afișate în mod normal la ieșirea standard) către un fișier alternativ. Versiunea în minusculă a opțiunii, „-s”, va trimite mesajele de stare la fișierul implicit compilat definit în suck_config.h. Valoarea implicită este „/dev/null”, deci nu va fi afișat niciun mesaj de stare. Versiunea în majusculă a opțiunii, „-S”, necesită parametrul „nume-fișier”. Toate mesajele de stare vor fi trimise în acest fișier.

-T Această opțiune înlocuiește valoarea TIMEOUT compilată. Aceasta este durata în care «rpost» așteaptă datele de la gazda la distanță înainte de a se opri și de a abandona.

-u Această opțiune îi indică lui «rpost» să trimită comanda AUTHINFO USER imediat ce se conectează la serverul la distanță, în loc să aștepte o cerere de autorizare. Trebuie să furnizați opțiunile „-U” și „-P” atunci când utilizați această opțiune.

-U id-utilizator -P parolă

Aceste două opțiuni vă permit să specificați un „userid” (identificator de utilizator) și o parolă, în cazul în care serverul NNTP le solicită.

-Q

Această opțiune vă permite să specificați numele de utilizator și parola prin intermediul variabilelor de mediu „NNTP_USER” și „NNTP_PASS”, în loc să le specificați în linia de comandă. Acest lucru previne o potențială problemă de securitate în cazul în care cineva care execută o comandă «ps» ar putea vedea numele de utilizator și parola dumneavoastră.

-z Această opțiune îi indică lui «rpost» să utilizeze SSL pentru a comunica cu gazdele la distanță, dacă SSL a fost compilat în «rpost».

MODUL STDIN
rpost

rpost nume-gazdă

«rpost» citește un articol de la intrarea standard și îl trimite la serverul NNTP. Articolul trebuie să aibă un antet de cel puțin două rânduri, și anume „Newsgroups:” și „Subject:” și un corp (articolul). Antetul și corpul trebuie să fie separate de o linie nouă. «rpost» nu modifică articolul în niciun fel.

«rpost» utilizează comanda POST pentru a publica articolul dumneavoastră, la fel ca orice cititor de știri standard. Acest lucru este util atunci când se utilizează SLIP și PPP, deoarece majoritatea furnizorilor nu permit nicio altă metodă de a posta articole (cum ar fi nntpsend sau innxmit).

MODUL BATCH

rpost nume-gazdă -b fișier-loturi -p prefix -d

Acest mod de lucru pe loturi vă permite să îi dați lui «rpost» o listă de articole și să le publicați pe toate.

-b fișier-loturi

O listă a articolelor care urmează să fie publicate. Acest parametru este OBLIGATORIU. Acest fișier conține câte un articol pe linie, iar linia este ruta de acces la fișierul care conține articolul respectiv. De exemplu:

    -b /usr/spool/news/out.going/pixi

DACĂ există probleme la încărcarea unui anumit articol, se va crea un fișier „eșuat”. Acesta se va numi „batchfile”.fail și va conține linia din acest fișier-loturi pentru articolele care nu au fost încărcate cu succes. Acest fișier poate fi utilizat pentru a rula din nou mesajele eșuate prin «rpost». NOTĂ: articolele duplicate NU sunt considerate o eroare pentru fișierul fail.

-d

În cazul în care încărcarea articolelor are succes, această opțiune va determina «rpost» să șteargă fișierul-loturi numit în opțiunea „-b”.

-p prefix

În cazul în care fișierul-loturi nu conține o rută completă, ci mai degrabă o rută parțială, trebuie specificat acest parametru. Acest lucru este util atunci când fișierul-loturi este generat de un alt program. De exemplu, Inn listează ruta în fișierul „out.going” în raport cu directorul său de bază „/usr/spool/news”. În acest caz, este suficient să folosiți:

     -p /usr/spool/news

MODUL RNEWS
rpost nume-gazdă -r fișier-rnews rută-rnews

Această opțiune vă permite să utilizați fișierele generate de «rnews» pentru a publica. Aceasta necesită doi parametri.

fișier-rnews - acesta este numele de bază pentru fișierele rnews. Dacă fișierele rnews se numesc lot1, lot2, etc., atunci acest argument va fi „lot”.

rutărnews - aceasta este ruta către locația fișierelor rnews.
    -r batch /usr/tmp/rnews

-d

Dacă încărcarea tuturor articolelor din oricare dintre fișierele rnews are succes, atunci această opțiune va determina «rpost» să șteargă fișierul rnews respectiv.

MODURI DE FILTRARE
-f filtru $$o=<fișier-ieșire> arg-filtru1 arg-filtru2 ...

În multe cazuri, fiecare articol trebuie prelucrat înainte ca NNTP-ul de la distanță să îl accepte. Această opțiune, precum și opțiunea de filtru perl încorporat de mai jos, vă permite să faceți acest lucru. Aceste filtre nu funcționează în modul „STDIN”, ci în modurile „BATCH” și „RNEWS” de mai sus. Rețineți că opțiunea „-f” .... trebuie să fie ULTIMA opțiune, deoarece tot ceea ce urmează după ea este transmis filtrului, cu excepția celor menționate mai jos. Există trei parametri necesari cu aceasta:

$$o=<fișier-ieșire> - <fișier-ieșire> este numele fișierului produs de filtrul dumneavoastră care va fi încărcat pe serverul NNTP de la distanță. Acesta NU este transmis programului de filtrare. Acesta poate fi specificat oriunde în linia de comandă DUPĂ argumentul „-f filtru”, fie înainte de numele filtrului, fie după el.

filtru - numele programului care trebuie apelat. Tot ceea ce urmează după filtru, CU EXCEPȚIA $$o, sunt argumente transmise filtrului.

arg1 - Primul argument al programului/scriptului de filtrare. Cel mai probabil va fi $$i, pe care «rpost» îl completează cu numele articolului care trebuie curățat.

arg2 ... - pot fi specificate orice alte argumente suplimentare necesare.

Să clarificăm puțin acest lucru cu un exemplu. Unele servere NNTP nu acceptă să primească articole cu NNTP-Posting-Host completat. Creați un scurt script shell pentru a șterge acest lucru dintr-un fișier:

-myscr--------------------------------------------

#!/bin/sh

sed -e "/^NNTP-Posting-Host/d" $1 > $2

-end myscr----------------------------------------

Apoi apelați «rpost» în felul următor:
    rpost localhost -b /usr/spool/news/out.going/pixi -f myscr \$\$o=/tmp/FILTERED_MSG \$\$i /tmp/FILTERED_MSG

Apoi, înainte ca fiecare articol să fie încărcat, myscr este apelat astfel:
    myscr nume-fișier-intrare /tmp/FILTERED_MSG

După ce «myscr» a terminat, «rpost» încarcă articolul curățat, stocat în „/tmp/FILTERED_MSG”, pe serverul NNTP la distanță.

NOTĂ:
$$o și $$i trebuie să fie eludate, folosind fie bare oblice inverse, ca mai sus, fie cu ghilimele simple, pentru a împiedica shell-ul să încerce să le interpreteze ca variabile. Dacă nu le eludați, «rpost» nu va funcționa!

-F filtru-perl

Această opțiune vă permite să utilizați un filtru perl încorporat pentru a filtra articolele. Pentru a utiliza această opțiune, trebuie să editați fișierul Makefile și să definiți diferitele opțiuni PERL_. Are câteva avantaje față de opțiunea „-f” de mai sus. Deoarece este un perl încorporat, nu se fac fork() și execls(), deci ar trebui să fie mai rapid. De asemenea, nu trebuie să vă faceți griji cu privire la argumentele programului și la eludarea $$, etc., ca mai sus.

La pornire, «rpost» va încărca fișierul filtru-perl desemnat și îl va analiza pentru erori de sintaxă. Apoi, pentru fiecare articol care urmează să fie încărcat, «rpost» va apela subrutina „perl_rpost”, conținută în fișierul filtru-perl. A se vedea „sample/put.news.pl” pentru un exemplu complet de lucru. Există trei puncte cheie de care trebuie să țineți cont atunci când vă creați filtrul.

    1. Fișierul filtru-perl trebuie să conțină linia „package Embed::Persistant;”, astfel încât variabilele din fișierul filtru-perl să nu intre în conflict cu variabilele «rpost», iar subrutina trebuie să se numească „perl_rpost”. Acest lucru poate fi modificat prin editarea definiției PERL_RPOST_SUB din suck_config.h.

    2. Subrutina „perl_rpost” primește numele fișierului de intrare ca unic argument și trebuie să returneze ruta completă către locația articolului filtrat sub forma unui singur șir scalar (returnează $outfile).

    3. Subrutina trebuie să închidă în mod explicit fișierul de ieșire (care conține argumentul filtrat) înainte de a returna. Acest lucru se datorează faptului că «perl» va face o închidere automată doar la terminarea programului (în cazul nostru, când «rpost» iese) sau când gestionarul de fișier este reutilizat (la următoarea apelare a subprogramului). Dacă închiderea nu se face, atunci, mai mult ca sigur, va exista un fișier de 0 octeți atunci când «rpost» va încerca să publice articolul și vor apărea erori.

AVERTISMENT:

Fiți foarte atenți la ceea ce programul de filtrare șterge din articol. Ștergerea unui rând greșit poate avea efecte negative mai târziu. De exemplu, nu ștergeți linia „MSG-ID”, deoarece acest lucru ar putea face ca un singur mesaj să fie publicat de mai multe ori, în funcție de configurația atât a serverului de știri local, cât și a celui de la distanță.

FIȘIER DE ARGUMENTE RPOST

Dacă specificați @nume-fișier în linia de comandă, «rpost» va citi din nume-fișier și îl va analiza pentru a găsi orice argumente pe care doriți să le transmiteți lui «rpost». În acest fișier se specifică aceleași argumente ca și în linia de comandă. Argumentele pot fi pe o singură linie sau pot fi repartizate pe mai multe linii. De asemenea, puteți utiliza comentarii. Comentariile încep cu „#” și merg până la sfârșitul unei linii. Toate argumentele din linia de comandă prevalează asupra argumentelor din fișier. Un avantaj al utilizării fișierului în loc de linia de comandă este că nu trebuie să eludați caracterele speciale, cum ar fi $.

    # Exemplu de fișier de argumente
    -b batch # opțiunea „fișier loturi”
    -M    # opțiunea „utilizarea modului de cititor”

VALORI DE IEȘIRE
«rpost»returnează următoarele valori de ieșire:

    0 = succes
    1 = eroare la publicarea unui articol
    2 = nu se poate face autorizația NNTP cu serverul de la distanță
    3 = răspuns neașteptat la comandă atunci când se efectua autorizarea NNTP
    -1 = alte erori fatale

CONSULTAȚI ȘI
suck(1), testhost(1), lpost(1).

TRADUCERE
Traducerea în limba română a acestui manual a fost făcută de Remus-Gabriel Chelu <remusgabriel.chelu@disroot.org>

Această traducere este documentație gratuită; citiți Licența publică generală GNU Versiunea 3 (https://www.gnu.org/licenses/gpl-3.0.html) sau o versiune ulterioară cu privire la condiții privind drepturile de autor. NU se asumă NICIO RESPONSABILITATE.

Dacă găsiți erori în traducerea acestui manual, vă rugăm să trimiteți un e-mail la translation-team-ro@lists.sourceforge.net.