Perché il mio terminale non mostra il messaggio 'ultimo accesso'?

5

Terminal.app sul mio mac usato per mostrare Last login: <date time> on ttys000 come prima riga. Tuttavia, quando l'ho aperto questa settimana, ho notato che non mostrava il messaggio. È normale o ho fatto qualcosa di sbagliato?

Ho provato a riavviare mac e ho provato a "riparare i permessi del disco" in Utility Disco, ma nessuno dei due ha risolto il problema. Ho trovato che ~/.hushlogin sopprime il messaggio, ma non è stato trovato alcun file simile quando ho provato ls -la ~ .

Sto usando OS X 10.8.5.

Modifica
Ho installato GPG Suite lo scorso fine settimana. Ha qualcosa a che fare con il problema?

Aggiornamento:
Penso che questo problema sia a livello di sistema, perché è riprodotto nell'account Guest. Sospetto che il file di registro dell'ultimo accesso possa essere danneggiato. È possibile? Come posso verificarlo?

Aggiornamento 2: Ho provato ad aprire un'altra finestra mentre eseguivo sudo opensnoop -ve -n login . Ho scoperto che login non è riuscito ad aprire alcuni file in /var/log/asl/ e i "valori errno" erano "24".

Aggiornamento 3: Ho scoperto che errno 24 significava "troppi file aperti" e ho provato a ridurre i file di registro di sudo aslmanager . Questo ha risolto il problema! Non so perché questi file di registro siano rimasti non cancellati però.

    
posta john 28.01.2014 - 07:43
fonte

2 risposte

1

login dovrebbe visualizzare quel messaggio a meno che non venga eseguito con l'opzione '-q' o il file '.hushlogin' esista.

Sarebbe utile conoscere la riga di comando per il login.

Al prompt dei comandi vai ps ax | grep login e dovresti ottenere una linea per ogni finestra di Terminale aperta che legge qualcosa del tipo:

login -pf <username> 

o

login -pfl <username> exec -la bash /bin/bash

Scoprilo e guarda cosa dice.

bash e i suoi profili non hanno nulla a che fare con la visualizzazione di quel messaggio. Anche l'impostazione della preferenza "Shell" non fa alcuna differenza poiché login viene eseguito indipendentemente da come è impostato.

Se il login non viene eseguito con un'opzione -q, allora sta succedendo qualcos'altro. Se provi type -a login non dovresti ottenere altro che login is /usr/bin/login . Vorrei anche verificare che ~/.hushlogin non esista.

    
risposta data 29.01.2014 - 02:18
fonte
0

Controlla le impostazioni, ~ / .bashrc e ~ / .bash_profile

Potresti aver inavvertitamente cambiato le seguenti impostazioni nelle tue preferenze, a cui puoi accedere dal menu:

Terminale > Preferenze ...

o premendo i tasti + , .

L'impostazione che stai cercando si trova nella scheda "shell". Se il pulsante Esegui comando è spuntato in Avvio, potrebbe essere il tuo problema.

Se non è così, controllerei il contenuto dei seguenti file:

~ / .bashrc; e

~ / bash_profile

    
risposta data 28.01.2014 - 13:19
fonte

Leggi altre domande sui tag