RHEL 启动时 sendmail耗时很长

来源:互联网 发布:宾馆网络方案 编辑:程序博客网 时间:2024/04/29 23:01


百度了一下:
1;
你的虚拟机中的网上设置你是不是改了,或者说你改了域名之类的,导致sendmail找不到服务器,虽然你好像是没用,但是一开机这些服务是会寻找主机的,没有就默认是自己,如果你改了域名,而域名和计算机名不保持一至的话会出现这个问题。就好像redhat linux9,一开机进入登陆界面会显示 welcome loacalhost.*********,那个localhost就是域名和默认的主机名,如果这两者不一至会有这个问题。 再个说下“clock skew detected",这个应该是你的计算机时钟没有保持一至,把时间纠结过来,可以用DATE命令吧。http://linux.chinaunix.net/techdoc/install/2007/07/12/962462.shtml这里的文章你可以参考下。

域名解析不了,就等在那边了
在你的/etc/hosts里面添加计算机名称和ip地址的对应关系就行了 


在大部分Linux发行版本中,sendmail这个古老的邮件系统包是默认安装的,装完系统后,重启时,不少兄弟遇到在启动过程中,到了启动sendmail服务的时候就停止了,没有耐性和经验的朋友这时候可能会以为系统出故障或者系统没有装好,其实既不是系统出故障,一般也不是系统没有安装好,而是系统sendmail的时候在查询你设置的主机名的A记录或反向域名记录,由于全球 9台DNS根系统都在美国,这个时候会去查询本机主机名对应的dns A记录,特别时你安装系统时设置的一些“奇怪”的主机名的时候,比如webserver等等之类的,这个时候sendmail会去做这个操作过程。
Apr 28 13:41:36 webserver sendmail[3494]: gethostby*.getanswer: asked for "webserver IN AAAA", got type "A"
Apr 28 13:42:36 webserversendmail[3499]: gethostby*.getanswer: asked for "webserver IN AAAA", got type "A"
Apr 28 13:43:37 webserver sendmail: sendmail startup succeeded
Apr 28 13:43:37 webserver sm-msp-queue[3509]: gethostby*.getanswer: asked for "webserver IN AAAA", got type "A"
运气好,我的意思是你的“RP”好,呵呵,查询比较快,你感觉不到异样,“RP”不好,少则一到两分钟,多则四到五分钟,而且要命的是不报任何错误信息,这个时间大大超过了我们能忍受的“8s”时间了,心里承受力差的兄弟就要受煎熬了。
知道了问题的症结,就可以对症下药了,比如我们可以修改系统配置文件/etc/hosts 和/etc/resolv.conf
让sendmial绕过查询远程主机,这里给出一种最简单的方法,给主机设置一个别名
可以修改系统配置文件/etc/hosts 和/etc/resolv.conf

在修改/etc/hosts后sendmail启动的很慢,解决办法是
修改 /etc/hosts
修改前:
# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1 localhost.localdomain localhost
::1 localhost6.localdomain6 localhost6
192.168.100.129 chub-rhel5 chub-rhel5-alias
修改后:
# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1 localhost.localdomain localhost chub-rhel5
::1 localhost6.localdomain6 localhost6
192.168.100.129 chub-rhel5 chub-rhel5-alias


启动系统的时候,运行到sendmail 时就一直卡在那个地方,有时要过好几分钟才能启动。这种状况一般是发生在更改过系统的 IP 之后,由于,由于sendmail默认的配置会对本地的ip进行解析,他会一直去找一个域名,又没有dns做解析,所以就卡住了。

解决方法:

编辑 /etc/hosts 给当前ip 设置一个域名。
也可以将 sendmail 设为不启动,但系统需要用到发内部邮件通知,一般不要关掉他。


----------------------------------以上网上搜索结果-------------------------------------
可以看出,sendmail启动慢的原因是IP地址和域名没有对应导致的,多次修改hosts文件以及统一IP地址也未能实现最后的结果,我的IP地址固定在启动脚本里,却忽略了hostname是否是正确的,cat /proc/sys/kernel/hostname 查询hostname,发现和hosts里的不一致,于是#hostname newname  修改之。但这只是临时修改,永久修改需要配置文件修改文件 /etc/sysconfig/network ,设置机器名格式为 HOSTNAME=xxx.xxx 形式。

原创粉丝点击