Documente online.
Zona de administrare documente. Fisierele tale
Am uitat parola x Creaza cont nou
 HomeExploreaza
upload
Upload




Tiparirea la imprimanta: LPRng si CUPS

linux


Tiparirea la imprimanta: LPRng si CUPS

Sistemul de operare Linux utilizeaza sisteme de tiparire (spooling systems) compatibile BSD. Implementarea folosita difera de la o distributie la alta, însa compatibilitatea cu sistemul BSD a fost mentinuta. Acest tip de sistem poate gestiona imprimante multiple, localizate pe masina locala sau pe alte masini, si cozi de sarcini (cererile de tiparire sunt stocate în cozi de asteptare, pâna când dispozitivul periferic le va putea tipari) multiple. Distributia Red Hat utilizeaza implementarea LPRng (LPR New Generatioii), iar Mandrake - implementarea CUPS(Common UNIXPrinting System} sau optional LPRng.



în principal, sistemul este alcatuit dintr-o colectie de cinci programe funda­mentale:

Ipd    daemonul de imprimare, care gestioneaza cozile de sarcini (queues) si le

trimite imprimantei

ipr adauga o sarcina (jab) de tiparire în coada de sarcini ipq listeaza sarcinile de tiparire aflate în coada de asteptare iprm sterge o sarcina din coada de sarcini Ipc interfata pentru administrarea sistemului de tiparire.

Sistemele LPRng si CUPS contin si alte programe, care vor fi prezentate în sectiunile 1.1, respectiv 1.2.

Fisierul de configurare principal utilizat de sistemele de tiparire BSD este /etc/printcap. Cele doua implementari amintite mai sus utilizeaza si alte fisiere de configurare - vezi sectiunile urmatoare.

Fisierul /etc/printcap

Acest fisier de configurare descrie imprimantele recunoscute de sistemul de tiparire. Liniile care încep cu "#" sunt considerate comentarii. Câmpurile sunt separate prin caracterul ":". Descrierea caracteristicilor unei imprimante poate contine mai multe linii, acest fapt fiind semnalizat adaugând caracterul "\" la sfârsitul liniei. Valorile tip sir de caractere sunt specificate ca atare (e.g. :st=valoare:), cele numerice încep cu "f" (e.g. :mx#loO:), iar pentru cele booleene se adauga "@" pentru valori le false (e.g. :fd@:). Primul câmp reprezinta numele imprimantei, iar restul câmpurilor - caracteristicile acesteia, dupa cum urmeaza:


Administrarea si configurarea sistemelor Linux


Nume câmp

Tip

Valoare implicita

Descriere

auth 14314k1012o

sir de caractere


Stabileste tipul autentificarii

cm

sir de caractere


Comentariu continând descrierea imprimantei

connect grace

Numeric


Intervalul de timp dintre doua sarcini pentru a oferi imprimantei posibilitatea de initializare

connect interval

Numeric


Intervalul de timp dintre conectari la imprimanta sau deschideri de port

connect timeout

Numeric


Timpul-limita pentru conectare la imprimanta sau deschidere de port

default_pr inter

sir de caractere

Ip

Imprimanta implicita

default tmp dir

sir de caractere

/tmp

Directorul pentru fisiere temporare implicit

ff

sir de caractere

\f

sirul trimis ca formfeed (salt la pagina urmatoare)

filter

sir de caractere


Filtrul implicit utilizat pentru tiparire

fo

Boolean

false

Trimite formfeed imprimantei la deschiderea portului

f f separator

Boolean

false

Trimite imprimantei formfeed pentru a separa cererile

fq

Boolean

false

Trimite formfeed imprimantei la închiderea portului

if

sir de caractere


Comanda pentru executia filtrului (un program care transforma intrarea într-o forma ce poate fi tiparita)

If

sir de caractere

log

Fisierul de jurnalizare a erorilor si a informatiilor de depanare

1P

sir de caractere


