LINUX下的mail\mailx为什么无法使用外部SMTP发邮件
2012-11-09 16:52
597 查看
http://www.2cto.com/os/201208/148484.html
LINUX下的mail\mailx为什么无法使用外部SMTP发邮件
有时为了达到某种需求统一使用某一SMTP服务器作为发送邮件报告。
通常的做法都是,关闭本机的sendmail服务,修改/etc/mail.rc,增加一下类似两行,指定外部的smtp服务器地址、帐号密码等。
www.2cto.com
# vi /etc/mail.rc
set from=demo@qq.com smtp=smtp.qq.com
set smtp-auth-user=demo smtp-auth-password=ithf smtp-auth=login
然后通过命令来发送邮件
echo hello word | mail -s "demo title" demo@qq.com
可是发现在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* www.2cto.com
lrwxrwxrwx. 1 root root 5 7月 22 2011 /bin/mail -> mailx
-rwxr-xr-x. 1 root root 390424 2月 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 6 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新版本可解决此问题。
mailx官方站点 http://heirloom.sourceforge.net/
下载最新版本mailx-12.4.tar.bz2 (271.5 kB) http://sourceforge.net/projects/heirloom/files/latest/download?source=files
解压、安装。下载的压缩包里有安装说明(见INSTALL 文件)。默认安装是make ; make install
www.2cto.com
同时安装说明也说了,如果make install 出错,则换为 make install UCBINSTALL=/usr/bin/install命令试试。
命令:
# tar jxvf mailx-12.4.tar.bz2
# cd mailx-12.4
# make
# make install UCBINSTALL=/usr/bin/install
我在make install很长时间没有反应,只有Ctrl + C 中断了,输入make install UCBINSTALL=/usr/bin/install 则可以成功安装
查看mailx程序默认安装位置、及版本
# whereis mailx
mailx: /usr/local/bin/mailx /usr/share/man/man1p/mailx.1p.gz
# mailx -V
12.4 7/29/08
安装后的mailx使用的是 /etc/nail.rc 配置,不是 /etc/mail.rc 这个需要注意下。
用mailx命令测试发送邮件 www.2cto.com
# echo hello word | mailx -v -s "demo title" demo@qq.com
成功发送的话,就可以看到类似的提示
235 2.7.0 Authentication successful
>>> MAIL FROM:<demo@qq.com>
250 2.1.0 Ok
>>> RCPT TO:<xxxxx@qq.com>
250 2.1.5 Ok
>>> DATA
354 End data with <CR><LF>.<CR><LF>
>>> .
250 2.0.0 Ok: queued as 9291963494
>>> QUIT
221 2.0.0 Bye
作者 islandstar
LINUX下的mail\mailx为什么无法使用外部SMTP发邮件
有时为了达到某种需求统一使用某一SMTP服务器作为发送邮件报告。
通常的做法都是,关闭本机的sendmail服务,修改/etc/mail.rc,增加一下类似两行,指定外部的smtp服务器地址、帐号密码等。
www.2cto.com
# vi /etc/mail.rc
set from=demo@qq.com smtp=smtp.qq.com
set smtp-auth-user=demo smtp-auth-password=ithf smtp-auth=login
然后通过命令来发送邮件
echo hello word | mail -s "demo title" demo@qq.com
可是发现在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* www.2cto.com
lrwxrwxrwx. 1 root root 5 7月 22 2011 /bin/mail -> mailx
-rwxr-xr-x. 1 root root 390424 2月 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 6 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新版本可解决此问题。
mailx官方站点 http://heirloom.sourceforge.net/
下载最新版本mailx-12.4.tar.bz2 (271.5 kB) http://sourceforge.net/projects/heirloom/files/latest/download?source=files
解压、安装。下载的压缩包里有安装说明(见INSTALL 文件)。默认安装是make ; make install
www.2cto.com
同时安装说明也说了,如果make install 出错,则换为 make install UCBINSTALL=/usr/bin/install命令试试。
命令:
# tar jxvf mailx-12.4.tar.bz2
# cd mailx-12.4
# make
# make install UCBINSTALL=/usr/bin/install
我在make install很长时间没有反应,只有Ctrl + C 中断了,输入make install UCBINSTALL=/usr/bin/install 则可以成功安装
查看mailx程序默认安装位置、及版本
# whereis mailx
mailx: /usr/local/bin/mailx /usr/share/man/man1p/mailx.1p.gz
# mailx -V
12.4 7/29/08
安装后的mailx使用的是 /etc/nail.rc 配置,不是 /etc/mail.rc 这个需要注意下。
用mailx命令测试发送邮件 www.2cto.com
# echo hello word | mailx -v -s "demo title" demo@qq.com
成功发送的话,就可以看到类似的提示
235 2.7.0 Authentication successful
>>> MAIL FROM:<demo@qq.com>
250 2.1.0 Ok
>>> RCPT TO:<xxxxx@qq.com>
250 2.1.5 Ok
>>> DATA
354 End data with <CR><LF>.<CR><LF>
>>> .
250 2.0.0 Ok: queued as 9291963494
>>> QUIT
221 2.0.0 Bye
作者 islandstar
相关文章推荐
- LINUX下的mail\mailx为什么无法使用外部SMTP发邮件
- LINUX下的mail \ mailx为什么无法使用外部SMTP发邮件?
- linux中mail/mailx使用外部smtp发送邮件
- Linux下配置使用外部SMTP发邮件
- LINUX下配置使用外部SMTP发邮件
- Linux下配置mail使用外部SMTP发送邮件
- linux mail 使用外部smtp服务器实现nagios邮件报警
- linux使用mail命令发邮件—第三方smtp
- linux mail使用外部smtp发送邮件
- Linux学习笔记:使用外部SMTP发送邮件
- linux下,使用svn commit提交时,提示无法使用外部编辑器获得日志信息
- CentOS 7 使用外部邮箱 发送邮件和附件—mail,mailx
- Linux lnmp下无法使用mail发邮件的两种解决方法
- Linux——使用mail发送邮件给外部邮箱
- linux使用mail发邮件
- Ubuntu 使用 heirloom-mail 调用外部邮箱 SMTP 服务器发送邮件
- LINUX下通过外部SMTP发邮件 (直接抛弃sendmail和postfix)
- smtpClient发邮件错误:不允许使用邮箱名称。 服务器响应为: You are not authorized to send mail, authentication is required
- 【转】linux mail利用外部邮箱地址发邮件
- linux配置使用外部smtp发送邮件