A volte ho bisogno di condividere file con più persone contemporaneamente. E mi è capitato di avere un Raspberry Pi, che può essere utilizzato come un file server wireless. Così ho provato a trasformare il mio Pi in qualcosa di simile a una chiavetta wireless SanDisk Connect , con cui più utenti con vari dispositivi possono accedere allo stesso file contemporaneamente tramite WiFi. Quindi avevo una chiavetta USB inserita nel mio Pi, avevo l'unità montata automaticamente all'avvio e poi condividevo il punto montato con Samba, e funzionava perfettamente.
Tuttavia, ho deciso di farlo in un modo più aggressivo: spero che il Pi possa rilevare le nuove unità USB collegate in tempo reale, montare automaticamente queste unità e condividerle via Samba. In questo modo, il sistema di condivisione diventa "dinamico", in quanto posso aggiungere capacità e file al sistema senza riavviare Pi e ostacolare i file di configurazione.
E qui ci sono le mie operazioni:
-
Crea una directory del portale in
/opt
(/opt/portal
), cambia il proprietario in me stesso, quindi condividi/opt/portal
tramite Samba. -
Scrivi uno script python per il controllo del montaggio.
- Lo script python controlla gli eventi hardware.
- Una volta inserita una nuova unità USB, rileva l'etichetta delle partizioni sull'unità, quindi crea nuove cartelle con il nome dell'etichetta in
/opt/portal
. Ad esempio, se l'etichetta della partizione (/dev/sda1
) è "KINGSTON", la cartella creata sarà/opt/portal/KINGSTON
. - Monta la partizione nella cartella appena creata.
È risultato che funziona perfettamente e ora posso leggere / scrivere queste unità montate dinamicamente e condivise sul mio iPad. Tuttavia, quando ho provato ad accedere a queste unità dal mio Mac, è successo qualcosa di strano. Ho collegato il mio Mac al mio Pi tramite "Connetti al server" in Finder e ho potuto aprire la cartella portal
e vedere le unità montate e condivise in portal
. Ma c'è un'icona di divieto sull'unità montata, in questo modo:
Enoneroingradodiaprirloevedereicontenutinelmiodisco.
All'iniziopensavochedovesseroesserciproblemiconlamiaconfigurazionediSamba,oilmioscriptPython.Madopoalcuneindagini,possodirecheèmoltoprobabilechesialacolpadelFinder,perunpaiodimotivi:
- FunzionaperfettamenteconilmioiPad.
- Ilproblemaèaltamenteriproducibile,manonriproducibileal100%.Avolteinseriscoun'unitànelmioPieriescoaleggere/scriverel'unitàtramiteSambanelFinder.
- Sescelgo"Connetti server" nel Finder e digito
smb://my-pi.local/portal/KINGSTON
, verrà aperta una nuova finestra del Finder che mi indirizzerà direttamente al disco e posso accedere al mio disco. - L'ultimo, e il più convincente, è che posso accedere a queste unità dal terminale senza problemi. La cartella condivisa,
portal
, è stata montata correttamente su/Volumes/portal
con le impostazioni di autorizzazione appropriate (drwx ------) e posso solocd KINGSTON
, quindi leggere e scrivere i miei file in termini termici. E poiché qualsiasi modifica è stata apportata all'unità nel terminale (ad esempiotouch test.txt
), il logo del ban scompare immediatamente e posso accedere all'unità in Finder.
Mi chiedo se qualcuno abbia mai provato qualcosa di simile o uguale.
Grazie.