Ceci est une ancienne révision du document !
Table des matières
Notes imprimante sous GNU/Linux
Voir :
system-config-printer
Voir aussi :
Si jamais CUPS n'est pas installé sur votre machine, installer les paquets cups et cups-client cups-bsd.
Pour une imprimante HP il faut le paquet hplip (CUPS a besoin de /usr/lib/cups/backend/hp)
Pour configurer une imprimante : http://localhost:631
Voir https://wiki.archlinux.fr/CUPS
lsmod | grep usblp
Il se peut que l'imprimante ne soit pas reconnue dans l'interface de Cups (imprimantes locales). Ceci est dû au fait que le noyau cré un composant qui se trouve dans /dev/usb/lp0. Une règles udev résout ce problème et permet de faire un lien symbolique /dev/lp0 → /dev/usb/lp0.
/var/log/cups/
Ajout imprimante en ligne de commande
Exemple imprimante Zebra (langage ZPL)
Install paquets
apt-get install cups #lprng apt-get install cups-bsd # ou apt-get install lpr
Lister toutes les imprimantes connectées
lpinfo -v
L'imprimante connectées en USB apparait
network ipp network http network lpd serial serial:/dev/ttyS0?baud=115200 serial serial:/dev/ttyS1?baud=115200 serial serial:/dev/ttyS2?baud=115200 serial serial:/dev/ttyS3?baud=115200 network ipps network socket network https network ipp14 direct usb://Zebra%20Technologies/ZTC%20GK420d?serial=28J162400192 network smb
Ajout de l'imprimante
lpadmin -p GK420D -v usb://Zebra%20Technologies/ZTC%20GK420d?serial=28J162400192 -E
Ou
chown root:lp /etc/cups/ppd/GK420d.ppd chmod 640 /etc/cups/ppd/GK420d.ppd lpadmin -p GK420D -v usb://Zebra%20Technologies/ZTC%20GK420d?serial=28J162400192 -m /usr/share/cups/model/HP/DeskJet_882C-cdj880.ppd
Vérif
lpstat -p
printer GK420D is idle. enabled since Thu 04 May 2017 04:32:45 PM CEST
Impression
lp -d GK420D -o raw plop.zpl
Vérifier que l'impression est terminée et OK (Show completed job)
lpstat -W completed
GK420D-1 root 3072 Thu 04 May 2017 04:39:38 PM CEST
Lister toutes les impressions des utilisateurs
lpstat -W all -o
GK420D-2 unknown 3072 Thu 04 May 2017 04:55:46 PM CEST GK420D-1 root 3072 Thu 04 May 2017 04:39:38 PM CEST
La conf est ici
- /etc/cups/printers.conf
# Printer configuration file for CUPS v1.7.5 # Written by cupsd # DO NOT EDIT THIS FILE WHEN CUPSD IS RUNNING <Printer GK420D> UUID urn:uuid:180e7105-f553-341a-6d6d-a8acdc5a89f4 Info GK420D DeviceURI usb://Zebra%20Technologies/ZTC%20GK420d?serial=28J162400192 State Idle StateTime 1493908365 Type 4 Accepting Yes Shared Yes JobSheets none none QuotaPeriod 0 PageLimit 0 KLimit 0 OpPolicy default ErrorPolicy stop-printer </Printer>
Supprimer une imprimante
Lister les imprimantes
lpstat -p
printer GK420D is idle. enabled since Tue 09 May 2017 01:12:32 PM CEST printer GK420DD is idle. enabled since Tue 09 May 2017 02:20:21 PM CEST
Effacement
lpadmin -x GK420DD
Réactiver l’imprimante
Source : http://superuser.com/questions/280396/how-to-resume-cups-printer-from-command-line
lpstat -p
printer DeskJet-3630-series is idle. enabled since mar. 12 juil. 2016 21:21:34 CEST
ready to print
cupsenable DeskJet-3630-series
lpc status
DeskJet-3630-series:
printer is on device 'hp' speed -1
queuing is enabled
printing is enabled
no entries
daemon present
Effacer et annuler toutes les impressions
cancel -a $NOM_DE_L_IMPRIMANTE # ou cancel -a -x
Administration
Ajouter l'utilisateur dans les groupes lp, lpadmin et sys ?
gpasswd -a jean lp gpasswd -a jean lpadmin
Supervision SNMP
snmpget -c public -v 1 192.168.1.250 hrPrinterDetectedErrorState.1
Autres
Voir /etc/printcap
- smb.conf
[global] print command = lpr -r -h -P%p %s
Try adding the 'sf' option to the printer definition in /etc/printcap
The 'sf' stands for 'suppress form feeds'.
Config client CUPS
cat > /etc/cups/client.conf << EOF ServerName 192.168.1.1 EOF
Diag
Voir
$ lp attestation-deplacement-fr.pdf lp: Error - ~/.cups/lpoptions file names default destination that does not exist. $ lpstat -p -d printer HP_DeskJet_3630_series is idle. enabled since mer. 06 mai 2020 19:34:55 CEST no system default destination
- ~/.cups/lpoptions
#Default DeskJet-3630-series Default HP_DeskJet_3630_series
Ou
lpoptions -d HP_DeskJet_3630_series
echo "Hello, world." | lp
sudo cupsctl --debug-logging #sudo cupsctl --no-debug-logging
Voir /var/log/cups/error_log
service cups restart journalctl -u cups.service -f
HTTP_STATE_WAITING Closing for error 32 (Broken pipe) A tester https://forum.manjaro.org/t/printer-doesnt-work-closing-for-error-32-broken-pipe/40678
cat attestation-deplacement-fr.pdf | /usr/lib/cups/filter/pdftopdf 1 1 1 1 '' >out.pdf DEBUG: pdftopdf: No PPD file specified, could not determine whether to log pages or not, so turned off page logging. DEBUG: PDF form flattening command line: pdftocairo -pdf - /tmp/032cf5ea697ad WARNING: temp file: file is damaged WARNING: temp file (object 6 0, offset 85): expected n n obj WARNING: temp file: Attempting to reconstruct cross-reference table WARNING: temp file: object 6 0 not found in file after regenerating cross reference table
pdftocairo -pdf original.pdf out.pdf
Hp
Installer / Reinstaller une imprimante HP
hp-setup -i
hp-check est fait pour RedHat. Pas très efficace.
Pb
Err invalid deviceid ret=-9: Resource temporarily unavailable
Suite à passage de Debian 9 à Debian 10
-- Boot b860f46144c6442c86d06b19bc47ea20 -- janv. 21 22:38:57 portable hpfax[131730]: [131730]: error: Failed to create /var/spool/cups/tmp/.hplip janv. 21 22:40:32 portable hp[136572]: io/hpmud/musb.c 770: invalid deviceid ret=-9: Resource temporarily unavailable déc. 28 18:20:35 portable hp[71827]: io/hpmud/musb.c 770: invalid deviceid ret=-9: Resource temporarily unavailable déc. 28 18:20:35 portable hp[71827]: io/hpmud/musb.c 561: released ff/4/1 interface déc. 28 18:20:35 portable hp[71827]: prnt/backend/hp.c 825: INFO: open device failed stat=12: hp:/usb/DeskJet_3630_series?serial=CN5CS2H5YV067P; will retry in 30 secon> déc. 28 18:21:05 portable hp[71827]: io/hpmud/musb.c 427: Found interface conf=0, iface=1, altset=0, index=1
Solution
Pas très clair, à vérif
apt-get purge ipp-usb apt-get install cups apt-get reinstall hplip hplip-data hp-setup -i