Numele dispozitivului la care se trimite iesirea (vezi infra)

Ipd bounce

Boolean

false

Filtreaza cererile si apoi le trimite

max server s active

Numeric


Numarul maxim de servere active la un moment dat

mc

Numeric


Numarul maxim de copii admise

Setari avansate ale sistemului



nuc

Numeric

Marimea maxima a cererii, exprimata în kilobytes; 0 înseamna nelimitat

Pi

Numeric

Stabileste numarul de linii per pagina

pw

Numeric

Stabileste numarul de coloane per pagina

rm

sir de caractere

Numele masinii pe care se afla coada de sarcini (daca este vorba de alta masina decât cea locala). Se utilizeaza împreuna cu rp

rp

sir de caractere

Numele imprimantei la care se trimit sarcinile (daca aceasta se afla pe alta masina decât cea locala). Se utilizeaza împreuna cu rm

td

sir de caractere

Directorul în care se afla cozile de sarcini (în general

/var/spool/lpd/nume im primarita)

send_failur«_ action

sir de caractere

remove    Actiunea efectuata atunci când transmisia esueaza, astfel: success - considera tiparirea terminata cu succes abort - renunta la tiparire retry - reîncearca tiparirea remove - sterge cererea hold - retine cererea

sand_ j ob_rw_ _timaout

Numeric

Timpul maxim (timeouf) de trimitere a datelor catre imprimanta sau masina pe care se afla coada; 0 înseamna infinit

send_try

Numeric

Numarul de reîncercari daca tiparirea sau trimiterea datelor esueaza; 0 semnifica numar infinit de reîncercari

8f

Boolean

false       Dezactiveaza trimiterea deform feed între cereri

Sh

Boolean

false       Nu tipareste headere sau bannere

Pentru lista completa a optiunilor recunoscute de /etc/printcap, a se consulta

mân printcap.

Administrarea si configurarea sistemelor Linux

Prezentam în continuare un fisier /etc/printcap:

##PRINTTOOL3## LOCAL Ijetplus 300x300 a4 LaserJetPlus Default

O

laser:\

:sh:\

:mc=0:\

:mx=0: \

: fq@: \

:sd=/var/spool/Ipd/laser:\

:lp=/dev/lpO:\

:lpd_bounce=true:\

:if=/usr/share/printconf/util/mf_wrapper: ##PRINTTOOL3## REMOTE facturi:\

:sd=/var/spool/lpd/facturi: \

:mx#0:\

:sh:\

:rm=expeditie.biosfarm.ro:\

:rp=facturi:

Dupa cum se observa, au fost definite o imprimanta locala numita laser si o imprimanta aflata pe masina expeditie.biosfarm.ro, numita facturi. Pe respectiva masina, fisierul /etc/printcap defineste imprimanta facturi ca o imprimanta locala, iar ipd este configurat astfel încât sa accepte cereri de tiparire si de pe alte masini.

Numele de dispozitive uzuale sunt:

Numele dispozitivului       Tipul dispozitivului

/dev/lpO Primul port paralel

/dev/lpl Al doilea port paralel

/dev/usb/lpO Prima imprimanta USB

/dev/usb/lpl A doua imprimanta USB

Toate directoarele continând cozile de sarcini trebuie sa apartina utilizatorului special daemon si grupului daemon, si trebuie sa aiba dreptul de acces 755.

Programul Ipr

Programul Ipr tipareste un fisier introducându-1 în coada de sarcini. Sintaxa sa este:

| Ipr [ -P imprimanta ] fisier

Tiparirea se va face pe imprimanta implicita, daca nu este utilizat parametrul -p.

Setari avansate ale sistemului

Programul Ipq

Programul Ipq listeaza toate sarcinile aflate în coada de asteptare pentru o anumita imprimanta. Sintaxa sa este:

|Ipq [ -P imprimanta ]

Daca parametrul -p nu este utilizat, va fi considerata imprimanta implicita.

