记一次ssh登录超慢的排错过程

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/shihao99/article/details/78625129

服务器系统是centos7.2,今天使用CRT登录的时候忽然变得很慢,以下问题解决的过程

ssh登录慢首先想到的是服务端sshd的配置问题,老生常谈,关闭UseDNS和GSSAPIAuthentication,然后重启sshd服务。再重新登录,问题依旧。

然后想到,会不会是环境变量的问题,于是查看/etc/profile ,用户目录下的.bash_profile和.bashrc,本来想三个文件都看看,不过这样的话太麻烦,于是采用一个捷径,使用su - username切换几个用户试一下,果然都很慢,和ssh登录时的现象一致,由此可以确定是/etc/profile中的问题。为了确定是否真的是它的问题,source一下/etc/profile,果然慢的要命。

那么,究竟是/etc/profile的哪一部分执行的慢呢,于是在/etc/profile中加了几个echo,打印一下日志看看吧,最后定位到了这一部分


继续进行更加详细的定位,把出问题的脚本定位到了/etc/profile.d/abrt-console-notification.sh,终于找到罪魁祸首了。可是执行这个abrt-console-notification.sh的时候究竟哪里很慢呢?使用sh -x执行一下试试呗,然后就定位到了+ abrt-cli status --since=1511508566这行语句卡住了,就是它!!那么这个abrt是什么鬼呢?它是centos7.x自带的一个系统服务,默认启动,它的作用是什么呢?百度了一下,发现介绍很少,好不容易找到一个关于它的介绍,还是繁体的,可能是台湾的同行翻译的吧哈哈哈,内容如下:

(系統)abrtd 服務可以提供使用者一些方式,讓使用者可以針對不同的應用軟體去設計錯誤登錄的機制, 當軟體產生問題時,使用者就可以根據 abrtd 的登錄檔來進行錯誤克服的行為。還有其他的 abrt-xxx.service 均是使用這個服務來加強應用程式 debug 任務的。

大概能看懂啥意思吧,果断关闭之~, systemctl  stop  # systemctl  disable 

         退出终端,重新ssh登录,果然ok了~

         当然还有个遗留的问题,为什么brt-cli status执行的很慢呢?百度半天也没找到答案!!!!

猜你喜欢

转载自blog.csdn.net/shihao99/article/details/78625129