由于需要,想弄一个自动发送邮件的mailx或者sendmail

但是执行

echo "test" | mail -s "Worning mail !" xxxxx@qq.com;

的时候就会报错,提示使用ipv6,但是网卡没有配置ipv6的设置,所以需要强制然他默认为ipv4

vi /etc/main.cf

# Enable IPv4, and IPv6 if supported
inet_protocols = all   #将这个修改为ipv4   记住是小写的 不要看他的注释,他的注释是错误的

但是修改完成后,还是不行,重启还是失败

# /etc/init.d/postfix  restart
Shutting down postfix:                                     [FAILED]
Starting postfix:                                          [FAILED]

很难受,日志也没有相关的记载  日志的位置是/var/log/maillog

还是根据这个入手,结果看以前的日志,发现好多报警

Nov 27 22:46:43 xxx postfix/sendmail[24028]: warning: or the command is run from a set-uid root process
Nov 27 22:46:43 xxx postfix/sendmail[24095]: warning: or the command is run from a set-uid root process
Nov 27 22:46:43 xxx postfix/sendmail[24206]: warning: or the command is run from a set-uid root process
Nov 27 22:46:43 xxx postfix/sendmail[24028]: warning: the Postfix sendmail command must be installed without set-uid root file permissions
Nov 27 22:46:43 xxx postfix/sendmail[24095]: warning: the Postfix sendmail command must be installed without set-uid root file permissions
Nov 27 22:46:43 xxx postfix/sendmail[24206]: warning: the Postfix sendmail command must be installed without set-uid root file permissions
Nov 27 22:46:43 xxx postfix/sendmail[24095]: warning: inet_protocols: IPv6 support is disabled: Address family not supported by protocol
Nov 27 22:46:43 xxx postfix/sendmail[24028]: warning: inet_protocols: IPv6 support is disabled: Address family not supported by protocol
Nov 27 22:46:43 xxx postfix/sendmail[24206]: warning: inet_protocols: IPv6 support is disabled: Address family not supported by protocol
Nov 27 22:46:43 xxx postfix/sendmail[24095]: warning: inet_protocols: configuring for IPv4 support only
Nov 27 22:46:43 xxx postfix/sendmail[24206]: warning: inet_protocols: configuring for IPv4 support only
Nov 27 22:46:43 xxx postfix/sendmail[24028]: warning: inet_protocols: configuring for IPv4 support only
Nov 27 22:46:43 xxx postfix/sendmail[24206]: fatal: file /etc/postfix/main.cf: parameter mail_owner: unknown user name value: postfix
Nov 27 22:46:43 xxx postfix/sendmail[24095]: fatal: file /etc/postfix/main.cf: parameter mail_owner: unknown user name value: postfix
Nov 27 22:46:43 xxx postfix/sendmail[24028]: fatal: file /etc/postfix/main.cf: parameter mail_owner: unknown user name value: postfix

其中最后几行持续输入一个参数报错,mail_owner这个参数,提示没有用户,去mail.rc文件中找到这个参数,后面的是=postfix 于是在/etc/passwd中找这个用户,发现这个用户也被删掉

more /etc/passwd | grep postfix

echo "postfix:x:89:89::/var/spool/postfix:/sbin/nologin" >> /etc/passwd

由于系统日志没有记录,不知道是否添加成功,手动启动postfix进程,发现还是失败

于是尝试将postfix卸载重新安装

但是yum持续有问题,结果发现/etc/resolv.conf中nameserver 8.8.8.8被注释掉

打开注释,重新执行yum clean all; yum makecache

可以执行

再次执行yum remove postfix ,结果再卸载时候,需要将其他4个文件一并卸载,(但是用rpm -e 但是卸载报错,因为有其他服务以来postfix这个包,无法卸载),yum reinstall 也无法安装

这4个包分别是:

很难受,那也要卸载掉,于是点了y继续卸载,写在成功后,重新安装

yum install postfix -y   安装成功,但是只安装了他自己,没有其他的包呀!

安装完成后,将其他的包也重新装上,毕竟cron和sysstat是非常重要的东西

yum -y install vixie-cron

yum install sysstat -y

执行完上述的命令就可以将卸载的东西全部还原(这里如果原来的crontab中有执行计划的话,再次卸载安装的话,执行计划是不会丢失的,具体的位置在/var/spool/cron/下面,如果不放心可以备份)

全部弄完后,再吃重启,发现可以重启成功了,但是第一步中修改的ipv4变回了all,需要再次修改后,重启,

最后,postfix启动成功

