Rapporto processi bloccati macOS spindump: come crearlo
Il comando spindump di macOS crea un rapporto diagnostico mostrando le attività e le chiamate in esecuzione quando un’app o un processo sembra bloccato. Il rapporto processi bloccati macOS spindump è utile per analizzare applicazioni che non rispondono, servizi che consumano risorse o operazioni apparentemente ferme senza generare un vero arresto anomalo. La procedura richiede il PID del processo e, nella maggior parte dei casi, l’autorizzazione amministrativa tramite sudo. Il risultato viene salvato in un file di testo consultabile o condivisibile con l’assistenza tecnica.
A cosa serve spindump e quali dati raccoglie
spindump è uno strumento integrato in macOS che acquisisce campioni dello stato di un processo o del sistema per un intervallo definito. Il comando non “sblocca” l’applicazione e non corregge il problema: documenta ciò che il processo sta facendo mentre è rallentato, inattivo o non risponde.
Un rapporto processi bloccati macOS spindump può contenere informazioni come:
- Il nome del processo e il relativo identificativo numerico, chiamato PID.
- I thread attivi durante la raccolta dei campioni.
- Le funzioni presenti nello stack di ciascun thread.
- Le attese su file, rete, disco, memoria o altri processi.
- Eventuali informazioni utili per collegare il blocco a un componente di sistema o a un’estensione.
Il rapporto è diverso da un resoconto di arresto anomalo. Un crash report viene prodotto quando un processo termina in modo inatteso, mentre spindump fotografa l’attività di un processo ancora in esecuzione. Per questo motivo è più indicato quando un’applicazione resta congelata, mostra la rotellina colorata o non completa un’operazione.
La quantità di dettagli dipende dalla versione di macOS, dal processo analizzato e dai permessi disponibili. Nelle versioni recenti di macOS, le protezioni della privacy possono limitare l’accesso ai dati di alcune app o di processi appartenenti ad altri utenti.
Come trovare il PID del processo bloccato
Il PID è il numero che identifica il processo durante la sessione corrente di macOS. È possibile recuperarlo da Monitoraggio Attività oppure da Terminale; il valore può cambiare dopo la chiusura e la riapertura dell’app.
Individuare il PID con Monitoraggio Attività
Apri Monitoraggio Attività dalla cartella Applicazioni > Utility, quindi cerca l’applicazione o il servizio che non risponde. Se la colonna PID non è visibile, fai clic con il tasto destro sull’intestazione delle colonne e abilita PID. Annota il numero associato al processo corretto.
Il nome visualizzato può non coincidere con il nome dell’app. Per esempio, un’applicazione con interfaccia grafica può utilizzare processi secondari con nomi diversi. Prima di eseguire spindump, verifica che il PID appartenga davvero al processo bloccato e non a un componente di sistema non correlato.
Individuare il PID con Terminale
Apri Terminale da Applicazioni > Utility e usa pgrep seguito dal nome del processo:
pgrep -x "NomeProcesso"
Se non conosci il nome esatto, puoi usare:
ps -ax | grep -i "termine"
Il comando ps può mostrare più righe, inclusa quella relativa a grep. Il PID è il primo valore numerico della riga del processo; controlla sempre il nome completo prima di usarlo nel rapporto diagnostico.
Come creare un rapporto processi bloccati macOS spindump
La procedura seguente salva il rapporto sulla Scrivania con un nome riconoscibile. Sostituisci 1234 con il PID reale e 10 con la durata della raccolta espressa in secondi.
Passo 1: aprire Terminale e avviare la raccolta
Esegui il comando seguente:
sudo spindump 1234 10 -file ~/Desktop/spindump-processo.txt
Terminale chiederà la password dell’account amministratore. Durante la digitazione non compariranno caratteri né asterischi: è il comportamento normale della shell. Premi Invio dopo aver inserito la password.
Il comando chiede a spindump di analizzare il processo con PID 1234, raccogliere dati per 10 secondi e salvare il risultato nel file spindump-processo.txt sulla Scrivania. Se la raccolta termina senza errori, il file può essere aperto con TextEdit o con un editor di testo.
Per acquisire dati senza specificare un singolo processo, puoi usare una raccolta a livello di sistema:
sudo spindump 10 -file ~/Desktop/spindump-sistema.txt
Un rapporto esteso a tutto il sistema può includere più informazioni, ma anche produrre un file meno immediato da leggere. Per un’applicazione bloccata è preferibile indicare il PID quando è disponibile.
Passo 2: attendere la fine della raccolta
Non chiudere Terminale mentre spindump è in esecuzione. Durante la procedura il processo osservato potrebbe continuare a non rispondere; questa condizione è utile perché il rapporto deve rappresentare il problema nel momento in cui si verifica.
La durata esatta e le opzioni accettate possono variare tra le versioni di macOS. Per consultare la sintassi installata sul Mac, esegui:
man spindump
La pagina del manuale locale è il riferimento più affidabile per il sistema in uso. Per uscire dalla schermata del manuale premi q.
Passo 3: verificare il file generato
Controlla la presenza del rapporto sulla Scrivania con:
ls -lh ~/Desktop/spindump-processo.txt
Per visualizzare rapidamente le prime righe del file puoi usare:
head -n 40 ~/Desktop/spindump-processo.txt
Se il file non viene creato, verifica il percorso indicato in -file, la disponibilità dei privilegi amministrativi e il nome del processo. Alcune configurazioni di macOS possono inoltre richiedere autorizzazioni aggiuntive in Impostazioni di Sistema > Privacy e sicurezza, soprattutto quando l’analisi riguarda processi protetti o applicazioni di altri utenti.
Come leggere il rapporto diagnostico
Il rapporto contiene sezioni tecniche che descrivono il processo osservato e i suoi thread. La parte più utile per una prima analisi è spesso quella relativa agli stack, perché mostra le funzioni attraversate da un thread quando è stato campionato.
Cerca il nome dell’applicazione, il PID e le righe che indicano lo stato dei thread. Un thread ripetutamente fermo su operazioni di input/output può suggerire un’attesa su disco, rete o dispositivo esterno. Un thread associato a funzioni di sincronizzazione può invece indicare un’attesa interna tra componenti dell’applicazione.
Il rapporto non consente sempre di identificare da solo la causa del blocco. Molti nomi di funzioni possono apparire privi di dettagli quando il processo è protetto, quando mancano i simboli di debug o quando la versione di macOS non riesce a risolverli. La presenza di una funzione di sistema nel rapporto non dimostra automaticamente che macOS sia responsabile: l’applicazione può aver chiamato quella funzione durante un’operazione iniziata altrove.
Per una diagnosi più utile, conserva anche queste informazioni:
- Nome e versione dell’applicazione bloccata.
- Versione di macOS installata, ad esempio macOS Sequoia 15 o macOS Tahoe 26.
- Operazione eseguita prima del blocco.
- Ora approssimativa dell’evento.
- Eventuali periferiche, dischi di rete o monitor esterni coinvolti.
Condividi il file solo con destinatari affidabili. Un rapporto diagnostico può contenere nomi di file, percorsi locali, nomi utente, identificativi di processo e dettagli sull’ambiente del Mac. Prima dell’invio, apri il documento e rimuovi le informazioni personali non necessarie.
Se l’applicazione è completamente congelata e vuoi raccogliere dati dall’interfaccia grafica, Monitoraggio Attività offre anche il comando Vista > Esegui diagnostica per il sistema o un’opzione equivalente, la cui disponibilità può cambiare tra le versioni di macOS. spindump resta invece adatto quando vuoi specificare un PID, una durata e un percorso di salvataggio direttamente da Terminale.
Il rapporto processi bloccati macOS spindump è più efficace quando viene raccolto mentre il problema è ancora presente e viene accompagnato da versione dell’app, passaggi riproducibili e orario dell’evento.
Potrebbe interessarti anche:
FAQ
No. spindump raccoglie dati diagnostici, ma non termina né ripara il processo analizzato.
Per analizzare processi protetti o ottenere dati più completi è normalmente necessario usare sudo. Un’analisi senza privilegi può restituire informazioni parziali o non riuscire.
Il percorso dipende dall’opzione -file. Con -file ~/Desktop/spindump-processo.txt, il rapporto viene salvato sulla Scrivania dell’utente corrente.
Alcune versioni di spindump accettano un nome o una parte del nome del processo, ma il PID è più preciso e riduce il rischio di analizzare il componente sbagliato.
macOS può non risolvere alcuni simboli per processi protetti, componenti privi di simboli di debug o software di terze parti.
Altri articoli di questa serie:
- Mostrare file nascosti macOS Terminale: comando rapido
- Disattivare riapertura finestre macOS: metodo rapido
- Personalizzare anteprime icone Finder con defaults
- Percorso completo Finder macOS nella barra del titolo
- Disattivare DS_Store unità di rete Mac: metodo rapido
- Ricerca metadati Spotlight Terminale con mdls e mdfind
- Ricostruire indice Spotlight macOS Terminale
- Controllare consumo energetico Mac Terminale con powermetrics
- Trovare i processi che rallentano il Mac da Terminale
- Controllare la pressione memoria macOS Terminale
- Come misurare l’avvio lento delle app su Mac
- Leggere log macOS da Terminale: comandi utili
- Verificare firma applicazioni macOS Terminale
- Permessi privacy delle app Mac: come controllarli
- Gestire programmi avvio automatico macOS con launchctl
- Creare servizio launchd macOS per attività periodiche
- Confrontare cartelle macOS Terminale con diff
- Rinominare file in massa su macOS dal Terminale
- Proteggere file sensibili su macOS dal Terminale
