Mac OS X终端无法登录


9

我正在运行Mac OS X版本10.6.3,当我打开终端(使用terminal.app或iterm)时,它只是挂在登录过程中。我尝试重新启动,将启动命令更改为/ bin / bash,然后删除终端首选项文件。一切都无济于事。

Answers:


5

.bashrc文件中可能有一个错误...您可以尝试将echo语句粘贴到.bashrc中,或将其删除,也可以尝试使用tcsh而不是bash来查看问题所在...


好的,我不知道发生了什么,但是现在可以了。您认为我应该将此标记为已解决吗?
Wuffers 2010年

如果当前进程确实是“登录”,则通常意味着登录正在等待创建登录会话,甚至还没有尝试启动Shell。要验证这一点,请在“活动监视器”中查看并查看是否正在运行外壳程序,或者仅看到“登录”过程。
克里斯·佩奇

6

我有一个类似的问题。
在我的情况下,Terminal会在标题中停下来说“ Terminal-login-80x24”

我不想从OS X磁盘重新安装Terminal,所以我遵循了几个不同的步骤,最后其中一个似乎行得通。我不确定哪个最重要,但是我决定分享我的确切步骤,以防有人觉得它们有用。

1. com.apple.Terminal.plist从移开~/Library/Preferences/

com.apple.Terminal.plist

有人报告说终端配置文件可能搞砸了,并阻止了应用程序的启动。
将此文件移到某处进行备份,退出终端,然后重新启动。

就我而言,重置配置会将字体和颜色设置更改为默认设置,但问题仍然存在。如果是,请继续执行第二步:

2.尝试运行除bash以外的shell

终端使用的更换外壳

一些建议将终端中的默认Shell更改为/bin/zsh并重新启动终端,以查看问题是否特定于bash。就我而言,这样做并没有改变,并且终端仍会挂在login

3.尝试将.bash*文件移离主目录

我记得在上一届会议上我.bash_profile在目录中创建了文件。也许这确实有问题。如果您自己尚未创建,则某些安装程序可能已经创建(或编辑)了它,特别是如果该软件不是特定于Mac OS的。

不幸的是,Finder默认情况下不会显示隐藏文件,也没有提供简便的方法来执行此操作。但是,就我而言,我发现Automator实际上可以成功运行bash命令

使用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目录。

我不知道是巧合还是通过一些特定步骤的组合解决了问题,但我很高兴终端能再次正常工作,我希望您也能这样做。

终端再次工作


1
TFW您尝试解决一个愚蠢的终端问题,所以您找到的答案是Dan Abramov在他成为Dan Abramov之前...
BarthesSimpson

1

如果当前进程确实是“登录”,则通常意味着登录正在等待创建登录会话,甚至还没有尝试启动Shell。要验证这一点,请在“活动监视器”中查看并查看是否正在运行外壳程序,或者仅看到“登录”过程。请注意,如果您打开了其他终端,则可能会看到其他“登录”和shell进程,因此请注意要检查的进程。故障处理通常是最新的,具有最高的处理ID号(PID)。

我意识到Mark Szymanski说过重启对他的情况无济于事,但我还是想提一提:如果它确实卡在“登录”中,则最常见的原因是您先运行了“ sudo”然后关闭了终端等待您输入密码时。如果这样做,sudo将永远等待密码,这将阻止所有登录,直到您终止sudo进程。解决此问题的最简单方法是重新启动。或者,您可以从“活动监视器”(或如果已打开一个终端,则从另一个终端)杀死sudo。从Mac OS X Lion 10.7开始,sudo会在终端消失并停止等待密码时发出通知,因此该问题不再发生。

登录延迟的另一个原因是,如果您连接到Open Directory网络,并且目录服务器缓慢或无响应。向您的网络管理员报告。这通常只会导致几秒钟的延迟,但是在某些情况下,它们可能会持续长达几分钟。


0

问题不在于外壳或网络。删除* .asl文件:

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

这需要时间,因为它启动了一个新的shell。但是之后,它又可以正常工作了。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.