> mv /usr/local /usr/local.bak
> ls -al /usr/local/
drwxr-xr-x 6 root lp 4096 Oct 2 21:02 cups
drwxr-xr-x 3 root root 4096 Oct 2 19:54 doc
drwxr-xr-x 4 root root 4096 Oct 2 19:55 etc
drwxr-xr-x 6 root root 4096 Oct 2 19:55 libexec
>/bin/sh /tmp/_airprint/install.sh 04a9:1726:2237D4 http://ukdl.synology.com/airprint/DSM4.1
>/usr/syno/bin/wget http://ukdl.synology.com/airprint/DSM4.1/88f6282/common.tgz -O /volume1/@tmp/_airprint1002210646/common.tgz -o /tmp/_airprint/[cnfid_30976].wget
> ls -al /usr/local/
drwxr-xr-x 2 root root 4096 Oct 2 21:10 bin
drwxr-xr-x 7 root lp 4096 Oct 2 21:28 cups
drwxr-xr-x 3 root root 4096 Oct 2 19:54 doc
drwxr-xr-x 4 root root 4096 Oct 2 19:55 etc
drwxr-xr-x 3 root root 4096 Oct 2 21:10 ghostscript
drwxr-xr-x 3 root root 4096 Oct 2 21:10 gutenprint
drwxr-xr-x 2 root root 4096 Aug 15 09:32 lib
drwxr-xr-x 6 root root 4096 Oct 2 19:55 libexec
drwxr-xr-x 3 root root 4096 Oct 2 21:10 share
fett markiert sind die Änderungen für IOS 6> cat /usr/syno/avahi/services/usbprinter1.service
<service-group>
<name>usbprinter1 @ Syno</name>
<service>
<type>_printer._tcp</type>
<port>515</port>
<txt-record>txtvers=1</txt-record>
<txt-record>qtotal=2</txt-record>
<txt-record>ty=Canon MP970 series</txt-record>
<txt-record>note=Syno(Canon MP970 series)</txt-record>
<txt-record>pdl=application/octet-stream</txt-record>
<txt-record>rp=usbprinter1</txt-record>
</service>
<service>
<type>_ipp._tcp</type>
<subtype>_universal._sub._ipp._tcp</subtype>
<port>631</port>
<txt-record>txtvers=1</txt-record>
<txt-record>qtotal=2</txt-record>
<txt-record>ty=Canon MP970 series</txt-record>
<txt-record>note=Syno(Canon MP970 series)</txt-record>
<txt-record>product=(Canon MP970 series)</txt-record>
<txt-record>pdl=application/octet-stream,application/pdf,image/urf</txt-record>
<txt-record>URF=W8,CP255</txt-record>
<txt-record>rp=printers/usbprinter1</txt-record>
</service>
</service-group>
> cat /usr/local/cups/mime.types | egrep "urf|pdf"
application/pdf pdf string(0,%PDF)
image/urf urf (0,UNIRAST)
application/vnd.cups-pdf
> cat /usr/local/cups/mime.convs | egrep "urf|pdf"
application/pdf application/vnd.cups-postscript 66 pdftops
image/urf application/vnd.cups-postscript 66 pdftops
einen urftopdf Filter gibt es nicht,
urf wird wie pdf umgewandelt mit dem Filter pdftops
Rich (BBCode):> cat /usr/local/cups/mime.types | egrep "urf|pdf" application/pdf pdf string(0,%PDF) image/urf urf (0,UNIRAST) application/vnd.cups-pdf
Rich (BBCode):> cat /usr/local/cups/mime.convs | egrep "urf|pdf" application/pdf application/vnd.cups-postscript 66 pdftops image/urf application/vnd.cups-postscript 66 pdftops
so das war es, IOS 6 kann wieder drucken...
/usr/syno/etc/rc.d/S99avahi.sh
AddBonjourPrinterConf() {
PortLPR=515
PortIPP=631
PRINTER_SCONF="$AVAHI_SERVICE_PATH/$2.service"
AIRPRINT_EXT=""
AIRPRINT_SUBTYPE=""
AIRPRINT_URF=""
AIRPRINT_STAT=`/usr/syno/bin/synoprint --ckairprint $4`
if [ "$AIRPRINT_STAT" = "on" ]; then
AIRPRINT_EXT=",application/pdf,image/urf"
AIRPRINT_URF="\n<txt-record>URF=W8,CP255</txt-record>"
AIRPRINT_SUBTYPE="\n<subtype>_universal._sub._ipp._tcp</subtype>"
fi
TXT_RCD_PS="\
<txt-record>txtvers=1</txt-record>
<txt-record>qtotal=2</txt-record>
<txt-record>ty=$1</txt-record>
<txt-record>note=$1</txt-record>$AIRPRINT_URF <- habe hier den Record tt= rausgenommen und die Anzeigebeschreibung note= geändert(ist nicht unbedingt nötig)
<txt-record>pdl=application/octet-stream$AIRPRINT_EXT</txt-record>" <- hier sind die relevanten iOS6-Änderungen
echo -en \
"<service-group>
<name>$3</name> <- Dieser Anzeigename gefällt mir sehr viel besser
<service>
<type>_printer._tcp</type>
<port>$PortLPR</port>
${TXT_RCD_PS}
<txt-record>rp=$2</txt-record>
</service>
<service>
<type>_ipp._tcp</type>$AIRPRINT_SUBTYPE
<port>$PortIPP</port>
${TXT_RCD_PS}
<txt-record>rp=printers/$2</txt-record>
</service>
</service-group>
" > $PRINTER_SCONF
}
/usr/syno/avahi/services/usbprinter1.service
@lbeckmann
da gibt es 400 Millionen IOS Geräte, aber wenn es ans Drucken geht, dann finden sich kaum eine Handvoll Leute zusammen.
zum Thema:
lies mal im Ubuntu Forum
http://ubuntuforums.org/showthread.php?t=2060594&page=5
und das bug-ticket
https://bugs.launchpad.net/ubuntu/+s...s/+bug/1054495
demnach druckt IOS 6 weiterhin pdf/jpg will aber die urf-Ankündigung ansehen.
als Lösung wird vorgeschlagen:
in der cups conv einen dummy Filter eintragen:
Code:
image/urf application/pdf 100 -
dieser Filter bedeutet das urf einfach nur zu pdf ohne Filter-Treiber kopiert wird
in der *.service (bonjour) muss stehen
Code:
image/urf (wie bekannt)
URF=DM3 (anstatt urf=none)
Das bedeutet, man muss keinen urftopdf Filter compilieren.
Kannst Du das bitte mal testen?
Wie sieht es mit Deiner Druckqualität und der Leerseite aus?
#!/bin/sh
#
# Start / Stop Script for cupsd http://localhost:631
#
PREFIX=/opt
NAME=cupsd
DAEMON=/opt/sbin/cupsd
DAEMON_OPTS=""
#
#
start() {
echo "Starting Service: $NAME"
$DAEMON $DAEMON_OPTS
}
#
#
stop() {
killall cupsd
}
#
#
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
*)
echo "Usage: $0 (start|stop|restart)"
exit 1
;;
esac
#
# End
Starting Service: cupsd
cupsd: Child exited with status 1!
Port 631ServerAlias *
DiskStation> sudo /opt/etc/init.d/S55cupsd restart
cupsd: no process found
Starting Service: cupsd
cupsd: Child exited with status 1!
Ok, ich schreib dir mal, wie ich vorgegangen bin. Bei mir läuft das unter iOS6.
Nimm Post #82 von tomas123 und setze die Anweisungen ab "schauen wir nach, wie Syno urf-Airprint nachgerüstet hat" um.
Die Pfade zu den entsprechenden Dateien stehen immer ganz oben in den CODE-Blöcken.
Ersetze den Dummy-Filter für image/urf, den du in mime eingetragen hast durch das, was tomas in #82 geschrieben hat.
Ganz am Ende hat bei mir nur ein
> avahi-daemon --reload
geholfen, damit iOS6 mit dem neuen Drucker klarkommt.
WICHTIG: Starte deine DS nicht neu, da die service-Datei ansonsten wieder überschrieben wird. Setze auch nicht das Häkchen bei "AirPrint aktivieren" in der Weboberfläche - Da passiert dasselbe.
Und falls du Probleme beim finden der Bonjour-Service Datei hast: Wenn dein Drucker am usb1-Anschluss hängt, dann heißt die entsprechende Datei usbprinter1.service im von tomas123 genannten Avahi-Services Ordner
Viel Glück und Berichte, wenn du nicht weiter kommst. (Ach, ich hoffe, du kannst mit vi umgehen? Ansonsten nach vi shortcuts googlen)
tomas123 schrieb:in der *.service (bonjour) muss stehen
Rich (BBCode):image/urf (wie bekannt) URF=DM3 (anstatt urf=none)
Network Printer Support -- DSM now supports LPR, IPP, Socket, and BJNP network printers and can share them over the network via AirPrint, Cloud Print, LPR, CIFS, IPP protocols. Windows users can set up network printers shared by DiskStation with the beta version of Synology Assistant.
Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.
Als Dankeschön schalten wir deinen Account werbefrei.