2011-12-07 9 views
6

私は奇妙な問題があります。 Debian 6.0システムにパスワードを入力した後、私はmotdを取得しますが、シェルプロンプトが表示されるまで5〜10秒の一時停止があります。一時停止中にctrl-cを押すと、即座にプロンプ​​トが表示されます。ここで何が起こっているのでしょうか?私はログインプロセスを殺していますか? bashを呼び出すのになぜ時間がかかるのですか?私は何か提案を感謝します。ログインとシェルプロンプトの間に10秒の遅延があります。

おかげ

+0

多分この質問は[superuser.com](http://superuser.com)のウェブサイト –

答えて

11

set -xset +xを使用してbashシェルスクリプトをデバッグすることができます。 set -xコマンドはデバッグモードを有効にし、set +xコマンドはデバッグモードを無効にします。

$ HOME/.bash_profileの先頭にset -xを置くと、個人用のシェル初期化ファイル用にデバッグ情報が出力されるはずです。 10秒の遅れがあるとすれば、それをかなり簡単に追跡できるはずです。これでライトが消えない場合は、システム全体の初期化ファイル/etc/profileに行きます。

Bash Debuggingshell initialisation files

+0

ありがとう、それは私がbash-completionにそれを追跡するのを助けました!どうやらそれは多くの初期化を行います。 –

+1

私もありがとう! OVAファイルからVMWare ESXiに展開された仮想システムでこれと非常に似た問題がありました。 /etc/profile.d/zzzz-vamilocale.shというVMWare Toolsスクリプトが、/ opt/vmware/bin/ovfenvを介してOVF環境設定を読み込もうとしていたことが原因で問題が発生していることがわかりました(set -xを使用) CDROMを含むさまざまな場所から設定を取得しようとしていました。 CDデバイスが空であるか接続されていない場合は、遅延が発生します。スクリプト(単にLANG env varを設定/更新する)を削除するのは簡単な解決策でした! –

3

それはあなたの.bashrc.bash_profileで何かがあります可能性があります。あるいは、他の起動ファイル(/etc/profileなど)。

+0

に感謝します。本当に私の.bashrcにありました。 bash-completionが原因でした –

0

私にとってジョン・リックスと同じ問題。/opt/vmware/bin/ovfenvが原因でした。私は、次の調査の実行後にこのポスト見つけ

:それはハングアップする前に、別のbashを起動 がCentOS6

strace bash 

に30秒かかるでしょうが数行を示しています。削除

read(3, "LANG=`/opt/vmware/bin/ovfenv --q"..., 183) = 183 

スクリプトが実行されないようにする:

mv /etc/profile.d/zzzz-vamilocale.sh /etc/profile.d/zzzz-vamilocale.sh.ko 
関連する問題