Artikel arkivet's artikelkategori: Konfiguration
Skriven av pomp 2004-04-26 15:57 url: http://www.cups.org

Nätverksprinter med CUPS

Att installera en printer och få den till att fungera korrekt kan vara knepigt .
Det finns en del olika varianter av printersystem för Linux.
Jag tänkte i denna artikel gå igenom lite hur man installerar CUPS (Common Unix Printing System) och lägger till en printer som nätverksprinter.

På datorn som du tänkte ha printerservern.
1. Ladda ner senaste versionen av CUPS från slackware-current och installera det.
2. Starta CUPS demonen med cupsd.
3. Kör http://localhost:631 från din webbläsare t.ex lynx
4. Välj "Manage Printer" och lägg till din skrivare.
(Om din printer inte finns med så är http://www.linuxprinting.org en utmärkt källa att hämta hem drivrutiner på till just din skrivare, här kan du även läsa resencioner om printern och kolla hur pass bra stöd den har under linux. Med drivrutinen så följer det oftast också med hjälp om hur man installerar denna vilket jag inte kommer att ta upp här. Gör sedan om steg 3 och 4 igen.)
5. Välj "Configure Printer" och ställ in vilken kvalitet, papperstyp m.m som du vill ha.
6. Printern är nu klar att användas, testa den genom att printa en "Test-page" från webb-setupen.
7. I Webb-setupen så kan man även se printerkön, och avbryta jobben.
(För att se printerkön från console skriv lpstat. För att ta bort ett jobb skriv cancel och job-id.)
8. För att sedan göra skrivaren tillgänglig i nätverket editera filen /etc/cups/cups.conf och lägg till/ändra följande i Location:
"Allow from 127.0.0.1" Ska ändras till ditt nätet som ska få tillgång till printern t.ex ett klass C-nät 192.168.0
Leta upp raden BrowseAddress och sätt den till din broadcast, t.ex 192.168.0.255
9. Starta om CUPS,
10.När du har startat om CUPS så kommer din printer att var 30sek (default) skrika ut "Hej hej här är jag" på broadcast adressen, dvs alla maskiner på det nätet. (Tiden kan ändras i cups.conf)
11.För att sedan kunna printa via nätverket så behöver man endast installera cups paketet på klient datorn också.
(CUPS fungerar som både server och klient )
12.Starta cupsd och anslut sedan likadant till webb-setupen på klienten (lynx http://localhost:631) och välj manage printer.
13.Om nu printerservern är konfigurerad och fungerar korrekt så ska nu cups ha identifierat din nätverks-skrivare automatiskt (om inte vänta några sekunder så den hinner uppdatera sig).
14.Nu kan du testa att skriva ut ett "Test-page" eller testa från console med lpr -P printernamn@domain fil

15.Om du vill kunna skriva ut på nätverksprintern från Windows så behöver du antingen configurera samba på servern eller så kan du installera ett protokoll som heter IPP på windowsmaskinen och sen lägga till printern som en vanlig nätverks skrivare och ange http://ip-till-printerserver:631/printers/printer-namn)

För att göra det hela ännu lite roligare så stödjer CUPS också printer-based quotas. Man kan inte sätta en quota på en speciell användare utan sätter man en quota så gäller den alla användare, men alla användare loggas separat så man har varsin quota.
Quotas kan sättas på antingen antalet sidor, t.ex. 10 sidor/dag med färgpatronen:
# lpadmin -p expensive_plotter -o job-quota-period=604800 -o job-page-limit=10
eller så kan man t.ex. sätta på hur många kb man får printa /dag med färgpatronen:
# lpadmin -p expensive_plotter -o job-quota-period=604800 -o job-k-limit=1048576

Loggar sparas i /var/log/cups och uppdateras hela tiden med alla printerjob och sparar tid, datum och användare; fel; varje sida och skrivaren som jobbet skickades till.

En liten sammanfattning på nyttiga kommandon från console:
$ lpstat -t (visar om CUPS demonen är igång eller inte)
$ lpinfo -v (Visar alla "supported devices)
$ lpadmin -d [printer-name] (Sätter en printer till default printer)
$ lpstat -p -d (Visar alla installerade printers)
$ lp -d [printer-name] [filename] (Väljer vilken printer som ska användas vid utskriften)
$ lpstat -o -p (Visar pågående printer-jobb samt deras id)
$ cancel [job-id] (Avbryter ett printer-jobb)
# /usr/lsbin/lpadmin -p name -L location -E -v parallel:/dev/lp0 -m printerdrv.ppd (Installerar en printer via kommando-raden ifall en webbläsare trots allt inte skulle vara tillgänglig).

Lite nyttiga länkar också:
http://www.linuxprinting.org Bra manualer, info om de flesta kända skrivare, drivrutiner m.m
http://www.cups.org CUPS offeciella hemsida.

Denna artikel tar långt ifrån upp allt och är säkerligen inte det smidigaste sättet att installera en printer på, men det har fungerat problemfritt för mig.
Hoppas att detta hjälper någon med att installera en skrivar-sevrer för hemma-nätverket =)

May CUPS be with you!

//Roger
pomp