De Linux Print2Win mini-HOWTO

v1.1

Jul 2002

Wijzigingen
Herziening 1.119-07-2002Herzien door: ms
Herziening 1.001-01-2002Herzien door: ms

In deze howto wordt een algemene configuratie gegeven om Linux te laten afdrukken naar een Windows printshare.


Inhoudsopgave
Introductie
Server (Windows)
Client (Linux)
/etc/printcap Tips
Licentie
Krediet

Introductie

Aangezien we een werkende afdrukservice willen, zullen we de omgeving stap voor stap gaan instellen, om vergissingen en slechte configuraties te voorkomen.

Laten we als eerste de server instellen; wanneer je de server eenmaal draaiend heb, configureer je de clients.


Server (Windows)

Er zijn geen speciale regels voor het configureren van de server. Installeer gewoon de printerdriver op de Windows server, test het ter verificatie dat de printer juist werkt en stel de printer in dat het toegankelijk is voor de gebruikers.


Client (Linux)

De client configuratie is vergelijkbaar met van Linux naar Linux afdrukken.


Standaard lpr

De makkelijkste manier bestaat uit het toevoegen van een record aan /etc/printcap. Het record voor een algemene matrix printer wordt:
# EPSON LX300 
epson:\
:sd=/var/spool/lpd/epson:\
:mx#0:\
:sh:\
:if=/var/spool/lpd/epson/filter:\
:lp=/dev/null:

Opmerking

Zorg dat je de juiste filter gebruikt, of de juiste algemene filter.

Zorg dat je de directory /var/spool/lpd/epson hebt aangemaakt, en dat de gebruikers die de printer willen gebruiken er de juiste toegangsrechten voor hebben.

Stel bijvoorbeeld dat de Windows afdrukserver de naam meriadoc heeft, met het IP-adres 192.168.1.49, en de printer vanuit Windows wordt gedeeld als epsonLX.

Dan moet je /var/spool/lpd/epson/.config als volgt configureren:
share='\\meriadoc\epsonLX'
hostip=192.168.1.49

Waarbij:

  • share='\\windows-print-server-name\print-share-name'

  • hostip=windows-print-server-IP

Zodra /etc/printcap is geconfigureerd, dan moet je de afdrukshare activeren:
[localhost]$ lpc up epson
[localhost]$ lpc enable epson

Als alles in orde is, dan kun je afdrukken naar de wachtrij sturen:
[localhost]$ lpr -Pepson file


/etc/printcap Tips

Ik heb in het eerste voorbeeld het onderstaande record gebruikt, maar dat is niet bepaald een goed idee:
...
:lp=/dev/null:\

Omdat lpr een "exclusieve" open uitvoert op het bestand dat je specificeert als lp=. Het doet dit ter voorkoming dat meerdere processen proberen tegelijkertijd naar dezelfde printer af te drukken.

Het neveneffect hiervan in jouw geval is dat eng en colour niet tegelijkertijd af kunnen drukken (gewoonlijk min of meer transparant aangezien ze waarschijnlijk snel afdrukken en aangezien ze de taken in de wachtrij plaatsen het je waarschijnlijk niet opvalt), maar andere processen die proberen naar /dev/null proberen te schrijven zullen worden verbroken!

Op een single user systeem, is dit waarschijnlijk niet zo'n groot probleem. Ik heb een systeem met meer dan 50 printers. Daarop zou het wel een probleem zijn.

De oplossing bestaat eruit voor elk een dummy printer te creëren. Bv: touch /dev/eng.

[localhost]$ touch /dev/eng
[localhost]$ touch /dev/colour


Licentie

Dit document, de Print2Win-HOWTO, is auteursrechtelijk beschermd (c) 2001-2002 door Marcelo Pereira da Silva. Het is toegestaan dit document onder de voorwaarden van de GNU Free Documentation License, versie 1.1 of enige latere versie gepubliceerd door de Free Software Foundation te kopiëren, distribueren en/of aan te passen; zonder Invariant Secties, zonder Front-Cover teksten, en zonder back-cover teksten. Een kopie van de licentie is beschikbaar op http://www.gnu.org/copyleft/fdl.html.


Krediet

Met dank aan allen die hun meningen over dit document inzonden, aan iedereen die me wat afdruktips gaf, aan Rick Bressler en speciale dank aan Harish Pillay, die de eerste versie van dit document schreef.