Pagina 1 di 2

[Risolto] creare uno script come utente root

Inviato: venerdì 7 ottobre 2011, 18:13
da edino
Non riesco a creare uno script x avviare logkeys in automatico.
Spulciando nelle guide e dopo aver tentato:
applicazioni avvio comando

Codice: Seleziona tutto

sudo logkey -s
non funziona

Codice: Seleziona tutto

sudo logkeys --start
niente
e seguendo altre guide o forum senza risultato  :-\ alla fine sono arrivato alla conclusione che devo creare uno script
che parta ad ogni avvio come utente root, ma non sono riuscito a farlo.. >:( >:( ho tentato in tutti i modi
ma niente. :-\
Se cortesemente avete delle indicazioni ve ne sono veramente grato ;)

                                             buonaserata
                                                                     edino

Re: creare uno script come utente root

Inviato: venerdì 7 ottobre 2011, 18:33
da lihin
Logkeys ha già il suo init script, va solo abilitato.

Codice: Seleziona tutto

$ cat /usr/share/doc/logkeys/README.Debian
logkeys for Debian
------------------

Logkeys is disabled by default. Before using it you will need to set
DEVICE variable in /etc/default/logkeys. Check /proc/bus/input/devices,
for your keyboard and find line that looks like:

H: Handlers=kbd eventXX

Use value from above and set DEVICE to /dev/input/eventXX.

 -- Vedran Furač <vedran.furac@gmail.com>  Sun, 07 Feb 2010 01:06:25 +0100

Codice: Seleziona tutto

$ cat /etc/default/logkeys 
ENABLED=0
LOGFILE=/var/log/logkeys

# This should be updated according to your hardware
# Check README.Debian for more info
DEVICE=/dev/input/event5
Ciao

Re: creare uno script come utente root

Inviato: venerdì 7 ottobre 2011, 20:01
da edino
Chiedo venia.. :) x abilitarlo come devo fare?

Re: creare uno script come utente root

Inviato: venerdì 7 ottobre 2011, 22:07
da edino
Up ;)

Re: creare uno script come utente root

Inviato: venerdì 7 ottobre 2011, 22:12
da Stealth
Non fare un up dopo due ore, non è mica una chat  ;)
Nel merito basta che tu apra quel file con diritti di modifica, con

Codice: Seleziona tutto

sudo nano /etc/default/logkeys
e poi sostituisci lo zero con un uno, cambiando la riga così

Codice: Seleziona tutto

ENABLED=1
.....
poi salvi con ctrl+o (vocale, non zero) ed esci con ctrl+x, e dovrebbe essere attivato. Fai un reboot per verificare e, se funziona tutto, metti un [Risolto] nel titolo del primo post
ciao

Re: creare uno script come utente root

