Univention Bugzilla – Bug 38201
Provide PDF printer driver for Windows clients
Last modified: 2015-06-12 13:42:21 CEST
This is based on a feature request from a UCS@school workshop attendee: The PDF printer should come with a windows printer driver pre-installed (samba share "print$"). Right now, you have to upload a fitting driver manually via point'n'print. Besides, that the process is error-prone, we don't explicitly mention that this is necessary or recommend a working driver in the manual (see Bug 38114 for this).
In UCS@school
In UCS@school a separate PDF printer share is created for each server. So the printer driver has to be assigned to the share within a UCS@school package. Isn't there a generic windows printer driver provided by the CUPS project? I think, the printer driver should be provided by the UCS package univention-cups-pdf and automatically installed "into samba". The assignment of the printer driver to the printer share should be done in the UCS@school package. Any objections?
(In reply to Sönke Schwardt-Krummrich from comment #2) > In UCS@school a separate PDF printer share is created for each server. So > the printer driver has to be assigned to the share within a UCS@school > package. > > Isn't there a generic windows printer driver provided by the CUPS project? No, they are no longer available. BUT ,we can set a windows printer driver that is already (pre)installed on the windows clients. During first connect, the windows client installs the driver from local (not from the samba server) if the driver is available. A good candidate is "MS Publisher Color Printer", worked for me with * winxp (sp3) * win7 de * win7 en * win8.1 > > I think, the printer driver should be provided by the UCS package > univention-cups-pdf and automatically installed "into samba". > The assignment of the printer driver to the printer share should be done in > the UCS@school package. ucs-school-umc-printermoderation now sets the windows driver for PDFDrucker in the join-script (rpcclient). This was a bit tricky, because we have to use the machine account, but the machine account has no rights to manage printer driver settings. -> s4: the host is temporary added to group "Print Operators" -> s3: the host is temporary added to group "Printer-Admins" UCR Configuration: * ucsschool/printermoderation/windows/driver/name name of the windows printer driver - "MS Publisher Color Printer" by default * ucsschool/printermoderation/windows/driver/assign if this is false, the join script skips the driver assignment QA: for s3 and s4 * single server * multi-server * on a windows client (domain join is not necessary) open the school dc slave (\\IP_SCHOOL_DC) and double click PDFDrucker, the printer should be available/usable (without asking for a driver) Changelog entry has been added.
Added 00_checks/15_ucsschool_check_windows_printer_driver_for_pdf_printer to ucs-test-ucsschool to verify that the windows printer driver for PDFDrucker is 'MS Publisher Color Printer'
The joinscript does not fail if the creation fails (e.g. because the statement in the loop never became true).
(In reply to Florian Best from comment #5) > The joinscript does not fail if the creation fails (e.g. because the > statement in the loop never became true). fixed in ucs-school-umc-printermoderation 11.0.1-6.49.201504281757
Please increase the joinscript version and insert a release note that the change can be disabled via setting the UCR variable ... before updating.
The success=true »after« the break statement is not executed.
OK: winxp + samba3 OK: win7 + samba3 OK: winxp + samba4 OK: win7 + samba4 OK: ACL workaround for host permissions (Bug #24075) OK: Changelog TODO: Release note TODO: joinscript-version, joinscript-exit-code
* outsourced the windows driver setting part to /usr/share/ucs-school-umc-printermoderation/set-windows-driver-for-pdf-printer (for later execution). * in the join script the windows driver will only be set during the first join. * updated changelog
If the script is executed on a samba3 slave the script have to be called with --binddn, …. Without is just prints Permission denied. Restarting Name Service Cache Daemon: nscd. Setting windows printer driver for PDFDrucker ... result was WERR_ACCESS_DENIED result was WERR_ACCESS_DENIED result was WERR_ACCESS_DENIED … 300 times … Please adjust this with a usage string + die.
* added a check for --binddn and --bindpwd or --bindpwdfile * exit if udm groups/group modify fails
OK: tested the script with s3-multimaster, s4-multimaster, s3-singlemaster.
(In reply to Florian Best from comment #13) > OK: tested the script with s3-multimaster, s4-multimaster, s3-singlemaster. err, s3-singlemaster → s4-singlemaster
UCS@school 4.0 R2 v1 has been released: http://docs.univention.de/release-notes-ucsschool-4.0R2v1-de.html If this error occurs again, please use "Clone This Bug".