Segui i registri di System & Kernel da Command Line in Mac OS X.

Se stai risolvendo alcuni dei problemi più difficili che puoi avere su un Mac, un buon posto dove guardare sono i log di sistema e kernel contenuti nell'app della console. Ma puoi anche accedere agli stessi log di OS X dal Terminale.


Perché preoccuparsi di leggere i registri di sistema dal terminale quando c'è un'app OS X per farlo in modo nativo nella GUI? Beh, ci sono molte ragioni, forse perché stai controllando i log da remoto con ssh, forse preferisci semplicemente il terminale, o, forse, le cose stanno davvero andando verso sud. In quest'ultima situazione, sfortunatamente ci sono momenti in cui non è possibile accedere alla Console perché la risoluzione dei problemi è remota, in modalità Utente singolo o anche perché i file di registro sono diventati così grandi da causare effettivamente l'arresto anomalo di Console.app quando si tenta di caricare (questo è successo a me più di una volta). Sì, di tanto in tanto, i problemi possono essere così gravi che persino il log della console di OS X non può essere aperto direttamente! Ma non temere se ciò ti accade, puoi comunque rintracciare e monitorare il registro di sistema di Mac OS X passando alla riga di comando del Mac.

Se ti trovi in ​​questa situazione, o per qualsiasi altro motivo che vorresti seguire il log di sistema della Console dalla riga di comando, qui è tutto ciò che devi digitare:

tail -f /var/log/system.log

Puoi fare lo stesso con il registro del kernel, che è ottimo se stai risolvendo problemi di hardware e connettività:

tail -f /var/log/kernel.log

Il comando tail -f consente di leggere e stampare il file specificato sullo schermo in un flusso live. Ci sono molti altri file di log che puoi seguire contenuti in / var / log ma i due precedenti sono generalmente i più utili per la risoluzione dei problemi.

Puoi anche usare il comando less sui file di log, in questo modo:

less /var/log/kernel.log

Una volta che il file di registro è stato aperto con meno, premere il tasto "F" per aggiornare continuamente il file di registro mentre si aggiorna dal vivo, rendendolo simile a tail -f in quanto offre un file di registro in costante aggiornamento per una facile visualizzazione.

Il comando syslog è un'altra opzione, ma piuttosto il firehose se stai eseguendo syslog incontrollato da grep, awk, more o less. Vedi di persona con:

syslog

Lo troverai un po 'travolgente e molto più gestibile collegandoti di più:

syslog |more

Il comando syslog è ben descritto con alcuni vantaggi, ma scopri di più con il flag -help, che ti mostrerà come esportare i contenuti di un file di registro, leggere log specifici, abbinare i registri ai processi e molto altro.

È anche possibile combinare questi comandi con GeekTool se si desidera visualizzare l'attività del registro di sistema direttamente sul desktop di Mac OS X. Oppure puoi semplicemente aprire una finestra di terminale sul Mac, renderla trasparente per alcune viste multitasking più semplici e per risolvere problemi di risoluzione, amministrazione o sviluppo.