Inviato: venerdì 7 ottobre 2011, 22:51
da edino
Chiedo scusa x la mia intemperanza... :-[ è che vorrei risolvere questo problema,
sto provando da troppo tempo.
Grazie x le indicazioni.... (good) ma non sono riuscito a risolvere.....ho fatto tutto ma non parte >:(
Ho cambiato

Codice: Seleziona tutto

ENABLED=1
ho salvato con ctrl+o (vocale) dato invio altrimenti non esce con ctrl+x.
Fatto reboot e riprovato diverse volte ma niente,non è che devo aggiungere in applicazioni avvio un comando diverso da:

Codice: Seleziona tutto

sudo logkeys -s
?
Grazie x le risposte e sarò + paziente nell'attendere le risposte


                                                                        edino ;)

Re: creare uno script come utente root

Inviato: sabato 8 ottobre 2011, 14:22
da lihin
Edino, allora proviamo a farlo funzionare...
Due premesse. Gli initscript sono gli script che fanno partire i servizi all'avvio, quindi una volta configurato non c'è bisogno di aggiungere nulla nelle applicazioni d'avvio. Secondo, nella configurazione devi anche indicare qual è la periferica da monitorare, cioè la tastiera.

Partiamo dalla configurazione, come indicato nel README sopra, determina su quale input event è la tastiera:

Codice: Seleziona tutto

cat /proc/bus/input/devices
Nell'elenco cerca la voce relativa alla tastira.
Nel mio caso p. e. è questa:

Codice: Seleziona tutto

I: Bus=0011 Vendor=0001 Product=0001 Version=ab41
N: Name="AT Translated Set 2 keyboard"
P: Phys=isa0060/serio0/input0
S: Sysfs=/devices/platform/i8042/serio0/input/input0
U: Uniq=
H: Handlers=kbd event0 
B: EV=120013
B: KEY=4 2000000 3803078 f800d001 feffffdf ffefffff ffffffff fffffffe
B: MSC=10
B: LED=7
A questo punto cerca la riga contenente "Handlers=kbd" e vedi a quale event è associata la tastiera.
Nel mio caso:

Codice: Seleziona tutto

H: Handlers=kbd event0
Cioè event0.

Ora puoi abilitare e configurare, come ti è già stato indicato da Stealth:

Codice: Seleziona tutto

gksudo gedit /etc/default/logkeys
Che nel mio caso sarebbe:

Codice: Seleziona tutto

ENABLED=1
LOGFILE=/var/log/logkeys

# This should be updated according to your hardware
# Check README.Debian for more info
DEVICE=/dev/input/event0
Fatto questo il logger è configurato e pronto all'uso.
Partirà ad ogni avvio della macchina e loggherà in /var/log/logkeys.
NB per leggere il contenuto del log dovrai usare i permessi di root, cioè qualcosa del tipo:

Codice: Seleziona tutto

sudo cat /var/log/logkeys
Se non vuoi che il logger parta ad ogni avvio, puoi disabilitare il servizio.
Il modo più semplice è probabilmente attraverso "bum" (installalo e togli la spunta da logkeys).
E per far partire il logger dai un:

Codice: Seleziona tutto

sudo service logkeys start
oppure:

Codice: Seleziona tutto

sudo /etc/init.d/logkeys start
E per fermarlo sostituisci lo start con uno stop:

Codice: Seleziona tutto

sudo service logkeys stop
P.S. Consiglio spassionato, non farti troppo i fatti degli altri, è un attività che riserva sempre brutte sorprese...  (rotfl)

Ciao

P.P.S. Forse sarebbe meglio cambiare il titolo con qualcosa di più appropriato.

Re: creare uno script come utente root

Inviato: domenica 9 ottobre 2011, 18:29
da edino
Ti ringrazio  lihin x le indicazioni, e non c'è da preoccuparsi..... ;D  voglio solo spiare me stesso
ho una memoria mooolto corta, ho gia fatto un casino con delle password dimenticate, con logkeys
ho la possibilità di avere una sorta di memoria dove andare a trovare tutto quello che dimentico (rotfl)
Sò che può sembrare strano ma mi sembra un buon sistema, ho provato con bigliettini e quant'altro ma finora
non ho avuto dei buoni risultati  :( ho perso anche quelli)
Se riesco a risolvere il tutto metto risolto
Grazie ancora (good)

                                            edino

                                         

Re: creare uno script come utente root

Inviato: domenica 9 ottobre 2011, 18:44
da davide73
un file .txt in una chiavetta che ti porti sempre con te?
;)

Re: creare uno script come utente root

Inviato: domenica 9 ottobre 2011, 18:52
da edino
Ciao di chiavette ne ho in giro diverse ogni tanto ne perdo una :( ne compro un'altra poi ritrovo la prima e perdo la seconda e così via.....comunque ne ho 7/8 in giro sono così non so cosa farci... :-[
riguardo logkeys ho fatto tutto e tutto corrisponde....ma non parte all'avvio

Codice: Seleziona tutto

ENABLED=1
LOGFILE=/var/log/logkeys

# This should be updated according to your hardware
# Check README.Debian for more info
DEVICE=/dev/input/event5
Ma devo inserire anche in Applicazioni avvio logkeys con:

Codice: Seleziona tutto

sudo logkeys -s
o qualche altro comando?

Re: creare uno script come utente root

Inviato: lunedì 10 ottobre 2011, 1:05
da lihin
Sicuro di non esserti dimenticato della configurazione della tastiera?
edino ha scritto: riguardo logkeys ho fatto tutto e tutto corrisponde....ma non parte all'avvio

Codice: Seleziona tutto

DEVICE=/dev/input/event5
Vedo che hai lasciato l'event5 intonso.

Posta l'output di questo comando, così vediamo se è in esecuzione:

Codice: Seleziona tutto

ps -ef | grep logkeys

Re: creare uno script come utente root

Inviato: lunedì 10 ottobre 2011, 13:03
da edino
Allora ecco :

Codice: Seleziona tutto

 1758  1704  0 12:58 pts/0    00:00:00 grep --color=auto logkeys
mi da questo..... (yes) ma volevo chiesere se è giusto che lo tengo nelle applicazioni all'avvio col comando

Codice: Seleziona tutto

sudo logkeys -s
oppure lo devo togliere del tutto?
Grazie x le risposte e la cortese atenzione (good)

                                                          edino

Re: creare uno script come utente root

Inviato: lunedì 10 ottobre 2011, 18:49
da lihin
edino ha scritto: Allora ecco :

Codice: Seleziona tutto

 1758  1704  0 12:58 pts/0    00:00:00 grep --color=auto logkeys
mi da questo..... (yes)
Non è in esecuzione.
Ma l'avevi disabilitato per caso?
Prova a postare il risultato di questo comando:

Codice: Seleziona tutto

find /etc/rc?.d -name ???logkeys
... ma volevo chiesere se è giusto che lo tengo nelle applicazioni all'avvio col comando

Codice: Seleziona tutto

sudo logkeys -s
oppure lo devo togliere del tutto?
Come ti dicevo sopra, se usi l'initscript incluso nel pacchetto, non ti serve più aggiungere altro nelle applicazioni d'avvio. Tanto più che quel comando non ti porterebbe comunque ad alcun risultato utile, contiene un sudo e, a meno di una configurazione appropriata del file sudoers, richiede l'immissione della password per ottenere i diritti amministartivi, ma visto che includendolo nelle applicazioni d'avvio non puoi interagirci, non avvierà l'applicazione per la mancanza della suddetta password. L'initscript serve proprio a rendere più semplice questo tipo di avvio.
Poi nulla ti vieta di reinventarti la ruota, le strade alternative percorribili sono diverse, ma visto che ti sono già stati messi a disposizione tutti gli strumenti necessari, tanto vale usare questi e non complicarsi la vita inutilmente... ;)