l Ipq -Plaser

Printer: laserSpeak

Queue: l printable job

Server: pid 5566 active

Unspooler: pid 5567 active

Status: IF filter 'mf_wrapper' filter msg - '«/HWResolution[300 300]»setpagedevice' at

Filter_status: laser is ready and printing

Rank Owner/ID Class Job Files Size Time

l              dragos@peak+565 A 565 vm-tuning


Programul Iprm

Programul Iprm sterge o sarcina din coada de asteptare. Sintaxa este:

| Iprm [ -P imprimanta ] identificator_sarcina

unde identificatorjsarcinâ reprezinta identificatorul sau "-" daca se doreste stergerea tuturor sarcinilor din coada de asteptare.

# Iprm -Plaser 565

Printer laser@peak:

checking perms 'dragos3peak+565'

dequeued 'dragos3peak+565'

Programul Ipc

Utilitarul Ipc are o interfata tip linie de comanda si are mai multe comenzi interne:

status imprimanta      afiseaza starea cozii de sarcini pentru imprimanta

specificata abort imprimanta       opreste imediat sarcina care se tipareste si dezactiveaza

tiparirea la imprimanta specificata. Pentru a reactiva

tiparirea, se utilizeaza comanda start stop imprimanta        opreste tiparirea dupa ce se termina de tiparit sarcina

curenta. Utilizatorii pot face noi cereri de tiparire, dar


Administrarea si configurarea sistemelor Linux


start imprimanta disable imprimanta

enable imprimanta

down imprimanta up imprimanta quit

acestea nu vor fi tiparite pâna când imprimarea nu va fi

reactivata

reactiveaza tiparirea la imprimanta specificata

refuza noile cererile de tiparire. Utilizatorul root poate

adauga noi cereri. Pentru a opri o imprimanta, cea mai

buna metoda este de a apela disable si a astepta ca

sarcinile aflate în coada sa se termine de tiparit.

Reactivarea se poate face cu enable (vezi injrd)

reda utilizatorilor posibilitatea de a efectua cereri de

tiparire, dupa ce aceasta a fost retrasa cu disable

este echivalent cu disable + stop

este echivalent cu enable + start

paraseste programul Ipc.

1.1. Sistemul LPRng

Sistemul LPRng poate fi configurat în Red Hat cu ajutorul interfetei grafice printconf-gui (meniul System :: Printer Configuration în Red Hat, respectiv Configuration :: Printer Configuration în Mandrake) sau cu ajutorul interfetei mod text printconf-tui:


>   BJ-300

>   BJ-330
t> BJ-3Sv

>   BJ-5

t> BJC-1000 BJC-ZOOO


«tp !> BJC-210

>  BJC-2100

>  BJC-210SP

>  BJC-240

>  BJC-250
h n.ir.nnnn



Figura 1.1. Programul printconf-gui

Setari avansate ale sistemului


Fisierul de configurare LPRng este în general /etc/ipd.conf. Modul de specificare a valorilor optiunilor este asemanator cu cel utilizat de printcap. De asemenea, optiunile au aceleasi nume ca si câmpurile folosite de printcap. Ele se refera la valorile implicite stabilite pentru toate imprimantele configurate:

trimite form feed înainte de închiderea portului de imprimanta
fq@

permite numar nelimitat de copii
mc=0

Controlul accesului si autentificarii

Accesul la serviciul de imprimare poate fi configurat prin intermediul fisierului /etc/lpd.perms. Fiecare linie din acest fisier defineste o regula. O asemenea regula va accepta sau respinge o cerere daca regula se potriveste. Daca regula nu se potriveste, va fi verificata urmatoarea, si asa mai departe.

Regulile sunt alcatuite din mai multe elemente. Fiecare element este un cuvânt-.cheie care are atribuita una sau mai multe valori. Cuvintele-cheie recunoscute sunt urmatoarele:

DEFAULT SERVICE

C

M

P

Q

