Serveur d'impression (cups + samba) sur debian 6.0
De wikiGite
Sommaire
Prérequis
- un serveur samba fonctionnel. Dans notre cas l'admin du domaine samba est l'utilisateur administrateur.
CUPS
Installer cups:
aptitude install cups.
Éditer le fichier /etc/cups/raw.convs et vérifier que cette ligne est décommenté :
application/octet-stream application/vnd.cups-raw 0 -
Éditer le fichier /etc/cups/raw.types et verifier que cette ligne est décommenté :
application/octet-stream
SAMBA
Ajouter l'utilisateur administrateur au groupe lpadmin :
adduser administrateur lpadmin
Ajouter ceci dans /etc/samba/smb.conf :
[global]
load printers = Yes
printing = cups
printcap name = cups
#même nom d'imprimantes entre cups et samba
force printername = yes
[printers]
comment = Imprimantes
path = /var/spool/samba
browseable = yes
public = yes
guest ok = yes
writable = no
printable = yes
use client driver = no
[print$]
comment = drivers pour imprimantes
path = /var/lib/samba/drivers
browseable = yes
guest ok = yes
read only = yes
write list = administrateur, root
inherit permissions = yes
Puis donner les droits d'accès au répertoire :
chmod 1777 /var/spool/samba
(Le « 1 » de 1777 empêche que les fichiers soient effacés par d'autres utilisateurs que le propriétaire du fichier)
Push automatique des drivers windows lors de l'installation
Créer l'arborescence de stockage des drivers windows pour samba dans /var/lib/samba/drivers :
drwxrwsrwx 2 root root 4096 26 déc. 17:13 COLOR drwxrwsrwx 2 root root 4096 26 déc. 17:13 IA64 drwxrwsrwx 2 root root 4096 26 déc. 17:13 W32ALPHA drwxrwsrwx 2 root root 4096 27 déc. 10:40 W32MIPS drwxrwsrwx 2 root root 4096 26 déc. 17:13 W32PPC drwxrwsrwx 3 root root 4096 27 déc. 17:32 W32X86 drwxrwsrwx 2 root root 4096 26 déc. 17:13 WIN40 drwxrwsrwx 3 root root 4096 27 déc. 17:32 x64
On peut la créer facilement grâce à ce script :
#!/bin/bash
BASEDIR=/var/lib/samba/drivers;
if [ -e $BASEDIR ]
then
mkdir $BASEDIR
fi
for X in COLOR IA64 W32ALPHA W32MIPS W32PPC W32X86 WIN40 x64; do
mkdir -p $BASEDIR/$X;
done
Créer le repertoire qui acceuillera les drivers windows dans cups : mkdir -p /usr/share/cups/drivers/x64
- Ajout du driver postscript Windows 32bit
Récupérer ces fichiers sur un système windows 32bit dans %WINDIR%\SYSTEM32\SPOOL\DRIVERS\W32X86\3 et les mettre dans /usr/share/cups/drivers/ :
ps5ui.dll pscript.hlp pscript.ntf pscript5.dll
!!!ATTENTION!!! Ces fichiers sont en MAJUSCULE sur windows. Il est necessaire de les mettre en minuscule sinon cupsaddsmb ne les exportera pas.
- Ajout du driver postscript windows 64bit
Récupérer ces fichiers sur un système windows 64bit dans %WINDIR%\SYSTEM32\SPOOL\DRIVERS\X64\3 et les mettre dans /usr/share/cups/drivers/x64 :
ps5ui.dll pscript.hlp pscript.ntf pscript5.dll
!!!ATTENTION!!! Ces fichiers sont en MAJUSCULE sur windows. Il est necessaire de les mettre en minuscule sinon cupsaddsmb ne les exportera pas.
Il faut maintenant exporter les imprimantes et les drivers sous samba :
service samba restart service cups restart cupsaddsmb -H localhost -U administrateur -v -a
TIPS
Installer automatiquement une imprimante sous windows :
rundll32 printui.dll,PrintUIEntry /in /n \\SERVEUR\NOM_DE_IMP
rundll32 printui.dll,PrintUIEntry /in /n \\SERVEUR\NOM_DE_IMP /y
Sources
http://forum.ubuntu-fr.org/viewtopic.php?id=272919 : installation de cups et de samba sous ubuntu https://wiki.samba.org/index.php/Samba_as_a_print_server : procedure de liaison de cups avec samba http://www.cups.org/documentation.php/doc-1.6/man-cupsaddsmb.html : manuel de cupsaddsmb http://www.samba.org/samba/docs/man/Samba-HOWTO-Collection/CUPS-printing.html : manuel d'integration de cups avec samba (très complet mais complexe) http://www.virtualhelp.me/scripts/57-vb-script/351-adding-a-printer-using-scripts-windows : Ajouter automatiquement les imprimantes dans windows