CUPS seadistamine

From ICO wiki
Jump to navigationJump to search

Viimase muutmise aeg

12. Detsember 2011 22:22

Versioonid

Versioon 0.1 - artikkel pooleli

Versioon 1 - artikkel valmis

Versioon 1.1 - retsensioonis viidatud vigade parandus

Sissejuhatus

CUPS (Common Unix Printing System) on modulaarne printimise süsteem Unixi laadsetel operatsioonisüsteemidel, mis lubab arvutitele olla printimisserveri rollis. Arvuti, kus on toimiv CUPS võib toimida kui server, mis aksepteerib printimis töid kliendi poolt, töötleb neid ja saadab need sobivale printerile. CUPS kasutab Internet Printing Protocol (IPP) põhja, et hallata printimistöid ja nende järjekordi. CUPS-il on mitmeid kasutajaliideseid erinevatele platvormidele, mis võimaldavad CUPS-i konfigureerida.

Selles artiklis räägime CUPS-PDF printeri seadistamisest ja kasutamisest, mis eeldab käsurea tundmist. Artikli kirjutamisel on kasutatud Ubnutu Server 11.04 versiooni ja Ubuntu Desktop 11.10 versiooni.

CUPS paidaldamine serverile

Alustuseks logida juurkasutaja õigustesse:

sudo -i

Järgnevalt on soovitatav uuendada tarkvara varamut:

apt-get update

Kliendi arvutitel on juba vaikimisi paigaldatud CUPS. Ubuntu serverile paigaldada CUPS järgneva käsuga:

apt-get install cups


Paigaldame CUPS-ile PDF printeri

apt-get install cups-pdf

cups-pdf printerit võrgus kasutamiseks, tuleb /etc/cups/printers.conf failis Shared No muuta Shared Yes

Näide printers.conf failist:

# Printer configuration file for CUPS v1.5.0
# Written by cupsd
# DO NOT EDIT THIS FILE WHEN CUPSD IS RUNNING
<DefaultPrinter PDF>
UUID urn:uuid:13f82f65-9cf8-332a-6342-4729f83935cd
Info PDF
Location
MakeModel Generic CUPS-PDF Printer
DeviceURI cups-pdf:/
State Idle
StateTime 1323257048
Type 8450124
Accepting Yes
Shared Yes
JobSheets none none
QuotaPeriod 0
PageLimit 0
KLimit 0
OpPolicy default
ErrorPolicy retry-job
</Printer>

Tegelikult on võimalik seadistusi muuta ka veebipõhisest kasutajaliidesest.

Sellega on lõppenud CUPS-i paigaldus serverisse.

CUPS konfigureerimine serveris

Ennem, kui konfigureerimis toiminguid alustatakse on alati soovitatav teha cupsd.conf failist backup. Backup tagab võimaluse, et saaksime taastada algseisu confi failist.

cp /etc/cups/cupsd.conf /etc/cups/cupsd.conf.backup

CUPS-iga seotud konfiguratsiooni failid asuvad /etc/cups kataloogis. Printeri lisamiseks avada printeri confi faili:

nano /etc/cups/cupsd.conf

Printeri lisamiseks peame /etc/cups/cupsd.conf faili lisama server ip addressi ja broadcasti. Konfiguratsiooni faili algusesse lisada järgmised read:

ServerName <CUPS serveri ip aadress>
BrowseAddress <võrgu broadcasti aadress>

Selleks, et lubada ligipääsu läbi veebiliidese tuleb /etc/cups/cupsd.conf failist välja otsida järgnevad read:

Esimesel juhul saab lubada kasutajaid kasutajaliidesesse, kuid klient ei saa lisada/muuta printereid.

# Restrict access to the server...
<Location />
Order Deny,Allow
Deny From All
</Location>

Lubades kasutaja adminni õigustesse, saab kasutaja teha erinevaid haldustöid printeritega.

# Restrict access to the admin pages...
<Location />
Order Deny,Allow
Deny From All
</Location>

Ligipääsu lubamise võimalusi:

  • Allow From 127.0.0.1 - lubab konfigureerimist lokaalsest masinast
  • Allow From 192.168.6 - lubab konfigureerimist kindlalt ip-lt
  • Allow From 192.168.1.*- lubab konfigureerimist igast masinast, mis on 192.168.1.0/24 alamvõrgust(subnet)
  • Allow From nimi.domeen- teisest domeenist lubamine
  • Deny From All - keelab ligipääsu kõigile
  • Allow From All - lubab ligipääsu kõigile

Näide: Lubame ip-le 192.168.6.125 ligipääsu haldustööks.

# Restrict access to the admin pages...
<Location />
Order Deny,Allow
Allow From 192.168.6.125
Deny From All
</Location>

Lubame teisi ühendusi peale lokaalse masina

Listen localhost:631 tuleb muuta 
Listen server_ip:631

Pärast konfiguratsiooni failide muutmist on alati soovitatav teha teenusele restart:

service cups restart


Veebipõhine kasutajaliides

