2011-12-07 21 views
6

Tôi gặp vấn đề lạ. Sau khi tôi nhập mật khẩu của mình vào hệ thống debian 6.0, tôi nhận được motd nhưng sau đó tạm dừng 5-10 giây cho đến khi tôi nhận được dấu nhắc trình bao. Nếu tôi nhấn ctrl-c trong khi tạm dừng, dấu nhắc sẽ xuất hiện tức thời. Điều gì có thể xảy ra ở đây? Tôi có đang giết quá trình đăng nhập không? Tại sao có thể mất quá nhiều thời gian để gọi bash? Tôi đánh giá cao bất kỳ đề xuất nào.10 giây chậm trễ giữa đăng nhập và dấu nhắc trình bao.

Cảm ơn

+0

Có thể câu hỏi này là nhiều hơn thích hợp với trang web [superuser.com] (http://superuser.com) –

Trả lời

11

Bạn có thể gỡ lỗi tập lệnh bash shell bằng cách sử dụng set -xset +x. Lệnh set -x bật chế độ gỡ lỗi và lệnh set +x sẽ vô hiệu hóa nó.

Đặt set -x ở đầu $ HOME/.bash_profile của bạn sẽ làm cho thông tin gỡ lỗi được in cho các tệp khởi tạo shell cá nhân của bạn. Nếu như bạn nói bạn nhận được một sự chậm trễ 10 giây, bạn sẽ có thể theo dõi nó xuống khá dễ dàng. Nếu điều này không làm sáng bất kỳ sau đó đi cho các tập tin khởi tạo rộng hệ thống /etc/profile.

Bash Debuggingshell initialisation files

+0

Cảm ơn, điều đó đã giúp tôi theo dõi nó xuống để hoàn thành bash! Rõ ràng nó có rất nhiều khởi tạo. –

+1

Cảm ơn tôi! Tôi đã có một vấn đề rất giống với điều này trên một hệ thống ảo được triển khai từ một tập tin OVA vào VMWare ESXi. Tôi tìm thấy (sử dụng set-x) rằng vấn đề là do một kịch bản VMWare Tools gọi là /etc/profile.d/zzzz-vamilocale.sh, đã cố gắng đọc các thiết lập môi trường OVF qua/opt/vmware/bin/ovfenv, lần lượt tìm nạp các cài đặt từ các vị trí khác nhau, bao gồm cả CDROM. Nếu thiết bị CD trống hoặc không được kết nối, điều này sẽ gây ra sự chậm trễ. Việc xóa tập lệnh (mà chỉ đặt/cập nhật LANG env var) là một giải pháp đơn giản! –

3

Đó là khả năng có điều gì đó trong .bashrc hoặc .bash_profile của bạn. Hoặc có thể một số tệp khởi động khác (/etc/profile et al).

+0

Cảm ơn, nó thực sự nằm trong .bashrc của tôi; bash-hoàn thành là thủ phạm –

0

Cùng một vấn đề như John Rix cho tôi./opt/vmware/bin/ovfenv là thủ phạm.

tôi thấy bài này sau khi làm cuộc điều tra như sau: bắt đầu bash khác sẽ mất đến 30 giây trên một CentOS6

strace bash 

thấy vài dòng trước khi nó bị treo:

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

Removed sự tập lệnh được thực thi với:

mv /etc/profile.d/zzzz-vamilocale.sh /etc/profile.d/zzzz-vamilocale.sh.ko 
Các vấn đề liên quan