Відповіді:
Можливо, у вас є помилка у вашому файлі .bashrc ... Ви можете спробувати вставити заяви ехо у вашому .bashrc, або видалити його, або спробувати tcsh замість bash, щоб побачити, чи це проблема ...
У мене була схожа проблема.
У моєму випадку, Термінал буде зупиняти з написом "Термінал - вхід - 80x24" у назві .
Я не хотів перевстановлювати Terminal з диска OS X, і тому я дотримувався кількох різних процедур, і врешті-решт одна з них, здавалося, спрацювала. Я не впевнений, що найважливіше, але я вирішив поділитися своїми точними кроками, якщо хтось вважає їх корисними:
1. Відійти com.apple.Terminal.plist
від ~/Library/Preferences/
.
Деякі повідомляють, що файл конфігурації терміналу може заплутатися і не допустити запуску програми.
Перемістіть цей файл кудись для резервного копіювання, закрийте термінал і запустіть його знову.
У моєму випадку скидання конфігурації змінило параметри шрифту та кольору за замовчуванням, але проблема не зникала. Якщо так зробило ваше, перейдіть до другого кроку:
2. Спробуйте запустити оболонку, відмінну від bash
Деякі поради змінити оболонку за замовчуванням у терміналі на /bin/zsh
та перезапустити термінал, щоб побачити, чи проблема є специфічною для bash. У моєму випадку це нічого не змінило, і Термінал все одно буде висіти login
.
3. Спробуйте перемістити .bash*
файли від домашнього каталогу
Я згадав, що під час попередньої сесії я створив .bash_profile
файл у своєму каталозі. Можливо, щось насправді не так. Якщо ви ще не створили його, інсталятор міг би створити його (або відредагувати), особливо якщо це програмне забезпечення не стосується Mac OS.
На жаль, Finder не показує приховані файли за замовчуванням і не забезпечує простий спосіб це зробити. Однак у моєму випадку я виявив, що Automator насправді може успішно виконувати bash команди :
Це сценарій, який я використав:
cd ~
mkdir backup
for F in .bash*
do
mv $F backup
done
Він перемістив усі файли, починаючи з .bash
мого домашнього каталогу, до backup
підкаталогу.
4. Перезавантажте
На даний момент перезапуск програми не працював для мене, але я вирішив також спробувати перезавантажити .
Після перезавантаження Термінал працював. Вуаля!
Я перемістив збережені com.apple.Terminal.plist
назад ~/Library/Preferences/
, замінивши поточний, і вирішив не відновлювати старі (і дещо не надто корисні) .bash*
файли та видалений backup
каталог.
Я не знаю, чи випадковість чи поєднання конкретних кроків вирішили проблему, але я радий, що Термінал працює знову, і я сподіваюся, що і ваш зробить це.
Якщо поточний процес дійсно є "входом", це означає, що реєстрація чекає, щоб створити сеанс входу, і навіть не намагався ще запустити оболонку. Щоб переконатись у цьому, загляньте у Монітор активності та перевірте, чи бачиться оболонка запущеною чи бачите лише процес "входу". Зауважте, що якщо у вас відкриті інші термінали, ви можете бачити інші процеси входу та оболонки для них, тому будьте уважні, які саме процеси ви вивчаєте. Процес неполадок, як правило, останній з найвищим ідентифікаційним номером процесу (PID).
Я усвідомлюю, що Марк Шиманський сказав, що перезавантаження не допомогло у його справі, але я подумав, що це все одно слід згадати: якщо він дійсно застряг у "логіні", найпоширенішою причиною є те, що ти запустив "sudo" і потім закрив термінал поки він чекав, коли ви введете свій пароль. Якщо ви це зробите, sudo вічно чекає пароля і блокує всі входи, поки ви не вб'єте процес sudo. Найпростіший спосіб вирішити проблему - це перезавантажити. Крім того, ви можете вбити sudo з "Монітора активності" (або з іншого терміналу, якщо у вас вже є одне відкрите). Як і в Mac OS X Lion 10.7, sudo помітить, коли термінал відходить і перестає чекати пароля, тому ця проблема більше не повинна виникати.
Ще одна причина затримки входу - якщо ви підключені до мережі Open Directory і сервер каталогів млявий або не відповідає. Повідомте про це своєму адміністратору мережі. Зазвичай це викликає лише затримки на кілька секунд, але в деяких випадках вони можуть тривати до декількох хвилин.
Проблема не в оболонці чи мережі. Видаліть * .asl файли:
sudo rm -rf /private/var/log/asl/*.asl
На це потрібен час, бо він запускає нову оболонку. Але після цього воно знову справно працює.