R

X

USER

REMOTEUSER HOST REMOTEHOST

REMOTEPORT

SAMEUSER

SAMEHOST

SERVER

FORWARD

GROUP

REMOTEGROUP REMOTEUSER se LPC

rezultatul implicit

tipul cererii. Poate lua una dintre valorile:

cerere de control prin intermediul Ipc

cerere de stergere din coada cu Iprm

cerere de tiparire cu Ipr

cerere de determinare a starii cu Ipq

cerere de transfer al sarcinii

cerere de conectare

numele utilizatorului

numele utilizatorului de pe masina care efectuaza cererea

numele sau adresa IP a masinii

numele sau adresa IP a masinii de pe care se efectueaza

cererea

numarul portului de pe masina de pe care se face cererea

potrivirea dintre USER si REMOTEUSER

potrivirea dintre HOST sl REMOTEHOST

cererea provine de la serverul Ipd

destinatia sarcinii nu este masina locala

USER se afla în grupul specificat în baza de date de grupuri

Ipd

afla în grupul specificat în baza de date de grupuri Ipd comanda Ipc dintr-o cerere Ipc

Administrarea si configurarea sistemelor Linux

A UTH daca se face autentificare

A UTHTYPE metoda de autentificare

NOT inverseaza potrivirea regulii

Iata un exemplu:

i accepta toate operatiunile mai putin cele nepermise DEFAULT ACCEPT

l permite utilizatorului root sa controleze sarcinile ACCEPT SERVICE=C SERVER REMOTEUSER=root

l de asemenea, permite utilizatorului dragos de pe masina hercules

sa controleze sarcinile

ACCEPT SERVICE=C REMOTEHOST=hercules REMOTEUSER=dragos

refuza orice alte cereri de control a sarcinilor de tiparire
REJECT SERVICE=C

l accepta doar cererile de tiparire ce provin din reteaua

sau de pe masina locala

REJECT SERV1CE=P NOT REMOTEHOST=10.O.O.O,127 . O . O . l

i accepta ca utilizatorul root sa stearga sarcini din coada ACCEPT SERVICE=M SERVER REMOTEUSER=root

Pentru a exporta imprimantele LPRng catre clienti Windows, a se vedea sistemul SAMBA (cap. 5).

1.2. Sistemul CUPS

Fiecare coada de tiparire are asociata câte un dispozitiv, care poate fi un port paralel, o interfata de retea etc. Numele de dispozitive sunt specificate sub forma de URI (Uniforni Resource Identifiers). De exemplu, primul port paralel este

denumit parallel: /dev/lpO.

Administrarea imprimantelor se poate face fie printr-o interfata Web, localizata la adresa https://locaihost: 631/admin (meniul Configuration :: Printing :: CUPS WWW Admin Tool m Mandrake), fie prin intermediul comenzii Ipadmin.

Setari avansate ale sistemului





Figura 1.2. Administrarea imprimantelor CUPS

Programul Ipadmin are urmatoarea sintaxa:

| Ipadmin optiuni ENTER

unde optiuni pot fi: -c clasa

-d imprimanta -m model

-r clasa

-v dispozitiv -D descriere

-E

adauga imprimanta specificata la clasa de imprimante clasa;

daca aceasta nu exista, va fi creata.

stabileste imprimanta implicita.

specifica un driver de imprimanta, în general un fisier ppd.

Lista tuturor modelelor recunoscute poate fi afisata cu

comanda Ipinfo -m.

sterge imprimanta specificata din clasa de imprimante clasa;

daca astfel clasa devine vida, va fi stearsa.

stabileste numele dispozitivului la care se face tiparirea.

stabileste o descriere a imprimantei (e.g. imprimanta lui

Dragos).

activeaza imprimanta si accepta cereri de tiparire.

Administrarea si configurarea sistemelor Linux

-L localizare       stabileste    localizarea imprimantei (e.g. Catedra de

Matematica).

