liunx下载smtp问题

LINUX下的mail\mailx为什么无法使用外部SMTP发邮件_百度知道
LINUX下的mail\mailx为什么无法使用外部SMTP发邮件
提问者采纳
  通常的做法都是,关闭本机的sendmail服务,修改/etc/mail.rc,增加一下类似两行,指定外部的smtp服务器地址、帐号密码等。    # vi /etc/mail.rc  set from= smtp=  set smtp-auth-user=demo smtp-auth-password=ithf smtp-auth=login    然后通过命令来发送邮件  echo
hello word | mail -s &demo title&   可是发现在RHEL6运行是没有问题,在RHEL5下,mail命令始终是调用本地的sendmail服务来发送邮件的。到底RHEL6和RHEL5下的mail和mailx又有着什么关系呢?    RHEL6下    mail
链接到 mailx 命令,mailx版本为12.4  # rpm -qa|grep mailx  mailx-12.4-6.el6.x86_64  # ll /bin/mail*  lrwxrwxrwx. 1 root root
7月 22 2011 /bin/mail -& mailx  -rwxr-xr-x. 1 root root 月 16 2010 /bin/mailx  # mail -V  12.4 7/29/08  RHEL5下,则发现了一些不同  mailx
mail 命令,mailx版本为8.1  # rpm -qa|grep mailx  mailx-8.1.1-44.2.2  # ll /bin/mail*  -rwxr-xr-x 1 root mail 84856 Jun
2007 /bin/mail  lrwxrwxrwx 1 root root
4 Apr 12 18:03 /bin/mailx -& mail  # mail -V
此处运行就会出错,没有-V这个参数  也就是说,在RHEL6\5下,运行mail 和mailx,实际上都是一个命令,而mail版本不同,导致了RHEL5下mail命令无法调用外部SMTP服务器。    安装mailx新版本可解决此问题。
其他类似问题
为您推荐:
发邮件的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁Linux下通过命令行发邮件到外部邮箱_Linux教程_Linux公社-Linux系统门户网站
你好,游客
Linux下通过命令行发邮件到外部邮箱
来源:Linux社区&
作者:ymwugui
使用linux时,有时我们想发邮件给朋友或同事,可不可以通过命令行直接发呢?
想通过linux监控网站或者系统状况并自动报警,如何使用脚本发出邮件给外部邮箱呢?
不需要注册公网域名和MX记录,即不需要架设公网邮件服务器,我们仍然可以达到以上目的。我是通过linux自带的mailx工具来解决,只需要配置mailx使用公网邮箱来发邮件即可。
5自带的mailx是8.1版本的,不支持配置外部公网邮箱,必须升级到最新版本12.4。可以使用rpm -qa | grep mailx查看系统自带的mailx版本。使用wget http://sourceforge.net/projects/heirloom/files/latest/download?source=files下载最新版本mailx-12.4.tar.bz2 (271.5 kB) 。
# tar jxvf mailx-12.4.tar.bz2
# cd mailx-12.4
# make install UCBINSTALL=/usr/bin/install
如此即安装完毕。这时,如果没有卸载旧版本的mailx,是不能直接使用mailx或mail命令的,否则使用的仍然是旧版mailx。新版mailx在解压后的mailx-12.4文件夹里面,即调用路径为:解压路径/mailx-12.4/mailx。例如我解压在/root/下,那我要使用新版mailx并查看版本号,则可以用/root/mailx-12.4/mailx& -V 查看。
为使得新版mailx更加易用,我们可以利用alias和.bashrc将mail命令指向该新版mailx:
编辑.bashrc:vi /root/.bashrc
添加一行:alias mail='/root/mailx-12.4/mailx'
即时生效:source /root/.bashrc
这时的mail命令即代表新版mailx。
接下来配置新版mailx使用外部邮箱发送邮件:
编辑/etc/nail.rc(注意不是旧版的/etc/mail.rc):vi /etc/nail.rc
添加两行:
set from= smtp=
set smtp-auth-user=myname smtp-auth-password=password smtp-auth=login
第一行指明所使用的外部邮箱及smtp服务器,第二行指明外部邮箱使用的用户名和密码。
保存,并重启sendmail服务(service sendmail restart)。
到此可以在命令行直接发邮件到外部邮箱了:
#echo 'hello!' | mail -s "hello test"
到外部邮箱一看,邮件即刻收到了。
报警脚本在此基础上就很好写了。
相关资讯 & & &
& (07/21/:11)
图片资讯 & & &
   同意评论声明
   发表
尊重网上道德,遵守中华人民共和国的各项有关法律法规
承担一切因您的行为而直接或间接导致的民事或刑事法律责任
本站管理人员有权保留或删除其管辖留言中的任意内容
本站有权在网站内转载或引用您的评论
参与本评论即表明您已经阅读并接受上述条款Please click
if you are not redirected within a few seconds.
你可能喜欢
12345678910
技术交流/招聘 QQ群①: QQ群②:6690706 QQ群③: 微信:ttlsacom
您还未添加分享代码,请到主题选项中,添加百度分享代码!

我要回帖

更多关于 liunx下安装oracle 的文章

 

随机推荐