PDF printer service onder FreeBSD

Dit document beschrijft hoe je onder FreeBSD voor het Windows netwerk (Samba) een PDF printer kan installeren.

PDF Printer
Geschreven door M.Mastenbroek November 2003 / Document versie 1.1 (Updated 13 December 2003)

Inhoud:

Voorwoord

PDF documenten vormen een uitstekende basis voor het verspreiden van documenten over het internet. In tegenstelling tot b.v. een Word documenten waarborgt een PDF document (door zijn structuur) een eenduidige lay-out ongeacht het platform of de applicatie waarmee het wordt bekeken. Daarnaast hoeft de gebruiker ook geen licentie aan te schaffen om het PDF document te kunnen bekijken. Versleuteling van het document is ook mogelijk waardoor de gebruiker enkel het document kan openen maar niet in staat is de inhoud te kopiëren. Hiervoor is echter voor de maker van het document een licentie van Adobe nodig.

Een PDF printer genereert in tegen stelling tot een ‘gewone’ printer geen afdruk op papier maar maakt een PDF document. Vanuit ieder applicatie onder Windows kan naar de PDF printer een printopdracht worden verstuurd. Dit heeft als grote voordeel dat bij de conversie van het origineel naar het PDF document geen kennis over het originele bestandsformaat nodig is. Ongeacht vanuit welke applicatie er wordt geprint b.v. Word, Excel of Internet Explorer en ongeacht welke versie kan het PDF document worden gegenereerd. Nadat vanuit Windows de PDF netwerk printer is geinstalleerd is het hierna direct mogelijk om PDF documenten te maken.

In dit document wordt uitgelegd hoe je een PDF printer onder FreeBSD installeert en deze deelt in het Windows netwerk. Daarbij wordt ook uitgelegd hoe vervolgens deze printer moet worden geïnstalleerd onder Windows.