-p imprimanta adauga sau modifica parametrii unei imprimante.
-Pfisier specifica un nume de fisier ppd care contine driverul de

imprimanta. -x imprimanta sterge imprimanta specificata.

De exemplu, pentru adaugarea unei imprimante HP DeskJet, conectata la primul port paralel al calculatorului, se apeleaza comanda:

| Ipadmin -p DeskJet -E -v parallel:/dev/lpO -m deskjet.ppd ENTER

Pentru pornirea si oprirea cozilor de imprimare se utilizeaza comenzile:

l enable imprimanta ENTER

disable imprimanta ENTER Pentru acceptarea sau refuzarea de cereri se utilizeaza comenzile:

I

accept imprimanta ENTER reject imprimanta ENTER

Fisierele de configurare CUPS se gasesc în directorul /etc/cups, dupa cum urmeaza:

ciasses. conf contine informatiile despre clasele de imprimante

client. conf contine numele serverului implicit

cupsd. conf        contine configurarile serverului CUPS

printers. conf contine informatiile despre imprimantele configurate.

Ne vom referi în continuare la fisierul /etc/cups/cupsd.conf. Acesta recunoaste urmatoarele directive:

AccessLog nume

Stabileste fisierul-jurnal. Poate fi utilizata si valoarea sysiog, pentru a utiliza serviciul sysiog pentru jurnalizare. Implicit: /var/log/cups/access_log.

Allow front adresa

Specifica masina sau reteaua de pe care pot fi accesate serviciile serverului. Poate fi o adresa IP, nume de masina, o adresa de forma adresa/masca_de_retea, sau AII pentru orice adresa, None pentru nici o adresa. Pot fi utilizate si caractere wildcard. De asemenea, pot fi prezente multiple

Setari avansate ale sistemului


asemenea declaratii. Se utilizeaza în cadrul unei directive Location (vezi infrd). AuthClass clasa

Stabileste nivelul de autentificare astfel (se foloseste în cadrul directivelor Location):

Anonymous: nu este necesara autentificare (implicit);

User: autentificarea se face pe baza numelui de utilizator si

parolei;

System: autentificarea se face pe baza numelui de utilizator

si parolei, iar utilizatorul trebuie sa apartina grupului sys.

Grupul poate fi schimbat prin intermediul directivei

SystemGroup;

Group: autentificarea se face pe baza numelui de utilizator

si parolei, iar utilizatorul trebuie sa apartina unui anumit

grup, specificat prin directiva AitthGroupName. AuthGroupName grup

Stabileste grupul utilizat de directiva AuthClass. AuthType tip

Defineste tipul autentificarii în cadrul directivei Location:

None: nu se realizeaza autentificare (implicit);

sistemul

Basic:     autentificarea     se face utilizând

UNIX/Linux de parole;

se face utilizând fisierul

Digest:     autentificarea

/etc/cups/passwd.md5. DadaDir director

Specifica directorul pentru fisierele de date. Implicit: /usr/share/cups. DefaultCharset set_de_caractere

una din Implicit:

Stabileste setul de caractere implicit. Poate lua

Valorile: utf-8, iso-8859-1 sau windows-1251. utf-8.

DefaultLanguage limbaj

Stabileste limba implicita. Poate luna una dintre valorile: de,

en, es, fr, it. Implicit: en. Denyfrom adresa

Specifica masina sau adresa IP pentru care vor fi refuzate

cererile. Similar cu Allowfrom. Trebuie sa apartina directivei

Location.

Stabileste modul de criptare în cadrul unei directive Location. Poate lua una dintre valorile:

Never: nu se efectueaza criptarea datelor;


Encryption tip


Administrarea si configurarea sistemelor Linux


IfRequested: efectuaza criptare numai daca este solicitata

(implicit);

Always: efectueaza criptare.

ErrorLog fisier

