Terminale Mac OS X non connesso


9

Sto eseguendo Mac OS X versione 10.6.3 e quando apro il terminale (con terminal.app o iterm) si blocca solo sul processo di accesso. Ho provato a riavviare, cambiando il comando di avvio in / bin / bash ed eliminando il file delle preferenze del terminale. Tutto inutilmente.

Risposte:


5

È possibile che tu abbia un bug nel tuo file .bashrc ... Puoi provare ad attaccare le istruzioni echo nel tuo .bashrc, o rimuoverlo, oppure provare tcsh invece di bash per vedere se questo è il problema ...


OK, non ho idea di cosa sia successo ma ora funziona. Pensi che dovrei contrassegnarlo come risolto o no?
Wuffers,

Se il processo corrente è veramente "login", di solito significa che il login è in attesa di creare una sessione di login e non ha ancora provato ad avviare la shell. Per verificarlo, cerca in Activity Monitor e vedi se vedi la shell in esecuzione o se vedi solo un processo di "login".
Chris Page

6

Ho avuto un problema simile.
Nel mio caso, Terminal si fermerebbe dicendo "Terminale - login - 80x24" nel titolo .

Non volevo reinstallare Terminal dal disco OS X, quindi ho seguito diverse procedure e alla fine uno di loro sembrava aver funzionato. Non sono sicuro di quale sia la cosa più importante, ma ho deciso di condividere i miei esatti passaggi nel caso in cui qualcuno li trovi utili:

1. Allontanati com.apple.Terminal.plistda ~/Library/Preferences/.

com.apple.Terminal.plist

Alcuni segnalano che il file di configurazione del terminale potrebbe essere incasinato e impedire l'avvio dell'app.
Sposta questo file da qualche parte per il backup, esci dal Terminale e riavvialo.

Nel mio caso, il ripristino della configurazione ha modificato le impostazioni di carattere e colore sui valori predefiniti, ma il problema persisteva. In tal caso, procedere con il passaggio 2:

2. Prova a eseguire shell diverse da bash

cambiando shell utilizzata dal Terminale

Alcuni consigli per cambiare la shell predefinita nel Terminale /bin/zshe riavviare il Terminale per vedere se il problema è specifico per bash. Nel mio caso, farlo non ha cambiato nulla e il Terminale sarebbe rimasto bloccato login.

3. Prova a spostare i .bash*file lontano dalla home directory

Mi sono ricordato che durante la sessione precedente ho creato il .bash_profilefile nella mia directory. Forse c'è qualcosa di veramente sbagliato. Se non ne hai creato uno tu stesso, alcuni installatori potrebbero averlo creato (o modificato), soprattutto se il software non è specifico per Mac OS.

Sfortunatamente, Finder non mostra i file nascosti per impostazione predefinita e non fornisce un modo semplice per farlo. Tuttavia, nel mio caso, ho scoperto che Automator poteva effettivamente eseguire correttamente i comandi bash :

lo spostamento di file bash con Automator

Questo è lo script che ho usato:

cd ~

mkdir backup
for F in .bash*
do
    mv $F backup
done

Ha spostato tutti i file a partire dalla .bashmia directory home nella backupsottodirectory.

4. Riavvia

Il riavvio dell'app non ha funzionato per me a questo punto, ma ho deciso di provare anche a riavviare .
Dopo il riavvio, Terminal ha funzionato. Ecco!

Ho spostato di nuovo il file salvato com.apple.Terminal.plistin ~/Library/Preferences/, sostituendo quello corrente, e ho deciso di non ripristinare i file vecchi (e in qualche modo non troppo utili) .bash*e la backupdirectory eliminata .

Non so se sia stata una coincidenza o una combinazione di passaggi specifici a risolvere il problema, ma sono contento che il Terminal stia funzionando di nuovo e spero che lo faccia anche il tuo.

Terminale di nuovo funzionante


1
TFW, provi a risolvere uno stupido problema terminale e la risposta SO che trovi è di Dan Abramov prima che fosse Dan Abramov ...
BarthesSimpson,

1

Se il processo corrente è veramente "login", di solito significa che il login è in attesa di creare una sessione di login e non ha ancora provato ad avviare la shell. Per verificarlo, cerca in Activity Monitor e vedi se vedi la shell in esecuzione o se vedi solo un processo di "login". Nota che se hai altri terminali aperti, potresti vedere altri processi di "login" e shell per loro, quindi fai attenzione a quali processi stai esaminando. Il processo di risoluzione dei problemi è in genere l'ultimo con il numero ID processo (PID) più elevato.

Mi rendo conto che Mark Szymanski ha detto che il riavvio non ha aiutato nel suo caso, ma ho pensato che dovrei menzionarlo comunque: se è davvero bloccato in "login", la causa più comune è che hai eseguito "sudo" e quindi chiuso il terminale mentre aspettava che tu inserissi la tua password. In questo caso, sudo attende per sempre la password e questo blocca tutti gli accessi fino a quando non si interrompe il processo di sudo. Il modo più semplice per risolvere il problema è riavviare. In alternativa, puoi uccidere sudo da Activity Monitor (o da un altro terminale se ne hai uno già aperto). A partire da Mac OS X Lion 10.7, sudo noterà quando il terminale si spegne e smette di attendere la password, quindi questo problema non dovrebbe più verificarsi.

Un'altra causa dei ritardi di accesso è se si è connessi a una rete Open Directory e il server di directory è lento o non risponde. Segnala questo al tuo amministratore di rete. Questo di solito provoca solo ritardi di alcuni secondi, ma in alcuni casi possono durare fino a diversi minuti.


0

Il problema non è la shell o la rete. Rimuovere i file * .asl:

sudo rm -rf /private/var/log/asl/*.asl

Ci vuole tempo, perché avvia una nuova shell. Ma dopo, funziona di nuovo bene.

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.