Come scoprire quale processo sta usando un disco su Mac

Il Mac non espelle il disco? Ecco come scoprire esattamente quale processo lo sta bloccando, usando Monitoraggio Attività, il Terminale e un metodo più rapido con un solo clic.

Quando macOS si rifiuta di espellere un disco esterno, ti avvisa che qualcosa lo sta usando, e poi si ferma lì. Nessun nome, nessun riferimento, nessun indizio. Scoprire il colpevole da soli richiede qualche passaggio, ma è del tutto fattibile. Questa guida illustra ogni metodo, dagli strumenti integrati di Apple ai comandi del Terminale che fanno emergere ciò che l’interfaccia grafica nasconde.

Perché macOS non te lo dice e basta

È una frustrazione concreta, non un errore dell’utente. macOS ha sempre mostrato l’errore «Disco in uso» senza indicare il processo responsabile. Il sistema operativo sa quale processo mantiene aperto un file sul volume, semplicemente non rende disponibile quell’informazione nel Finder o nella finestra di espulsione.

Il risultato: chiudi ogni app visibile, non cambia nulla e il disco continua a non espellersi. Come spiegato nella guida alla risoluzione dell’errore «Disco in uso» su macOS, il responsabile è spesso un processo in background — l’indicizzazione di Spotlight, QuickLook che genera le anteprime o un daemon di sincronizzazione cloud — anziché qualcosa che penseresti di chiudere manualmente.

Metodo 1: Monitoraggio Attività (limitato, ma un punto di partenza)

Monitoraggio Attività è il primo posto in cui la maggior parte delle persone guarda. Non è l’ideale per questo compito specifico, ma può aiutare a restringere il campo.

  1. Apri Monitoraggio Attività (Applicazioni → Utility → Monitoraggio Attività, oppure cercalo con Spotlight).
  2. Fai clic sulla scheda Disco in alto.
  3. Ordina per Byte letti o Byte scritti per vedere quali processi stanno effettivamente leggendo o scrivendo.

Il problema: Monitoraggio Attività mostra l’attività su tutti i volumi, non solo sul tuo disco esterno. Un processo in cima all’elenco potrebbe star scrivendo sull’SSD interno, non sul disco USB. Qui non puoi filtrare per volume.

In ogni caso, se noti qualcosa di inaspettato — un daemon di backup, un’app multimediale, un servizio di sincronizzazione — vale la pena chiuderlo e riprovare a espellere.

Metodo 2: il Terminale con lsof (l’approccio affidabile)

lsof sta per «list open files» (elenca i file aperti) e, su macOS, ogni volume montato è un percorso di file. Questo comando ti mostra tutti i processi che hanno un riferimento aperto su un determinato disco.

Trova il punto di montaggio del disco

Per prima cosa, conferma il nome esatto del disco così come lo vede macOS:

ls /Volumes/

Questo elenca tutti i volumi montati. Il tuo disco esterno comparirà qui: annota il nome esatto, comprese maiuscole e spazi.

Esegui lsof sul volume

lsof /Volumes/NomeDelTuoDisco

Sostituisci NomeDelTuoDisco con il nome reale del volume. L’output elenca ogni processo con un file aperto su quel volume, tra cui:

  • COMMAND — il nome del processo
  • PID — l’identificativo del processo
  • USER — l’account utente che lo sta eseguendo
  • NAME — il percorso specifico del file a cui si accede

Cosa vedrai in genere

Colpevoli comuni che compaiono nell’output di lsof:

  • mds o mds_stores — indicizzazione di Spotlight
  • QuickLookUIService — generazione delle anteprime di QuickLook
  • cloudd, bird o com.apple.iCloudDrive — sincronizzazione di iCloud
  • backupd — Time Machine
  • Finder — finestre del Finder aperte che puntano al disco
  • App multimediali come Final Cut Pro o Premiere che hanno file di progetto aperti

Suggerimento: se lsof non restituisce alcun output, prova a eseguirlo con sudo per ottenere permessi elevati: sudo lsof /Volumes/NomeDelTuoDisco. Alcuni processi di sistema compaiono solo con accesso root.

Per un approfondimento su ciò che lsof può fare — incluso il filtraggio per PID e la chiusura dei processi direttamente da riga di comando — consulta Il comando lsof spiegato agli utenti Mac.

Chiudi il processo dal Terminale

Una volta ottenuto il PID, puoi chiudere il processo:

kill -15 <PID>

Se non risponde, passa a un’uscita forzata:

kill -9 <PID>

Poi riprova a espellere il disco.

