komischer Samba (drucken von pdf's)

XPectIT

the just
Guten Tag.
Ich bin gerade dabei per Samba einen pseudo-Drucker einzurichten um damit pdf's erstellen zu können. Das klappt auch soweit.
Nur klappt das nicht wenn ich den Sambaserver normal starte (z.B. nach reboot) sondern muss ich erst samba neu starten.
/usr/local/etc/rc.d/samba.sh stop | start
dann geht es.
Davor nicht, obwohl ich nicht an der Konfiguration ändere. Ich versteh das nicht wirklich. Keine errors in den Logs, keine sonstigen Beeinträchtigungen, keine Meldung das Samba beim starten zickt... Das drucken über den richtigen Drucker, den ich auch über Samba freigegeben habe klappt problemlos.

Hier mal der Ausschnitt meiner smb.conf
Code:
...
[pdfPrinter]
        print ok = Yes
        printable = Yes
        path=/var/pdfwork
        browseable = Yes
        print command = [b]/usr/local/bin/pdfwrite %s[/b] 

[pdfout]
       comment = PDF Output location
       path = /var/transfer/druckout
       writable = yes
...

und das pdfwrite-script darf natürlich nicht fehlen
Code:
#!/bin/sh
#
#
outdir=/var/transfer/druckout
workdir=/var/pdfwork
psname=$1

# extract Document-Title, den smb-namen benutzen wenn Titel leer
title=$(/usr/bin/head ${psname} | grep Title | cut -f2 -d ':' | tr -cd "[:alnum:]")
if [ -z ${title} ]; then
  title=${psname}
fi

pdfname=${workdir}/`basename ${title}`.pdf
pdfname2=${workdir}/`basename ${title}`

# die eigentlich Umwandlung von ps nach pdf
/usr/local/bin/ps2pdf "${psname}" "${pdfname}" 

# Wenn Ziel bereits vorhanden Ziel+sekunden
# verschieben in Zielordner
if [ -e ${outdir}/${title}.pdf ]; then
   pdfname2=${title}$(date +%S).pdf
   mv "$pdfname" "$outdir/${pdfname2}"
else
mv "$pdfname" "$outdir"
fi

# Ausgangsdatei löschen
rm -f $psname

exit 0

Wie gesagt es klappt wenn ich samba manuell anhalte und neu starte, aber gleich nach dem Systemstart nicht.
 
Ich krame das hier jetzt nochmal hoch.
Aus dem Verhalten werde ich nämlich nicht wirklich schlau.

Direkt nach dem Systemstart geht es nicht, aber wenn ich Samba anhalte und sofort wieder neu starte macht er's. Auch wenn ich Samba als letztes starte, oder gleich nach dem booten per Script anhalte und neu starte gehts es nicht. Es scheint fast so, als müsste ich mich erst einmal einloggen (zum stop und start von Samba) damit er zufrieden ist.

Wenn noch jemand einen Vorschlag hat... genau DAS ist die Kleinigkeiten die mich an der Logik von Computern zweifeln lassen. :)

Edit:
Ich habe noch etwas herumgespielt. Es scheint so, als würde die Zeile:
/usr/local/bin/ps2pdf "${psname}" "${pdfname}"
einfach ignoriert.

Schreibe ich diese Zeile aber manuell in die Shell, funktionierts problemlos... ich raff das nicht mehr.
 
Zuletzt bearbeitet:
Zurück
Oben