【Linux】postfix大坑笔记的更多相关文章

  1. Linux实战教学笔记08:Linux 文件的属性(上半部分)

    第八节 Linux 文件的属性(上半部分) 标签(空格分隔):Linux实战教学笔记 第1章 Linux中的文件 1.1 文件属性概述(ls -lhi) linux里一切皆文件 Linux系统中的文件 ...

  2. Linux实战教学笔记13:定时任务补充

    第十三节 定时任务补充 标签(空格分隔): Linux实战教学笔记 ---[更多资料点我查看][1] 1,生产环境常用Crontab专业实例 1.1书写crontab定时任务多个基本要领 1.1.1 ...

  3. Linux实战教学笔记07:Linux系统目录结构介绍

    第七节 Linux系统目录结构介绍 标签(空格分隔):Linux实战教学笔记 第1章 前言 windows目录结构 C:\windows D:\Program Files E:\你懂的\精品 F:\你 ...

  4. Linux实战教学笔记06:Linux系统基础优化

    第六节 Linux系统基础优化 标签(空格分隔):Linux实战教学笔记-陈思齐 第1章 基础环境 第2章 使用网易163镜像做yum源 默认国外的yum源速度很慢,所以换成国内的. 第一步:先备份 ...

  5. Linux实战教学笔记05:远程SSH连接服务与基本排错(新手扫盲篇)

    第五节 远程SSH连接服务与基本排错 标签(空格分隔):Linux实战教学笔记-陈思齐 第1章 远程连接LInux系统管理 1.1 为什么要远程连接Linux系统 在实际的工作场景中,虚拟机界面或物理 ...

  6. Linux实战教学笔记04:Linux命令基础

    第四节:Linux命令基础 标签(空格分隔):Linux实战教学笔记 第1章 认识操作环境 root:当前登陆的用户名 @分隔符 chensiqi:主机名 -:当前路径位置 用户的提示符 1.1 Li ...

  7. Linux实战教学笔记03:操作系统发展历程及系统版本选择

    标签(空格分隔): Linux实战教学笔记-陈思齐 第1章 Linux简介 1.1 什么是操作系统? 简单讲:操作系统就是一个人与计算机硬件的中介. 操作系统,英文名称Operating System ...

  8. Linux实战教学笔记02:计算机系统硬件核心知识

    标签(空格分隔):Linux实战教学笔记-陈思齐 第1章 互联网企业常见服务器介绍 1.1 互联网公司服务器品牌 - DELL(大多数公司,常用) - HP - IBM(百度在用) 浪潮 联想 航天联 ...

  9. Linux实战教学笔记01:计算机硬件组成与基本原理

    标签(空格分隔): Linux实战教学笔记 第1章 如何学习Linux 要想学好任何一门学问,不仅要眼睛看,耳朵听,还要动手记,勤思考,多交流甚至尝试着去教会别人. 第2章 服务器 2.1 运维的基本 ...

随机推荐

  1. html文本域textarea高度自增、自动换行

    文本域自动换行.高度自增,采用以下方式: html: <textarea rows="1" class="answerTextArea" maxlengt ...

  2. Jmeter(9)常用定时器

    测试计划中元件的执行顺序依次为: 配置元件--逻辑控制器--前置处理器--定时器--取样器--后置处理器--断言--监听器 一.定时器作用域 1.定时器是在每个取样器之前执行的,无论定时器是在取样器之 ...

  3. CentOS6下的ElasticSearch运行步骤

    如何运行ElasticSearch: 1.首先安装jdk1.8版本或以上. 2.下载elasticsearch的压缩包.(我下载的是elasticsearch-6.3.2.tar.gz) 3.使用命令 ...

  4. 关于Java Integer和Long直接比较

    Integer和Long不能直接equals比较会返回False Long.class源码 ` public boolean equals(Object obj) { if (obj instance ...

  5. Java8 - Stream流:让你的集合变得更简单!

    前段时间,在公司熟悉新代码,发现好多都是新代码,全是 Java8语法,之前没有了解过,一直在专研技术的深度,却忘了最初的语法,所以,今天总结下Stream ,算是一份自己理解,不会很深入,就讲讲常用的 ...

  6. NET 5 Execl导入数据处理(EppLus、NPOI)

    先来简单介绍下市面上最广泛常见的三种操作excel库的优缺点1.NPOI 优点:免费开源,无需装Office即可操作excel, 支持处理的文件格式包括xls, xlsx, docx.格式 缺点:不支 ...

  7. Flutter低版本迁移到高版本

    记录一次Flutter v1.12.13+hotfix.8 升级到1.22.4(当前最新) 后 ,旧项目的适配过程 工具:Android Studio 4.1.1 1.android 的MainAct ...

  8. Ubuntu系统的ifconfig命令不能执行

    新安装的Ubuntu想要用WinSCP传文件时发现,ifconfig命令用不了 ping www.baidu.com 获得回应,应该是ifconfig未安装 解决这个问题,首先如图(时间较长,获取:[ ...

  9. 【C++】C++之类型转换

    作者:李春港 出处:https://www.cnblogs.com/lcgbk/p/14209848.html 目录 一.前言 二.static_cast 2.1 使用场景 2.2 实例 三.dyna ...

  10. mysql免安装教程

    1. 下载MySQL Community Server 5.6.13 2. 解压MySQL压缩包    将以下载的MySQL压缩包解压到自定义目录下,我的解压目录是:    "D:\Prog ...