[gull] CUPS - réactivation d'imprimante

Félix Hauri felix at f-hauri.ch
Mon Nov 24 11:12:59 CET 2008


Salut Erik,

On Mon, Nov 24, 2008 at 09:36:19AM +0100, Erik Rossen wrote:
> Voici une "solution" valable pour CUPS 1.2.x:
> 
> 	http://linuxgazette.net/147/misc/lg/2_cent_tip__automatically_reenabling_cups_printer_queues.html

J'aime bien le titre:

``Solution à 2 balles''...

Mais c'est exactement ça quoique, personnellement j'essayerais de savoir
si mon imprimante est allumée:

 .1 éteindre l'imprimante,
 .2 # lsusb >/tmp/printeroff
 .3 allumer l'imprimante
 .4 # lsusb >/tmp/printeron
 .5 # diff /tmp/printero*
    0a1
    > Bus 003 Device 107: ID 04a9:10c4 Canon, Inc.

Du coup le script pourrait ressembler à: (Attention,
 je n'utilise pas cups, du coups les commandes LPSTAT
 et CUPSENABLE ne sont pas testées!)

#!/bin/sh
#
# Check if my printer ``Canon'' is disabled and reenable it.
PRINTER=Canon
LC_ALL=C    
# On ne fait rien si l'imprimante est active
lpstat -t | grep -q " $PRINTER .*disabled" || exit 0
# On quitte si l'imprimante n'est pas allumée:
lsusb | grep -q "ID 04a9:10c4" || exit 0
# Sinon, alors, on loggue l'info:
logger "Stopped printer $PRINTER is now up"
# Et on réactive et on loggue:
cupsenable -h 127.0.0.1:631 $PRINTER &&
     logger "Printer $PRINTER has been enabled." done
# --- End of script ---


voire pour ceux qui ont plusieurs imprimantes: (Attention, c'est du BASH)
#!/bin/bash
#
# Check if a printer queue is disabled and reenable it.
#
# Scripts for checking if printer is up:
export LC_ALL=C
export   Verif_Canon="lsusb | grep -iq 'ID 04a9:10c4'"
export    Verif_HPLJ="echo -n '' | nc -q 0 -w 3 HPJetDirectHost 9100 >/dev/null 2>&1"
export Verif_DistUSB="ssh DistHost lsusb | grep -iq 'ID 04a9:10c4'"

for PRINTER in $(lpstat -t | awk '/disabled/ { print $2; }') ;do
    if eval $(echo eval \$Verif_$PRINTER) ;then
        logger "Stopped printer $PRINTER is now up"
        cupsenable -h 127.0.0.1:631 $PRINTER &&
            logger "Printer $PRINTER has been enabled."
        fi
    done


--
 Félix Hauri  -  <felix at f-hauri.ch>  -  http://www.f-hauri.ch



More information about the gull mailing list