Chi non vorrebbe averla una usb key come questa:
Posted in pensieri, Varie, Video YouTube, tagged chiavetta, demenziale, dog, figo, humping dog, key, USB on lunedì 23 giugno 2008| 4 Comments »
Posted in Informatica, tagged fstab, GNU, gnu linux, guida, guida fstab, guida udev, guida uuid, hal, harddisk esterni, howto, linux, montaggio, montaggio usb, periferiche usb, slackware, udev, USB, uuid on martedì 3 giugno 2008| 4 Comments »
# vol_id -u /dev/sd*?
dove * corrisponde alla lettera del vostro dispositivo e ? al numero della partizione che si vuole montare, esempio /dev/sdb1.
Da questo comando avrete come output un codice esadecimale che è appunto l’UUID del vostro dispositivo, o meglio di quella partizione del vostro dispositivo.
A questo punto andiamo ad inserirlo all’interno di fstab (/etc/fstab) in modo molto semplice, invece di usare la classica sintassi:
/dev/sda1 /mnt/mount tipoPartizione Opzioni
utilizziamo la sintassi:
/dev/disk/by-uuid/UUID /mnt/mount tipoPartizione Opzioni
Ora noi possiamo da terminale digitare:
# mount /mnt/mount
e il nostro dispositivo verrà automaticamente montato nella cartella stabilita. Ma se noi usiamo hald come montaggio, cioè quando inseriamo l’harddisk facciamo il montaggio automatico esso verrà si riconosciuto ma non montato nella cartella da noi specificata /mnt/mount, ma in una cartella /media/sd* che cambierà ogni volta in base alla lettera del nostro dispostivo. E quindi viene vanificato l’uso dell’UUID visto che per entrare nell’harddisk devo cambiare ogni volta il path.
Per ovviare a questo inconveniente creiamo delle regole per udev che vadano ad intercettare il nostro dispositivo durante il montaggio e creino la cartella di mount che desideriamo.
Diamo il seguente comando:
$ udevinfo -a -n /dev/sd*?
dove * è la lettera del dispositivo e ? il numero di partizione esempio /dev/sdb1
Questo comando ci stamperà a video una serie di informazioni che noi possiamo usare per identificare il nostro dispositivo, suddivise in blocchi, ogni blocco è diviso da una riga vuota. Per utilizzare queste regole bisogna creare un file di regole per udev e inserirlo nella cartella
/etc/udev/rules.d/
All’interno della cartella rules.d troviamo altre regole di udev tutte numerate, esse vengono eseguite in ordine alfabetico quindi per essere sicuri che la nostra regola venga eseguita gli anteponiamo 01, esempio 01-mieregole.rules
Dopo aver creato questo file lo apriamo con il nostro editor di testi preferito, vim nel mio caso, e inseriamo alcune informazioni che identifichino il nostro dispositivo, prese dall’output del comando dato in precedenza. Ad esempio possiamo usare questi attributi:
SUBSYSTEMS==”…”, ATTRS{product}==”…”, ATTRS{serial}==”…”
ovviamente al posto dei puntini ci vanno i valori dati sempre dall’output del comando precedente, attenzione: questi attributi non possiamo pescarli a caso dall’output ma vanno presi con un certo criterio, devono appartenere tutti allo stesso blocco. Vi consiglio di fare delle prove scollegando e ricollegando il dispositivo, controllando che gli attributi scelti restino invariati. Impostando questa regola diciamo ad udev che quando si collega un dispositivo con quell SUBSYSTEMS AND ATTRS{product} AND ATTRS{serial} deve fare determinate azioni.
Ora dobbiamo dire ad udev che una volta identificato il dispositivo con quegli attributi crei il dispositivo a blocchi con il nome da noi voluto, per far questo dobbiamo usare la variabile NAME:
SUBSYSTEMS==”…”, ATTRS{product}==”…”, ATTRS{serial}==”…”, NAME=”USB_key”
Ora cosa succede? niente di più bello e spettacolare che possa accadere e cioè:
Ciò cosa comporta?
Udev è un dispositivo molto potente, per maggiori trattazioni guardatevi il man 7 udev, ad udev potete pure dire di lanciare applicazioni, creare link simbolici al dispositivo (da usare al posto dell’UUID e montare con /dev/USB_key creato da noi, variabile SYMLINK+=”USB_key”) e quant’altro. Veramente versatile e potente da usare.
Questa guida è stata testata su slackware 12.1 con kde 3.5.9, non ho ne voglia ne tempo per testarla su altre distribuzioni, ogni danno che potrebbe creare ai vostri pc è voluto non era previsto.. 🙂
Io ho dovuto fare tutto ciò per avere un mount stabile, automatico, e dove volevo io. Spero vivamente che a voi vada meglio e semplicemtene inserendo una periferica USB vi venga montata sempre nello stesso posto oppure che voi vi accontentiate di fstab e un mount /mnt/cartella da shell, che poi male non è! 😀
HowTo rilasciato sotto Creative Commons..