Stabileste fisierul-jurnal pentru erori. Poate fi utilizata si valoarea syslog, pentru a utiliza serviciul syslog pentru jurnalizare. Implicit: /var/log/cups/error_log.

FontPath lista_directoare

Specifica lista de directoare în care se afla fonturi, separate prin caracterul ":". Implicit: /usr/share/cups/fonts.

HostNameLookups tip

Activeaza/dezactiveaza verificarea numelui masinii de pe care se face conectarea (adica daca numele este real). Poate lua valoarea On sau of f. Implicit: of f.

Locatlon

Specifica optiunile de autentificare pentru o anumita resursa, astfel:

<Location /resursa> </Location>

LogLevel nivel

unde resursa este o specificatie de tip URI (descrisa la

începutul sectiunii) sau una din urmatoarele locatii

virtuale:

/admin: toate operatiunile de administrare

/classes: toate clasele de imprimante

/classes/clasa: clasa specificata

/jobs: toate sarcinile de tiparire

/jobs/id: sarcina id

/printers: toate imprimantele

/printers/imprimanta: imprimanta imprimanta.

Stabileste nivelul de jurnalizare: none: nici un mesaj;

emerg: jurnalizeaza situatiile critice care împiedica serverul sa functioneze;

alert: jurnalizeaza alertele care trebuie tratate imediat; crit: jurnalizeaza erorile critice care nu împiedica functionarea serverului; . error: jurnalizeaza erorile; warn: jurnalizeaza atentionarile; notice: jurnalizeaza situatiile de eroare temporare;

Setari avansate ale sistemului

info: jurnalizeaza toate cererile si schimbarile de stare

(implicit);

debug: jurnalizeaza informatiile de depanare de baza;

debug2: jurnalizeaza toate informatiile de depanare.

MaxClients nr_clienti

Stabileste numarul maxim de clienti simultani acceptati de server. Implicit: io.

MaxJobs nr_sarcini

Stabileste numarul maxim de sarcini ce se pot afla în coada de tiparire. Implicit este o, adica numar nelimitat de sarcini.

MaxRequestSize dimensiune

Specifica dimensiunea maxima a fisierului de tiparit. Valoarea implicita este o, adica dimensiune nelimitata.

Port port

Specifica portul pe care serverul cups va astepta cereri. Pot fi prezente mai multe directive Port. Implicit: 631.

RunAsUser

Stabileste daca serverul va rula sub un utilizator special (de obicei lp), pentru valoarea Yes, sau sub root, pentru valoarea no. Implicit este no. De remarcat ca daca serverul ruleaza sub lp, acesta trebuie sa aiba drept de acces Ia dispozitivele corespunzatoare imprimantei.

TempDir director

Stabileste directorul folosit pentru fisiere temporare. Implicit: /var/tmp.

User utilizator

Stabileste utilizatorul special sub care sunt executate filtrele. Implicit: lp.

Pentru a exporta imprimantele CUPS catre clienti Windows, a se vedea sistemul Samba (cap. 5).

Pentru a configura CUPS în vederea tiparirii pe imprimante legate la masini Windows, se lanseaza mai întâi comanda:

| In -s 'which smbspool' /usr/lib/cups/backend/smb ENTER

Pentru configurare, se folosesc urmatoarele nume de resursa:

smb: //workgroup/server/imprimanta

smb://server/imprimanta

smb://utilizator:parola@workgroup/server/imprimanta

smb://utilizator:parola@server/imprimanta



Document Info


Accesari: 1815
Apreciat: hand-up

Comenteaza documentul:

Nu esti inregistrat
Trebuie sa fii utilizator inregistrat pentru a putea comenta


Creaza cont nou

A fost util?

Daca documentul a fost util si crezi ca merita
sa adaugi un link catre el la tine in site


in pagina web a site-ului tau.




eCoduri.com - coduri postale, contabile, CAEN sau bancare

Politica de confidentialitate | Termenii si conditii de utilizare




Copyright © Contact (SCRIGROUP Int. 2024 )