Metodo 3: fuser come alternativa

fuser è un altro comando del Terminale che segnala quali processi stanno usando un file o un file system. È meno dettagliato di lsof, ma più rapido da leggere:

sudo fuser /Volumes/NomeDelTuoDisco

L’output è semplicemente un elenco di PID. Per ottenere anche i nomi dei processi, combinalo con ps:

sudo fuser /Volumes/NomeDelTuoDisco | xargs ps -p

È utile quando vuoi una risposta rapida senza dover analizzare una lunga tabella di lsof.

Processi che bloccano comunemente il disco e come gestirli

Spotlight (mds, mds_stores)

Spotlight indicizza automaticamente i nuovi dischi. Se colleghi un disco di grandi dimensioni, l’indicizzazione può durare minuti o ore. Puoi interromperla temporaneamente aprendo Impostazioni di Sistema → Siri e Spotlight → Privacy di Spotlight e aggiungendo il disco all’elenco delle esclusioni. In alternativa, chiudi mds dal Terminale: Spotlight si riavvierà da solo più tardi.

QuickLook (QuickLookUIService)

QuickLook genera le anteprime quando esplori un disco nel Finder. Può mantenere aperti dei file anche dopo che hai chiuso la finestra del Finder. QuickLook tiene il tuo disco in ostaggio lo spiega nel dettaglio: la soluzione rapida è chiudere il processo QuickLook dal Terminale o con uno strumento dedicato.

iCloud e Dropbox

I servizi di sincronizzazione trattano i dischi esterni come qualsiasi altra cartella se vi hai memorizzato dati di sincronizzazione. Mantengono i file aperti durante il caricamento o la risoluzione dei conflitti. Come impedire a iCloud e Dropbox di bloccare l’espulsione del disco spiega come mettere in pausa la sincronizzazione prima di espellere.

Finder

Il Finder stesso può bloccare l’espulsione se hai una finestra aperta che mostra il contenuto del disco, oppure se è in corso una copia di file. Chiudi tutte le finestre del Finder che puntano al disco, oppure forza l’uscita del Finder e riavvialo dal menu Apple.

App multimediali e creative

Final Cut Pro, Premiere, Logic e app simili mantengono aperti i file di progetto finché il progetto è caricato. Chiudi il progetto — non solo la finestra dell’app — prima di espellere. Consulta Usare dischi esterni con Final Cut Pro senza problemi di espulsione per consigli specifici sul flusso di lavoro.

Perché il Terminale è scomodo per l’uso quotidiano

L’approccio con lsof funziona, ma comporta degli attriti. Devi:

  1. Aprire il Terminale
  2. Conoscere il nome esatto del volume
  3. Interpretare un output poco familiare
  4. Cercare PID e nomi dei processi
  5. Eseguire un comando kill separato
  6. Tornare al Finder per espellere

Se sei uno sviluppatore o un sistemista che vive nel Terminale, va benissimo. Se sei un montatore video o un utente Mac di tutti i giorni che vuole solo scollegare un disco in sicurezza, sono troppi passaggi per un’operazione che dovrebbe richiedere due secondi.

Attenzione: evita di strappare il disco senza espellerlo anche se hai fretta: può danneggiare il file system, soprattutto su dischi formattati in exFAT o NTFS. I rischi sono reali e descritti nel dettaglio in Scollegare un disco esterno senza espellerlo può danneggiarlo?

Il metodo più rapido: vedi il processo bloccante a colpo d’occhio

Ejecta fa esattamente ciò che fa lsof, ma mostra il risultato nella barra dei menu nel momento esatto in cui ti serve. Fai clic sull’icona, vedi quale processo sta trattenendo il disco, fai clic per chiuderlo ed espelli — niente Terminale, niente analisi di output, niente passaggi tra finestre.

Gestisce i casi che mandano più in difficoltà: Spotlight attivo in background, QuickLook che trattiene una cache di anteprime, un daemon di sincronizzazione che non molla la presa. Il nome del processo è lì, leggibile, con un’unica azione per risolvere.

Riferimento rapido: quale metodo usare

Situazione Metodo migliore
Vuoi capire cosa sta succedendo lsof nel Terminale
Ti serve una risposta rapida e occasionale fuser nel Terminale
Lo fai spesso e vuoi zero attriti App Ejecta nella barra dei menu
Stai risolvendo un processo di sistema ostinato sudo lsof + kill

Se ti scontri spesso con il muro del «Disco in uso», scarica Ejecta e tieni il nome del processo bloccante a un clic di distanza — senza Terminale.