Kõigil platvormidel on CUPS-il veebipõhine administreerimise liides, mis töötab läbi port 631. Eriti aitab see organisatsioone, et monitoorida printimistöid ja hallata printereid kaughalduse teel. Läbi kasutajaliidese on lihtne lisada,kustutada ja seadistada printereid. Liides võimaldab muuta konfiguratsiooni faili ja näha erinevaid logi faile.

Printeri lisamine kliendi arvutisse Ubuntus

PDF printeri seadistamine on kliendi arvutis lihtne, selleks tuleb /etc/cups/client.conf (kui client.conf faili ei ole siis tuleb see luua) faili kirjutada:

ServerName <serveri ip aadress>

Restartida CUPS

Service cups restart

Pärast seda peaks PDF printer näha olema käsurealt käsuga:

lpstat -p

Menüüst valida System Settings ja sealt Printing või otsingusse kirjutada Printing, siis peaks olema näha PDF printer.

Printeri lisamine kliendi arvutisse Windows 7 masinas

Printeri lisamine Windowsi masinas on lihtne, selleks avada control panel seejärel valida Devices and Printers.

Printeri lisamisel valida: Add a network, wireless or Bluetooth printer, juhul kui printerit ei leita tuleb see ise manuaalselt sisestada klikkides The printer that want isn’t listed.

Valides shared printer tuleb kirjutada: http://print_serveri_ip:631/printers/printeri_nimi


Järgmisena tuleb valida printeri tootja ja mudel. CUPS-PDF puhul valida Generic. Kui kõik valmis siis printida test page (test leht) ja lõpetada uue printeri paigaldus.

Ubuntu serveris on kõik prinditud failid vaikimisi kataloogis: /var/spool/cups-pdf/ANONYMUS

Kasulikud käsud

lpr

Kasutame printimiseks vaikimise printerit:

lpr failinimi

Kasutame printimiseks mingit kindlat printerit:

lpr -P printer failinimi

Prindime 4 koopiat failist:

lpr -P printer -#4 failinimi

lpstat

Näitab kogu informatsiooni:

lpstat -t

Näitab vaike printerit:

lpstat -d

Näitab kõiki printereid:

lpstat -p

Näitab kõiki printereid, mis võtavad vastu printimistöid:

lpstat -a

Näitab kõiki järjekorras olevaid printimistöid:

lpstat -o

Tööde tühistamine

Printimistöö tühistamine:

cancel <id> printer

Mitme töö tühistamine

for i in $(seq id id);do cancel $1 <printerinimi>;done

Näide: Käsk kustutab printimistööd 10 kuni 100

for i in $(seq 10 100);do cancel $1 PDF;done

Piirangute seadmine

Cups logib igat prinditud lehekülge, seda saab vaadata nii läbi veebiliidese kui ka käsuga:

nano /var/log/cups/page_log

job-k-limit - abil saab piirata prinditava faili kogumahtu kilobaitides.

job-page-limit - abil saab määrata prinditavate lehekülgede arvu.

job-quota-period - abil saab määrata piirangute ajalise kestvuse, cupsil määratakse piirang alati sekundites.

Piirangud kirjutatakse faili /etc/cups/printers.conf ning neid saab näha käsuga:

nano /etc/cups/printers.conf


Lubame neli lehekülge printida kasutajatel Mari ja Maali printeris PDF.

lpadmin -p PDF -o job-page-limit=4 -u allow:Mari, Maali

Seame failide mahu limiidiks 1024 kilobaiti igale kasutajale printeris "PDF" ühe nädala jooksul:

lpadmin -p PDF -o job-quota-period=604800 -o job-k-limit=1024 

Seame lehekülgede piiranguks 100 printeris PDF ühe nädala jooksul:

lpadmin -p PDF -o job-quota-period=604800 -o job-page-limit=100 

Seame mahupiiranguks 1024 kilobaiti ja 100 lehekülge, ajalimiidiks üks nädal printeril PDF. Rakendatakse esimest limiidi täitumist:

lpadmin -p PDF -o job-quota-period=604800 -o job-k-limit=1024 -o job-page-limit=100 

Kuna CUPS toetab ainult algelist võimalust piirangute seadmiseks, on loodud ka CUPS-iga ühilduv tarkvara PyKota. PyKota võimaldab seada erinevaid piiranguid detailsemalt. PyaKota-ga saab täpsemalt tutvuda järgnevalt lingilt: http://www.pykota.com/

Draiverite jagamine Windowsi masinale

Printerite draiverite jagamiseks tuleb sambaga jagada kataloog. Kõik printerite draiverid saab panna ühtsesse kataloogi ja need välja jagada.

[print]
   comment = Printer Drivers
   path = /var/lib/samba/printers
   browseable = yes
   read only = yes
   guest ok = yes

Windowsi masinatest pääseb sambaga jagatud kaustale ligi avades start -> run -> \\serveri_ip\print

Kasutatud kirjandus

http://www.samba.org/samba/docs/man/Samba-HOWTO-Collection/CUPS-printing.html

http://en.wikipedia.org/wiki/CUPS

http://www.g-loaded.eu/2005/11/10/using-a-cups-printer-from-command-line/

Autorid

Kristjan Väljako A31

Ivar Ambos A32