OS X determina quale applicazione sta accedendo a un HDD e impedendo l'espulsione?


17

Sto eseguendo OS X 10.6 Server e voglio espellere il mio disco esterno in modo da poter fare un po 'di manutenzione del disco come deframmentarlo. Tuttavia, quando provo a espellere l'unità, non riesce a dire che il disco è in uso. Posso forzare l'espulsione ma ciò potrebbe causare il danneggiamento ... Come posso sapere quale applicazione sta utilizzando l'unità e la tiene aperta?

Risposte:


25

Prova sudo lsof | grep /Volumes/External, dove "Esterno" sarebbe il nome del tuo disco esterno. Stai ospitando dei dati di servizi al di fuori di tale unità?


Solo alcune cartelle condivise, ma so che tutti i client sulla rete avevano espulso quelle condivisioni e l'intero server.
Jamone,

Non importa sempre. A volte i processi AFP / SMB / NFS / FTP / etc lasceranno file aperti solo perché il servizio è in esecuzione. La soluzione migliore è provare a interrompere il servizio, quindi espellere. Sarebbe meglio che usare il comando sopra insieme a kill -9. È possibile interrompere un servizio dalla riga di comando tramite qualcosa di simile sudo serveradmin stop smb, quindi avviarlo da sudo serveradmin start smbdove "smb" è il nome del servizio. sudo serveradmin listli mostrerò tutti.
sfornato il

Normalmente è roba di indicizzazione Spotlight!
JGFMK,

5

lsof - Elenco dei file aperti

A tuo comando, basta digitare sudo lsofper visualizzare un elenco di file aperti e la loro posizione e ID processo in modo da poter terminare il processo.

Per perfezionarlo un po ', potresti usarlo sudo lsof | grep hard drive name.

Una volta che hai il pid sudo kill -9 pidper uccidere il processo cattivo.


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.