Nodo Udev / dev / sda creato all'avvio anche quando l'unità è disconnessa


0

Modifica: vorrei semplificare un po 'la domanda:

Il problema principale è questo: / dev / sda viene creato all'avvio indipendentemente dal fatto che la mia unità USB sia inserita o meno. Se rm / dev / sda manualmente, udev funziona correttamente fino al riavvio, a quel punto / dev / sda appare magicamente di nuovo!

Segue la domanda originale:

Sto eseguendo una build Yocto Linux su una scheda integrata e ho riscontrato un problema.

Con una nuova build, quando inserisco un'unità USB nella scheda, viene visualizzato come / dev / sda e / dev / sda1 (fantastico!). Quando scollego l'unità, quelle voci scompaiono (anche alla grande!).

Il problema si verifica dopo aver copiato un file system radice duplicato sulla scheda tramite l'unità USB (in questo modo è possibile eseguire aggiornamenti di sistema completi sulla scheda). Tutto funziona bene fino al riavvio, quando all'improvviso / dev / sda e / dev / sda1 esistono indipendentemente dal fatto che l'unità USB sia inserita o meno.

Ho controllato le autorizzazioni e sembrano uguali in entrambi i casi. Ho provato a rimuovere i file ma riappaiono al prossimo riavvio. I due file non vengono copiati con il nuovo filesystem di root. La mia applicazione utilizza la presenza di quei file per determinare se un'unità è inserita, quindi è importante che funzionino correttamente.

Qualche idea?

Grazie

Marlon

Risposte:


1

Cambia il modo in cui controlli l'unità USB, perché questa non è affidabile.

Usa lsusbo controlla la /proc/scsi/usb-storagedirectory. In entrambi i modi puoi ottenere molte informazioni dal kernel, quindi puoi anche giocare con cose come passare a una logica diversa in base al fornitore o al numero di serie :)


Grazie per il commento. Non sono sicuro che lsusb mi dirà abbastanza informazioni, dal momento che non posso eseguire un comando mount basato esclusivamente sulle informazioni dall'output di lsusb (è necessario sapere dove si trova / dev). E / proc / scsi non esiste sul mio sistema. Udev non dovrebbe essere in grado di aggiungere o rimuovere il dispositivo in / dev in modo affidabile? Questo non è un problema prima di sovrascrivere il filesystem.
Marlon Smith,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.