Benodigdheden

  • FreeBSD 4.x of hoger
  • Windows 95 of hoger
  • Basis kennis van Unix en een root shell
  • Basis kennis van Windows
  • Stap 1 Installatie van GNU Postscript interpreter & Samba

    Is er momenteel nog geen 'GNU Postscript interpreter' geïnstalleerd op het systeem dan kan dat als volgt gedaan worden.

    Shell:
    cd /usr/ports/print/ghostscript-gnu-nox11
    make install clean

    Het is mogelijk dat tijdens de installatie procedure een invulscherm wordt getoond waarbij een aantal opties kunnen worden geselecteerd. Naar eigen inzicht kunnen hier extra opties aangegeven worden, de standaard opties zijn echter voldoende voor het verdere verloop van deze installatie procedure.

    Is er momenteel nog geen 'Samba server' geïnstalleerd op je systeem dan kan dat als volgt gedaan worden.

    Shell:
    /usr/ports/net/samba
    make install clean

    Vervolgens wordt gevraagd welke extra opties er aan de 'Samba server' moeten worden toegevoegd. Naar eigen inzicht kunnen hier extra opties meegegeven worden, deze zijn verder niet noodzakelijk voor het verdere verloop van deze installatie procedure.

    Om ervoor te zorgen dat de Samba server nu en in de toekomst automatisch start bij het opstarten van je systeem moeten de volgende 2 handelingen worden uitgevoerd.

    Shell:
    mv /usr/local/etc/rc.d/samba.sh.sample /usr/local/etc/rc.d/samba.sh
    cp /usr/local/etc/smb.conf.default /usr/local/etc/smb.conf
    /usr/local/etc/rc.d/samba.sh start

    Om er straks zeker van te zijn dat Samba de wijzigingen in de configuratie file meeneemt kun je in de experimenteer fase het best de server stoppen en (her) starten. Het starten van de Samba server is zojuist al aangeven, het stoppen van de Samba server gaat nagenoeg hetzelfde.

    '/usr/local/etc/rc.d/samba.sh stop'

    Stap 2 Configuratie PDF Printer

    Er moet een locatie worden bepaald waar straks de PDF printer zijn PDF documenten kan plaatsen.
    Als eerst worden er hiervoor 2 directory's aangemaakt.

    Shell:
    mkdir /usr/local/share/pdf_printer
    mkdir /usr/local/share/pdf_printer/drop_box
    chmod 007 /usr/local/share/pdf_printer/drop_box

    Deze locatie zal gedurende het hele document worden gehanteerd, vanzelfsprekend kan later de locatie naar eigen inzicht worden veranderd en kan de beveiliging verbeterd worden.

    Download het bestand 'printpdf.sh' en plaats deze in de directory '/usr/local/bin'

    Shell:
    fetch http://machiel.generaal.net/files/pdfprinter/printpdf.sh
    mv printpdf.sh /usr/local/bin
    chmod 755 /usr/local/bin/printpdf.sh

    De binnenkomende printopdrachten zullen door samba als post script formaat worden aangeleverd. Het shell script zal dan vervolgens dit bestand converteren naar een PDF document. Om alvast de werking van het shell script te kunnen testen kun je gebruik maken van de postscript voorbeelden van de ‘GNU Postscript interpreter’.

    Het lokaliseren van een postscript document en het testen van het shell script gaat als volgt.

    Shell:
    pkg_info -L ghostscript-gnu-nox11-7.07_4 | grep examples
    printpdf.sh <postscript document>

    Het resultaat (PDF Document) is vervolgens terug te vinden in de directory '/usr/local/share/pdf_printer/drop_box'.

    Stap 3 Configuratie Samba

    Bij het configureren van de Samba server wordt gebruik gemaakt van een minimale configuratie file waarmee de PDF Printer naar behoren zal moeten werken. Later kan deze configuratie file naar eigen inzicht worden uitgebreid of al in een bestaande configuratie worden toegevoegd. Voordat de volgende regels worden uitgevoerd moet je mogelijk eerst je oude configuratie (smb.conf) in veilheid brengen.

    Download het bestand 'smb.conf' en plaats deze in de directory '/usr/local/etc'

    Shell:
    fetch http://machiel.generaal.net/files/pdfprinter/smb.conf
    mv smb.conf /usr/local/etc

    Geef in de configuratie file aan in welke werkgroep je computer(s) zitten en kies eventueel een andere naam voor de Samba server.

    Editor (/usr/local/etc/smb.conf):
    netbios name = PDF-SERVER
    workgroup = WORKGROUP

    Herstart vervolgens de Samba server om er zeker van te zijn dat alle instellingen van de configuratie file worden doorgevoerd.

    Stap 4 Configuratie Windows

    De Samba server in nu in het Windows netwerk aanwezig onder de naam zoals je die zojuist aangegeven hebt. Vanaf een Windows computer kan nu de printer worden geïnstalleerd. Bij de installatie procedure moet worden aangegeven om wat voor type printer het gaat. Hiervoor selecteren we de 'HP Color LaserJet 5/5M PS'.

    Klik hier om te vergroten.   Klik hier om te vergroten.

    Na de installatie procedure kan er geprint worden naar de PDF printer. Zodra de server deze printopdracht heeft verwerkt (Het PDF document is dan klaar) zal deze naar de gebruiker een bericht sturen via het winpopup protocol. Deze berichten zijn niet direct zichtbaar bij Windows 95/98. Voor de overige Windows versies kan dit bericht er als volgt uitzien.



    In dit bericht is te lezen waar het PDF document geplaatst is.

    Printerdriver (optioneel)

    Bij de installatie van de PDF printer moet de gebruiker nu zelf de juiste printerdriver selecteren. Ook de benodigde bestanden die samen de printerdriver vormen komen niet van de PDF Printer server maar staan lokaal of moeten van de Windows installatie Cd-rom komen. Het is ook mogelijk om dit proces automatisch te laten verlopen. Hierdoor zal in het vervolg bij de installatie van de PDF printer het type en de printerdriver van de server komen.

    Er van uitgaand dat we de 'HP Color LaserJet 5/5M PS' als printerdriver willen gebruiken moet het bestand MSPRINT3.INF uit de INF directory van Windows worden gekopieerd. Aangezien deze bij de hogere versies van Windows niet in deze vorm aanwezig is kan dit bestand hier gedownload worden. Vervolgens kan er aan de hand van dit bestand een 'printers.def' file worden gegenereerd. Dit alles kan als volgt gedaan worden.

    Shell:
    fetch http://machiel.generaal.net/files/pdfprinter/windows_inf/MSPRINT3.INF
    make_printerdef MSPRINT3.INF "HP Color LaserJet 5/5M PS" >> /etc/printers.def

    Na de uitvoer van het commando 'make_printerdef' wordt aangegeven welke bestanden samen de printerdriver vormen. Deze bestanden moeten verzameld worden en zijn te vinden in de onderliggende directory van Windows zoals b.v. system32. Ook hiervoor geld dat deze bestanden bij de hogere Windows versies niet voorkomen. Vanwege deze beperking kunnen de bestanden die samen de HP Color LaserJet 5/5M PS’ printerdriver vormen hier worden gedownload. Het downloaden en het plaatsen van de printerdriver gaat als volgt.

    Shell:
    cd /usr/local/share/pdf_printer
    fetch http://machiel.generaal.net/files/pdfprinter/printerdriver.tar.gz
    tar -xvzf printerdriver.tar.gz

    Tevens moeten er in totaal 7 regels in de Samba configuratie file (smb.conf) worden toegevoegd. Deze regels staan momenteel al in smb.conf, wat rest is het weglaten van het punt comma ' ; ' symbool waardoor de regel niet langer als commentaar regel word gezien.

    Nadat de Samba server de nieuwe configuratie heeft geladen is het nu mogelijk om op een gebruikersvriendelijke manier vanaf een Windows computer de PDF printer te installeren.

    F.A.Q.

    Bronnen

    http://www.planetpdf.com/mainpage.asp?webpageid=1736
    Een Engelstalige HowTo over dit onderwerp.
    http://www.gnu.org/software/ghostscript/ghostscript.html
    GNU Ghostscript
    http://www.scottnesbitt.net/techdocs/ps2pdf.pdf
    Een technische handleiding van ps2pdf.
    http://www.easysw.com/htmldoc/
    Originele website van de makers van HTMLDOC (Zie F.A.Q. voor meer info)
    http://www.google.com/bsd
    En natuurlijk mijn favoriete zoekmachine www.google.com of www.google.com/bsd.

    Back