script automatici udev

Postate qui per tutte le discussioni legate a Linux in generale.

Moderatore: Staff

Regole del forum
1) Citare sempre la versione di Slackware usata, la versione del Kernel e magari anche la versione della libreria coinvolta. Questi dati aiutano le persone che possono rispondere.
2) Per evitare confusione prego inserire in questo forum solo topic che riguardano appunto Gnu/Linux in genere, se l'argomento è specifico alla Slackware usate uno dei forum Slackware o Slackware64.
3) Leggere attentamente le risposte ricevute
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
Rispondi
Daniele79
Linux 0.x
Linux 0.x
Messaggi: 15
Iscritto il: mar 10 mag 2005, 0:00

script automatici udev

Messaggio da Daniele79 »

ciao,
vorrei creare uno script che venga eseguito da udev quando collego una chiavetta usb.

ho letto che devo mettere lo script in una sottocartella di /etc/dev.d che abbia il nome del dispositivo.

quello che vorrei è uno script generico che si esegua ogni volta che collego un dispositivo senza dover specificare esattamente se sda1,2,3 etc...

diciamo una regola generica per tutti gli sd** che collego.

avete idee ??

Avatar utente
tgmx
Linux 4.x
Linux 4.x
Messaggi: 1336
Iscritto il: ven 28 apr 2006, 14:40
Slackware: 14.1
Desktop: KDE 4
Località: Ancona

Messaggio da tgmx »

Avevo letto una volta un articolo su linux magazine. L'avevo anche provato e funzionava bene ma ora non ricordo ne come si faceva e neanche dove ho messo quel numero della rivista :) .

Avatar utente
Luke88
Linux 3.x
Linux 3.x
Messaggi: 624
Iscritto il: mer 7 set 2005, 0:00
Slackware: 13.0
Kernel: 2.6.30-zen4
Desktop: xfce4
Località: Udine

Messaggio da Luke88 »

cosa deve fare lo script? se deve solo montare la periferica puoi usare autofs.

comunque quello che ho fatto io è stato aggiungere alla fne di /etc/udev/rules.d/udev.rules questo:

Codice: Seleziona tutto

KERNEL=="ath0", RUN="/etc/rc.d/rc.inet1 ath0"
quindi per te può diventare

Codice: Seleziona tutto

BUS=="scsi", KERNEL=="sd*", RUN="PATH/AL/TUO/SCRIPT"
io uso i pacchetti udev di Piter Punk, non so se è diverso con altre versioni di udev.

P.S.: google e man ti sono amici :P
Meeting efficency = Average_Intelligence/( Number_Of_People^2 )

Daniele79
Linux 0.x
Linux 0.x
Messaggi: 15
Iscritto il: mar 10 mag 2005, 0:00

Messaggio da Daniele79 »

Luke88 ha scritto:cosa deve fare lo script? se deve solo montare la periferica puoi usare autofs.

comunque quello che ho fatto io è stato aggiungere alla fne di /etc/udev/rules.d/udev.rules questo:

Codice: Seleziona tutto

KERNEL=="ath0", RUN="/etc/rc.d/rc.inet1 ath0"
quindi per te può diventare

Codice: Seleziona tutto

BUS=="scsi", KERNEL=="sd*", RUN="PATH/AL/TUO/SCRIPT"
io uso i pacchetti udev di Piter Punk, non so se è diverso con altre versioni di udev.

P.S.: google e man ti sono amici :P

Grazie mille !!! funziona benissimo. Mi servirebbe ancora un'aiutino : come paffio a contare quanti caratteri è lungo il contenuto di una variabile ?? cioè se io al mio scrip passo un parametro $1 come posso verificare che sia composto da più di 3 caratteri ??

grazie.

Avatar utente
dapuzz
Linux 4.x
Linux 4.x
Messaggi: 1137
Iscritto il: mar 16 mag 2006, 11:09
Contatta:

Messaggio da dapuzz »

Codice: Seleziona tutto

#:docstring strlen:
# Usage: strlen s
#
# Strlen returns the number of characters in string literal s.
#:end docstring:

###;;;autoload
function strlen ()
{
    eval echo "\${#${1}}"
    # ==> Returns the length of the value of the variable
    # ==> whose name is passed as an argument.
}
preso da
http://www.tldp.org/LDP/abs/html/contri ... tml#STRING

Super edit:
${#string} è prorio la lunghezza della stringa :)

Rispondi