Re: creare uno script come utente root

Inviato: martedì 11 ottobre 2011, 0:18
da nello79
crea uno script con questo comando:
sudo /etc/init.d/nomeScript.sh e incollaci questo

Codice: Seleziona tutto

 
#!/bin/bash 
logkeys -s



rendilo eseguibile con: sudo chmod a+x /etc/init.d/nomeScript.sh
e poi dai: sudo update-rc.d ct.sh defaults
e poi riavvia

Re: creare uno script come utente root

Inviato: martedì 11 ottobre 2011, 20:36
da edino
Ecco il risultato di:

Codice: Seleziona tutto

find /etc/rc?.d -name ???logkeys

Codice: Seleziona tutto

~$ find /etc/rc?.d -name ???logkeys
/etc/rc0.d/K20logkeys
/etc/rc1.d/K20logkeys
/etc/rc2.d/S20logkeys
/etc/rc3.d/S20logkeys
/etc/rc4.d/S20logkeys
/etc/rc5.d/S20logkeys
/etc/rc6.d/K20logkeys
Quando ho postato il risultato di

Codice: Seleziona tutto

ps -ef | grep logkeys
era disabilitato xchè appena riavviato ora ti posto il risultato con logkey avviato...

Codice: Seleziona tutto

ps -ef | grep logkeys
nobody    1978     1  0 20:26 ?        00:00:00 logkeys -s
edino     1980  1900  0 20:26 pts/0    00:00:00 grep --color=auto logkeys
Ho rimosso dalle applicazioni avvio logkey, chiedevo xchè come avrete ben capito non sono così ferrato in materia... :-[
Grazie  lihin  (good)

Re: creare uno script come utente root

Inviato: martedì 11 ottobre 2011, 20:44
da edino
Ma lo script con :

Codice: Seleziona tutto

sudo /etc/init.d/nomeScript.sh
dove lo devo salvare
Xchè se da terminale dò:sudo /etc/init.d/nomeScript.sh

Codice: Seleziona tutto

sudo: /etc/init.d/nomeScript.sh: command not found
Ciao a Tutti
                          Buonaserata edino  ;)

Re: creare uno script come utente root

Inviato: martedì 11 ottobre 2011, 23:04
da lihin
edino ha scritto: Ecco il risultato di:

Codice: Seleziona tutto

find /etc/rc?.d -name ???logkeys

Codice: Seleziona tutto

~$ find /etc/rc?.d -name ???logkeys
/etc/rc0.d/K20logkeys
/etc/rc1.d/K20logkeys
/etc/rc2.d/S20logkeys
/etc/rc3.d/S20logkeys
/etc/rc4.d/S20logkeys
/etc/rc5.d/S20logkeys
/etc/rc6.d/K20logkeys
Ok, questi sono a posto, allora posta anche il risultato di:

Codice: Seleziona tutto

cat /proc/bus/input/devices
Ho il sospetto che muoia per un'errata configurazione della tastiera.

P.S. Seguendo le indicazioni di nello, crei un doppione "casereccio" degli script che già stiamo utilizzando (e a questo punto tanto varrebbe aggiungere il comando in rc.local, che si farebbe prima...).

Re: creare uno script come utente root

Inviato: mercoledì 12 ottobre 2011, 7:05
da edino

Codice: Seleziona tutto

~$ cat /proc/bus/input/devices
I: Bus=0019 Vendor=0000 Product=0001 Version=0000
N: Name="Power Button"
P: Phys=PNP0C0C/button/input0
S: Sysfs=/devices/LNXSYSTM:00/device:00/PNP0C0C:00/input/input0
U: Uniq=
H: Handlers=kbd event0 
B: PROP=0
B: EV=3
B: KEY=100000 0 0 0

I: Bus=0019 Vendor=0000 Product=0001 Version=0000
N: Name="Power Button"
P: Phys=LNXPWRBN/button/input0
S: Sysfs=/devices/LNXSYSTM:00/LNXPWRBN:00/input/input1
U: Uniq=
H: Handlers=kbd event1 
B: PROP=0
B: EV=3
B: KEY=100000 0 0 0

I: Bus=0011 Vendor=0001 Product=0001 Version=ab41
N: Name="AT Translated Set 2 keyboard"
P: Phys=isa0060/serio0/input0
S: Sysfs=/devices/platform/i8042/serio0/input/input2
U: Uniq=
H: Handlers=sysrq kbd event2 
B: PROP=0
B: EV=120013
B: KEY=10000 c0200 0 0 0 0 0 700f 2000003 3803078 f830f401 febfffdf ffefffff ffffffff fffffffe
B: MSC=10
B: LED=7

I: Bus=0011 Vendor=0002 Product=0005 Version=0055
N: Name="ImPS/2 Logitech Wheel Mouse"
P: Phys=isa0060/serio1/input0
S: Sysfs=/devices/platform/i8042/serio1/input/input3
U: Uniq=
H: Handlers=mouse0 event3 
B: PROP=0
B: EV=7
B: KEY=70000 0 0 0 0 0 0 0 0
B: REL=103

I: Bus=0000 Vendor=0000 Product=0000 Version=0000
N: Name="HDA ATI SB Headphone"
P: Phys=ALSA
S: Sysfs=/devices/pci0000:00/0000:00:14.2/sound/card0/input4
U: Uniq=
H: Handlers=event4 
B: PROP=0
B: EV=21
B: SW=4
Ecco il risultato  (good)
                          Buonagiornata
                                                        edino

                                         

Re: creare uno script come utente root

Inviato: mercoledì 12 ottobre 2011, 13:39
da lihin
Ok, mi sa che questa volta ci siamo.
Come ti avevo indicato sopra, nell'intiscript fornito dal pacchetto, è necessario configurare anche la tastiera (il programma in sé non lo richiederebbe, cercando di determinarla da sé se non indicata esplicitamente, ma è stato aggiunto per garantirne il funzionamento nelle situazioni in cui il riconoscimento automatico dovesse fallire, soprattutto con periferiche usb... è tutto documentato nel sito del progetto).

La tastiera da monitorare dovrebbe essere questa:

Codice: Seleziona tutto

I: Bus=0011 Vendor=0001 Product=0001 Version=ab41
N: Name="AT Translated Set 2 keyboard"
P: Phys=isa0060/serio0/input0
S: Sysfs=/devices/platform/i8042/serio0/input/input2
U: Uniq=
H: Handlers=sysrq kbd event2 
B: PROP=0
B: EV=120013
B: KEY=10000 c0200 0 0 0 0 0 700f 2000003 3803078 f830f401 febfffdf ffefffff ffffffff fffffffe
B: MSC=10
B: LED=7
Di conseguenza, seguendo le indicazioni del README, dovresti configurare indicando per essa l'event2:

Codice: Seleziona tutto

gksudo gedit /etc/default/logkeys

Codice: Seleziona tutto

ENABLED=1
LOGFILE=/var/log/logkeys

# This should be updated according to your hardware
# Check README.Debian for more info
DEVICE=/dev/input/event2
Ciao

Re: creare uno script come utente root

Inviato: mercoledì 12 ottobre 2011, 23:27
da edino
Ok ho sostituito

Codice: Seleziona tutto

DEVICE=/dev/input/event2
Ora se lancio suddo logkey -s mi dice che è gia in uso ma nella cartella che solitamente trovo tutto

Codice: Seleziona tutto

/var/log/logkeys.log
Non c'è niente  di nuovo mi dice solo quando è stato fermato il programma
Buonaserata

                                      edino