Vedi domanda simile da 3 anni fa, Esiste un equivalente Mac per la cartella UDEV su linux? , ma ho requisiti diversi. Spero che questo sia diventato più facile se non almeno possibile.
Quello che sto cercando è una funzionalità molto simile a UDEV. Ho quattro scrittori di DVD basati su USB a cui desidero assegnare nomi di dispositivi specifici quando vengono connessi:
- ASUS SDRW-08D1S-U (VendorID 0x13fd, ProductID 0x1640, SerialNumber 00101016400000005)
- LG GP60 (VendorID 0x0e8d, ProductID 0x1887, SerialNumber KX1Z85H3811)
- LG GP60 (VendorID 0x0e8d, ProductID 0x1887, SerialNumber KZ3Z8683700)
- Samsung (VendorID 0x0e8d, ProductID 0x1806, SerialNumber S1736YAF4001CP)
All'avvio del sistema assegnerà (generalmente) questi dispositivi / dev / disk2,3,4,5, ma l'ordine apparentemente è casuale. Per varie ragioni vorrei avere il riavvio dei nomi dei dispositivi. In Linux avrei impostato le regole UDEV per fare questo e "lavoro fatto", ad esempio:
SUBSYSTEM="usb", ATTRS{idVendor}="13fd", ATTRS{idProduct}="1640", ATTRS{serial}="00101016400000005", NAME="writer1"
SUBSYSTEM="usb", ATTRS{idVendor}="0e8d", ATTRS{idProduct}="1887", ATTRS{serial}="KX1Z85H3811", NAME="writer2"
SUBSYSTEM="usb", ATTRS{idVendor}="0e8d", ATTRS{idProduct}="1887", ATTRS{serial}="KZ3Z8683700", NAME="writer3"
SUBSYSTEM="usb", ATTRS{idVendor}="0e8d", ATTRS{idProduct}="1806", ATTRS{serial}="S1736YAF4001CP", NAME="writer4"
Ma non riesco a vedere alcun modo per fare qualcosa di simile su OS X.
Il metodo diskutil activity
non funzionerà per questo poiché i nomi dei dispositivi logici sono già stati assegnati. A questo punto della catena Media / Volumi vengono montati e sono le notifiche di montaggio del file system che vengono trasmesse da diskutil
. Quello che sto cercando è un modo per costringere IOKit, sotto il framework DiskArbitration, ad assegnare nomi di dispositivi specifici prima che inizi a rilevare e montare partizioni e file system.
C'è un modo semplice per farlo (file di configurazione)? O dovrò ricorrere a scrivere un driver kext per impostare BSDName (simile a SampleUSBAudioOverrideDriver impostazione dei nomi visualizzati)?