PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : SAMBA PDF2MAIL Drucker



Litwas
14.11.07, 11:01
Hallo,

ich kämpfe hier schon seit Tagen mit dem erstellen eines PDFDruckers:

mein System:
Suse
samba version 3.0.20b-3.13.1370.SUSE
(ich benutze kein CUPS !! da der Drucker ja ein imaginärer Drucker ist.)
mein Shell-Script:

#!/bin/sh
# Ermitteln des Dateinamens
LOGFILE=/home/PDF-DEPOT/printpdf.log
echo "$1" >> $LOGFILE
FILE=$(egrep "^%%Title:" "$1" | head -n 1 | sed -e 's/^%%Title: //g' | sed -e 's/^(//g' | sed -e 's/\(.*\)\..*$/\1/g' | tr -d "\r\n")
DATE=`date +%Y-%m-%d_%H.%M.%S`
TITLE=`echo "${FILE}" | sed 's/\s+/_/g' | sed 's/ /_/g' | sed 's/ä/ae/g' | sed 's/ö/oe/g' | sed 's/ü/ue/g' | sed 's/ß/sz/g' | sed 's/(/_/g' | sed 's/)/_/g' | sed 's/\[/_/g' | sed 's/\//_/g' | sed 's/\]/_/g' | sed 's/__/_/g' `
FILE=`echo -n -e "$TITLE"-"$DATE"`
echo "${FILE}" >> $LOGFILE
echo "$TITLE" >> $LOGFILE
# Entfernen von ueberfluessigen Daten am Anfang und am Ende der PS-Datei
POS_S=`egrep -n "^%\!PS-Adobe" "$1" | cut -d : -f 1 `
POS_E=`egrep -n "^%%EOF" "$1" | cut -d : -f 1`
sed 1,$[$POS_S - 1]d "$1" | head -n $[$POS_E - $POS_S + 1] > "${FILE}".ps
# Loeschen der Druckdatei (smbprn.xxxx)
rm -f "$1"
# Erzeugen der PDF-Datei
gs -q -dCompatibilityLevel=1.3 -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -sOutputFile="${FILE}".pdf -c save pop -f "${FILE}".ps
# Loeschen der Postscript-Datei
#rm -f "${FILE}.ps"
# Ermitteln des Besitzers der Datei
OWNERID=$(ls -l "${FILE}".pdf | cut -f 4 -d " " | cut -f 2 -d ":")
OWNER=$(getent passwd | grep $OWNERID | cut -f 1 -d ":" | cut -f 2 -d "+" )
echo "$OWNER" >> $LOGFILE
# Abfrage des Active Directory, zur Ermittelung der Email-Adresse
email=$(ldapsearch -LLL -h 192.168.100.8 -P 3 -x -D "cn=addcomp,cn=users,dc=domaene,dc=local" -w addcomp -b "OU=User,dc=domaene,dc=de" "(&(&(objectClass=user)(objectCategory=person))(sAMAcco untName=$OWNER))" mail | grep "^mail:" | cut -f 2 -d " ")
echo "$email" >> $LOGFILE
# Versand der fertigen Datei an die zuvor ermittelte Adresse
mail -s "Ihre PDF-Datei ${FILE}.pdf" -r mail@email.de -a "${FILE}.pdf" $email < /dev/null
# Loeschen der PDF-Datei
#rm -f "${FILE}.pdf"


meine smb.conf:


[global]
workgroup = DOMAENE
netbios name = it-suse1
realm = DOMAENE.LOCAL
security = ADS
password server = DC01.DOMAENE.LOCAL
winbind separator = +
idmap uid = 10000-20000
idmap gid = 10000-20000
winbind uid = 10000-20000
winbind gid = 10000-20000
winbind enum users = yes
winbind enum groups = yes
#winbind enable local accounts = yes
template shell = /bin/bash
log file = /var/log/samba/log.smb.%U
max log size = 500
#load printers = yes
#printing = bsd
printcap name = cups
use client driver = yes
cups options = raw
loglevel = 2
username map = /etc/samba/smbusers
preferred master = no
map to guest = Bad User
use client driver = yes

[PDF2Mail]
comment = Die PDF-Datei wird an ihre Mailadresse verschickt
path = /home/PDF-DEPOT
printing = bsd
lpq command = /bin/true
printer driver = HP Color LaserJet PS
print command = /home/PDF-DEPOT/printpdf.sh "%s"
printable = yes
public = yes
valid users = @DOMAENE+PDFDRUCKGRUPPE, root
#force user = nobody
browseable = yes
writeable = yes
printer admin = root

[PDF-DEPOT$]
path = /home/PDF-DEPOT
browseable = yes
writeable = yes
guest ok = yes
force user = nobody

[print$]
comment = Druckertreiber
path = /var/lib/samba/drivers
browseable = yes
guest ok = yes
read only = yes
create mask = 777
write list = root, @ntadmin, @DOMAENE+PDFDRUCKGRUPPE, @DOMAENE+USER
writable = yes



Mein Problem:
Als Domänenadmin kann ich den Drucker einbinden und drucken.
Aber als normaler User der in der Gruppe @DOMAENE+PDFDRUCKGRUPPE mitglied ist, kann den Drucker nicht einbinden. Die User bekommen die Fehlermeldung: "Sie haben keine ausreichenden Zugriffsrechte, um die Verbindung mit dem Drucker herzustellen.".
Nun dachte ich mir es könnte daran liege, daß keine Druckertreiber dem PDFdrucker zugewiesen sind. Ich hab dann die Treiber per Windowsassistent dem Server zugewiesen. hat auch funktioniert, aber wenn ich den Treiber als Standart einstellen will, bekomme ich als Domänenadmin die Fehlermeldung: "Die Druckereinstellungen konnten nicht gespeichert werden. Zugriff verweigert".

Darauf hin hab ich per rpcclient auf dem Linuxserver versucht die Treiber zu zuweisen. Aber wieder fehlermeldung:
rpcclient localhost -N -U'root%passwort' -c 'setdriver PDF2MAIL "HP Color LaserJet PS"'
result was WERR_ACCESS_DENIED

Die Treiber liegen im richtigen PFAD unter /var/lib/samba/drivers/W32X86/3 .

Ich kann zwar kein Latein aber trotzdem bin nach hilfe von Google und Suche hier im Forum, am ende meines Lateins.

Ich hoffe ihr könnt mir paar Tipps geben.

Gruß Litwas

Blade
16.11.07, 20:39
Warum so kompliziert, bei SuSE ist doch im Paket ein pdf-Drucker enthalten, schau ihn Dir mal an.

Litwas
22.11.07, 15:51
@Blade:
Danke für deine Antwort, aber ich brauche genau diese Konstellation (PDF wird an die Mail-Adresse des PDF-Erstellers gesendet).

Ich hoffe jemand noch ein Tipp, warum diese Geschichte nur Domänen-Administrator funktioniert.

Gruß
Litwas