/ Forside / Teknologi / Operativsystemer / Linux / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Linux
#NavnPoint
o.v.n. 11177
peque 7911
dk 4814
e.c 2359
Uranus 1334
emesen 1334
stone47 1307
linuxrules 1214
Octon 1100
10  BjarneD 875
cups, hook til powerswitch
Fra : Leif Neland


Dato : 17-11-10 14:45

Jeg har en Gembird MSIS-PM "stikdåse", der kan tændes/slukkes via USB,
med sispmctl

Jeg har en laserprinter, der er koblet til cups.

Printeren bruges sjældent, og står i kontoret, men kan bruges fra hele
huset via netværket.

Jeg vil gerne have at der bliver tændt for printeren automatisk, når der
er brug for det, og slukket f.ex. 10 min efter printeren er færdig.

Ideer?

Leif

(Det er forøvrigt Freebsd)



 
 
Henning (17-11-2010)
Kommentar
Fra : Henning


Dato : 17-11-10 15:32

On 2010-11-17 14:45, Leif Neland wrote:
> Jeg har en Gembird MSIS-PM "stikdåse", der kan tændes/slukkes via USB,
> med sispmctl
>
> Jeg har en laserprinter, der er koblet til cups.
>
> Printeren bruges sjældent, og står i kontoret, men kan bruges fra hele
> huset via netværket.
>
> Jeg vil gerne have at der bliver tændt for printeren automatisk, når der
> er brug for det, og slukket f.ex. 10 min efter printeren er færdig.
>
> Ideer?

Jeg har så sent som sidste uge sent et script til at gøre dette.

Søg inspiration på http://chezphil.org/slugpower/ hvordan han løste det

/Henning


Leif Neland (17-11-2010)
Kommentar
Fra : Leif Neland


Dato : 17-11-10 16:42

Jeg lavede dette quick'n dirty script:
Det køres i kron hvert minut, og det looper selv 5 gange over et sleep
10, så det kører ca hvert 10. sekund. (Maskinen har ikke så meget at
lave...)

Hvis der er noget i køen (lpstat)
touch et flag.
Hvis printeren er online (usbconfig)
enable printeren
ellers
tænd den (sispmctl)
ellers
Hvis flaget er ældre end 10 minutter, slet det og disable printeren
sov 10 sekunder og loop igen

Jeg vil gerne enable/disable printeren, så cups ikke skriver til
printeren før den er klar. Men der er rettighedsproblemer for root at
gøre det.

Det "koster" nok lige meget at enable printeren hele tiden, frem for at
teste om den er enablet, og kun enable hvis den er disablet.

Indtil printeren kommer online, giver powerswitchen et bip hvert 10.
sekund, hvor scriptet sender en tænd-kommando til den. Men det er
faktisk en fordel, så bliver man opmærksom på at printeren skal bruges,
hvis nogen er kommet til at slukke på selve printeren.

Igen, man kunne spørge switchen om den var tændt, før man tændte den,
men det koster nok lige så meget som at blive ved med at tænde den.

Her er scriptet:

#!/bin/sh
PRINTER=laser
for n in 1 2 3 4 5
do
if /usr/local/bin/lpstat $PRINTER|grep :
then
touch /tmp/powerflag
if /usr/sbin/usbconfig|grep -i laserjet
then
/usr/local/sbin/cupsenable $PRINTER
else
/usr/local/bin/sispmctl -d1 -o1
fi
else
find /tmp -name powerflag -mmin +10 -delete -exec
/usr/local/bin/sispmctl -d1 -f1 \; -exec /usr/local/sbin/cupsdisable
$PRINTER \;
fi
sleep 10
done

Man kunne udvide scriptet; hvis printeren har været tændt længe, og der
stadig er noget i køen, instrueres asterisk til at ringe op, og fortælle
mig der er et problem

Leif



Kent Friis (17-11-2010)
Kommentar
Fra : Kent Friis


Dato : 17-11-10 18:02

Den Wed, 17 Nov 2010 14:45:17 +0100 skrev Leif Neland:
> Jeg har en Gembird MSIS-PM "stikdåse", der kan tændes/slukkes via USB,
> med sispmctl

Genialt, sådan en må jeg også have. Lige hvad jeg har ledt efter
siden jeg købte en af de der elendige "strømspareskinner", der
ikke virker med en moderne PC der altid har tændt for strømmen
til USB.

Mvh
Kent
--
"The Brothers are History"

Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408920
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste