[Risolto] creare uno script come utente root

Installazione, configurazione e uso di programmi e strumenti.
edino
Prode Principiante
Messaggi: 247
Iscrizione: domenica 2 settembre 2007, 20:19

[Risolto] creare uno script come utente root

Messaggio 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
Ultima modifica di edino il giovedì 13 ottobre 2011, 11:59, modificato 1 volta in totale.
lihin

Re: creare uno script come utente root

Messaggio 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
edino
Prode Principiante
Messaggi: 247
Iscrizione: domenica 2 settembre 2007, 20:19

Re: creare uno script come utente root

Messaggio da edino »

Chiedo venia.. :) x abilitarlo come devo fare?
edino
Prode Principiante
Messaggi: 247
Iscrizione: domenica 2 settembre 2007, 20:19

Re: creare uno script come utente root

Messaggio da edino »

Up ;)
Avatar utente
Stealth
Tenace Tecnocrate
Tenace Tecnocrate
Messaggi: 17368
Iscrizione: martedì 31 gennaio 2006, 22:55
Desktop: Gnome
Distribuzione: Ubuntu 22.04 LTS

Re: creare uno script come utente root

Messaggio 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
edino
Prode Principiante
Messaggi: 247
Iscrizione: domenica 2 settembre 2007, 20:19

Re: creare uno script come utente root

Messaggio 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 ;)
lihin

Re: creare uno script come utente root

Messaggio 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.
Ultima modifica di lihin il sabato 8 ottobre 2011, 14:26, modificato 1 volta in totale.
edino
Prode Principiante
Messaggi: 247
Iscrizione: domenica 2 settembre 2007, 20:19

Re: creare uno script come utente root

Messaggio 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

                                         
davide73
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 608
Iscrizione: giovedì 1 gennaio 2009, 17:17
Desktop: gnome
Distribuzione: Ubuntu 10.04.4 LTS i686
Località: Rimini

Re: creare uno script come utente root

Messaggio da davide73 »

un file .txt in una chiavetta che ti porti sempre con te?
;)
Davide
edino
Prode Principiante
Messaggi: 247
Iscrizione: domenica 2 settembre 2007, 20:19

Re: creare uno script come utente root

Messaggio 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?
lihin

Re: creare uno script come utente root

Messaggio 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
edino
Prode Principiante
Messaggi: 247
Iscrizione: domenica 2 settembre 2007, 20:19

Re: creare uno script come utente root

Messaggio 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
lihin

Re: creare uno script come utente root

Messaggio 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... ;)
nello79
Prode Principiante
Messaggi: 92
Iscrizione: mercoledì 17 febbraio 2010, 0:25

Re: creare uno script come utente root

Messaggio 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
edino
Prode Principiante
Messaggi: 247
Iscrizione: domenica 2 settembre 2007, 20:19

Re: creare uno script come utente root

Messaggio 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)
edino
Prode Principiante
Messaggi: 247
Iscrizione: domenica 2 settembre 2007, 20:19

Re: creare uno script come utente root

Messaggio 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  ;)
lihin

Re: creare uno script come utente root

Messaggio 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...).
edino
Prode Principiante
Messaggi: 247
Iscrizione: domenica 2 settembre 2007, 20:19

Re: creare uno script come utente root

Messaggio 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

                                         
lihin

Re: creare uno script come utente root

Messaggio 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
edino
Prode Principiante
Messaggi: 247
Iscrizione: domenica 2 settembre 2007, 20:19

Re: creare uno script come utente root

Messaggio 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
Scrivi risposta

Ritorna a “Applicazioni”

Chi c’è in linea

Visualizzano questa sezione: Bing [Bot] e 5 ospiti