UPDATE: Si scopre che è un modo per farlo non solo in macOS, ma in tutti i sistemi * NIX grazie a repository MVP su GitHub. Il programma si chiama uhubctl e ti consente di attivare e riaccendere l'alimentazione sia per le singole porte USB che per interi hub.
Come la descrizione implicherebbe, dovrai sapere a quale porta USB il dispositivo in questione è collegato (o far girare l'intero hub se sei sicuro che non causerà problemi con altre periferiche), e io consiglio comunque di utilizzare diskutil eject diskX
(o sudo umount /dev/sdX
per Linux e umount diskX
per BSD) prima di riaccendere la porta per garantire che il dispositivo venga smontato in modo pulito.
Il codice sorgente per uhubctl è qui
La pagina GitHub è qui
Dovrai compilarlo dalla fonte in un modo o nell'altro, sia con make
che tramite brew
. Qualunque sia la tua scelta, avrai bisogno di una versione più recente di libusb
di quella che è stata confezionata con macOS per compilarla. Se hai MacPorts e Brew installati puoi aggiornare libusb
alla versione 10.0.21 e installare uhubctl
in un solco fallo facendo quanto segue:
sudo port deactivate libusb
sudo port install libusb-devel
brew link --overwrite libusb
brew tap mvp/uhubctl https://github.com/mvp/uhubctl
brew install --HEAD uhubctl
Testato e in grado di confermare il funzionamento con hub USB Apple e di terze parti su macOS 10.13.1
P.S. @aeroxy Ho ammesso che tutto il tempo che avevi ragione, e che avevo torto.
Se vuoi smontarlo e avere il suo UDI (Unix Disk Identifier, cioè disk1s3
per la 3a partizione sul tuo secondo disco) puoi eseguire diskutil unmount diskXsX
dal terminale e rimontarlo usando il stesso comando, sostituendo unmount con mount.
Se stai usando Android Debug Bridge
per connetterti puoi aprire un terminale, andare a qualsiasi cartella in cui è installato ed eseguire ./adb stop
per spegnere il server Android USB locale, quindi ./adb start
per riconnetterti quando ti serve a.
Potresti anche usare Utility Disco per smontare il dispositivo.
Infine, se vuoi espellerlo per simulare lo scollegamento completo senza scollegarlo fisicamente, esegui diskutil eject diskXsX
dalla riga di comando, oppure fai clic con il pulsante destro del mouse su Utility Disco e fai clic sul pulsante "Rimuovi".
MODIFICA: se non si utilizza ADB o un programma simile come Android File Transfer (AFT), non sarà possibile disconnettere il dispositivo, poiché non è mai stato collegato in primo luogo. Affinché un dispositivo Android possa connettersi a un sistema Unix (e per estensione macOS) è necessario soddisfare due condizioni: 1.) Il dispositivo deve avere la modalità sviluppatore abilitata e il debug USB attivato, oppure il dispositivo annullerà automaticamente qualsiasi richieste da un altro computer per connettersi tramite USB. 2.) È necessario avere un programma come ADB o AFT installato, questi programmi eseguono un server MTP Android locale e sono richiesti per inviare la richiesta di connessione e leggere il filesystem del dispositivo Android.
La modalità sviluppatore può essere attivata andando a Settings>About Device>
e toccando Build Number
7 volte, il debug USB è nel menu delle opzioni sviluppatore che ora si trova nella parte inferiore della pagina delle impostazioni.
L'app AFT ufficiale per macOS può essere trovata qui: [link] ( link ) e la versione da riga di comando di ADB può essere trovato qui: [link] ( link )
Una volta che entrambi i prerequisiti sono stati soddisfatti, dovresti essere in grado di disconnettere il dispositivo senza disconnetterlo arrestando il server ADB o smontandolo / espellendolo come si farebbe con qualsiasi altro filesystem esterno.