centos postfix stop centos安装errorpopulating
CentOS怎样开启关闭系统服务
CentOS使用systemd服务管理程序来管理服务
1、systemd的服务管理程序介绍:
systemctl是主要的工具,它融合之前service和chkconfig的功能于一体。可以使用它永久性或只在当前会话中启用/禁用服务。
systemctl可以列出正在运行的服务状态:
systemd-cgls以树形列出正在运行的进程,它可以递归显示控制组内容。
2、启动/关闭、启用/禁用服务
启动一个服务:systemctl start postfix.service
关闭一个服务:systemctl stop postfix.service
重启一个服务:systemctl restart postfix.service
显示一个服务的状态:systemctl status postfix.service
在开机时启用一个服务:systemctl enable postfix.service
在开机时禁用一个服务:systemctl disable postfix.service
查看服务是否开机启动:systemctl is-enabled postfix.service;echo$?
查看已启动的服务列表:systemctl list-unit-files|grep enabled
怎么删除禁用RHEL/CentOS 7上不需要的服务
RHEL/CentOS 7最低的安装版本都是默认安装了许多服务的,比如邮件转移代理daemon, Avahi mdns daemon(multicast Domain Name System)和Chrony服务
Remove Services in CentOS 7
不过也遇到了新的问题.因为有的服务感觉我们是不需要的,所以我们获得会禁用/启用一些服务.
要求
CentOS 7最低安装版
RHEL 7最低安装版
如果你想把最新安装的RHEL/CentOS 7加入到主机去,也就是说一个你不需要执行Postifx MTA daemon的比如运行一个Apache或Nginx网站,或者提供DNS, DHCP, PXE boot, FTP server网络服务器,那么就要安装这些没必要服务,甚至要运行起来.
对外部来说,一个小的安装服务器运行后可能需要ssh进程,方便外部管理.
禁用/删除Postfix MTA, Avahi和Chrony服务
1.安装玩系统后,root登录或者其他非root用户登录切换更新系统,保证你系统的资源是最新的.
# yum upgrade
Upgrade System
2.接下里就是使用yum安装一些必要的东西,比如net-tools(这个软件包比较的旧但的确是一个很好的ifconfig命令), nano文本编辑, wget或curl, lsof(列出打开的文件)和bash-completion,需要执行
# yum install nano bash-completion net-tools wget curl lsof
Install System Utilities
3.现在就可以开始禁用和删除预安装的不想要的服务.首先列出你已经安装或者正在运行的服务,执行netstat命令反向TCP, UDP和监听socket断开.
# netstat-tulpn## To output numerical service sockets
# netstat-tulp## To output literal service sockets
List Enabled Services
4.看到了吧,Postfix是开启的,然后监听的是本地端口25, Avahi daemon绑定到了所有的网络接口,Chronyd服务绑定到了本地和所有的不同端口网络接口.通过下面的命令来删除Postfix MTA服务.
# systemctl stop postfix
# yum remove postfix
Remove Postfix Service
5.接下来删除Chronyd服务,我们用NTP服务替换掉.
# systemctl stop chronyd
# yum remove chrony
Remove Chronyd Service
6.接下来删除Avahi daemon守护进程. RHEL/CentOS 7的Avahi daemon越来依靠网络管理服务了.把Avahi daemon删除之后,可以然系统不会链接任何网络.
注意这步,如果你想要自动配置网络或者你需要通过nmtui网编辑网络接口,那么你需要停止和禁用Avahi进程才能全部删除.
如果你还是想完全删除这个服务的话,你必须手动的编辑网络配置文件/etc/sysconfig/network-scripts/ifcfg-interface_name,然后启动的启用网络服务.
删除Avahi mdns daemon的时候可能会遇到些问题.注意:如果你ssh登录的情况下别删除Avahi daemon.
# systemctl stop avahi-daemon.socket avahi-daemon.service
# systemctl disable avahi-daemon.socket avahi-daemon.service
---------如果你不想删除的话到这里就别执行了---------
# yum remove avahi-autoipd avahi-libs avahi
Remove Avahi Daemon
7.这步只有在你真想删除Avahi daemon服务和你断开网络连接并且你需要手动重新配置网络接口卡的时候.
想使用IPv6和静态IP编辑你的NIC,进入/etc/sysconfig/network-scripts/,打开NIC接口文件爱你(一般来说第一张卡名是ifcfg-eno1677776默认网络管理器就配置好了的),如果你网络接口还没配置的话就参考下面的向导.
IPV6INIT=no
IPV6_AUTOCONF=yes
BOOTPROTO=none
DEVICE=eno16777736
ONBOOT=yes
UUID=c3f0dc21-d2eb-48eb-aadf-10a520b13df0
TYPE=Ethernet
#DEFROUTE=no
IPV4_FAILURE_FATAL=no
IPV6_DEFROUTE=no
IPV6_FAILURE_FATAL=no
NAME="System eno16777736"
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
HWADDR=00:0C:29:E2:06:E9
IPADDR=192.168.1.25
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS1=192.168.1.1
DNS2=8.8.8.8
Configure Network Interface
一些重要的设置说明:
BOOTPROTO–设置为空或者静态IP–适合配置静态IP.
ONBOOT–设置为yes–重启后启动接口.
DEFROUTE–使用#可以注视或者全部删除也行–不要使用默认配置(如果你使用默认的,那你需要给所有网络接口添加一个“DEFROUTE: no”).
8.如果你的机器配置有自动分配IP的DHCP服务器的话,使用下面的读来配置网络接口.
IPV6INIT=no
IPV6_AUTOCONF=yes
BOOTPROTO=dhcp
DEVICE=eno16777736
ONBOOT=yes
UUID=c3f0dc21-d2eb-48eb-aadf-10a520b13df0
TYPE=Ethernet
##DEFROUTE=no
IPV4_FAILURE_FATAL=no
IPV6_DEFROUTE=no
IPV6_FAILURE_FATAL=no
NAME="System eno16777736"
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
HWADDR=00:0C:29:E2:06:E9
Configure DHCP Interface
跟配置静态IP地址一样,假设BOOTPROTO设置到了dhcp,DEFROUTE是注视或者删除了设备并需要重启才行,如果你没有IPv6,你阿九删除或者注视所有含有IPV6的配置.
9.为了让新的接口配置生效,你需要重启电脑或者网络服务,重启之后使用ifconfig或者ip命令来查看你设置的网络是否生效.
# service network restart## Use this command before systemctl
# chkconfig network on
# systemctl restart network
# ifconfig
# ping domain.tld
Confirm Network Settings
10.最后确保你使用了hostnamectl系列命令给系统设置了hosetname名字,查看你的hostname配置使用下面的命令.
# hostnamectl set-hostname FQDN_system_name
# hostnamectl status
# hostname
# hostname-s## Short name
# hostname-f## FQDN name
Setup System Hostname
11.好了,最后使用一下netstat来看看系统允许的是那个网络.
# netstat-tulpn
# netstat-tulp
Verify Running Services
12.处理SSH服务外,如果你的网络使用的是DHCP来拉去静态IP配置,那么需要运行一个DHCP客户端,然后启用UDP端口.
# netstat-tulpn
Verify DHCP Service
13.另外可以选的,你也可以使用ofSockets Statistics命令来打印出正在运行的socket网络.
# ss-tulpn
ss Command to Check Network
14.重启电脑,执行systemd-analize来检测你的系统boot-time是否正常,同时,使用free和Disk Free命令可以用来显示RAM和HDD统计情况,top命令可以来查看系统资源使用情况.
# free-h
# df-h
# top
Chec
CentOS下邮件服务sendmail的安装及简单配置
sendmail是Linux下优秀的邮件系统。在不做任何设定的情况下,sendmail发出邮件的邮箱源地址形如userid@localhost.localdo,这种地址几乎会被所有的邮箱认定为SPAM(垃圾邮件)或直接拒收。
1、 Sendmail安装
在CentOS下,sendmail一般默认是随操作系统一起安装的。如果安装系统时没有安装sendmail服务,手动安装sendmail也很简单:
复制代码代码如下:
# yum install-y sendmail
# yum install-y sendmail-cf
2、 Senmail的SMTP认证配置(不需要认证的可忽略此步)
首先确认saslauthd服务是否安装或启动。
安装saslauthd服务:
复制代码代码如下:# yum install-y saslauthd
启动saslauthd服务:
复制代码代码如下:# service saslauthd start
(1)配置Senmail的SMTP认证
复制代码代码如下:
# vi/etc/mail/sendmail.mc
复制代码代码如下:
dnl TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
dnl define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
将上面两行的dnl去掉。在sendmail文件中,dnl表示该行为注释行,是无效的,因此通过去除行首的dnl字符串可以开启相应的设置行。
(2)设置Sendmail服务的网络访问权限
复制代码代码如下:
# vi/etc/mail/sendmail.mc
复制代码代码如下:
DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA')dnl
将127.0.0.1改为0.0.0.0,意思是任何主机都可以访问Sendmail服务。如果仅让某一个网段能够访问到Sendmail服务,将127.0.0.1改为形如192.168.1.0/24的一个特定网段地址。
3、生成Sendmail配置文件
Sendmail的配置文件由m4来生成,m4工具在sendmail-cf包中。如果系统无法识别m4命令,说明sendmail-cf软件包没有安装。
生成Sendmail的配置文件:
复制代码代码如下:
m4/etc/mail/sendmail.mc>/etc/mail/sendmail.cf
需要重启Sendmail才能使配置文件生效。
4、postfix与sendmail的冲突问题
在Linux服务器(CentOS release 6.6)上配置好了sendmail后,测试发送邮件时发现有问题,检查sendmail服务的状态,发现其处于“sendmail dead but subsys locked”,检查发现postfix服务也在运行。只需要将postfix服务停掉即可。为什么会出现这种情况呢?Something was occasionally causing the postfix service to start which then caused the status of sendmail to jump to dead but subsys locked.两种似乎不兼容。
操作步骤:
(1):检查sendmail服务的状态
复制代码代码如下:
[root@DB-Server~]# service sendmail statussendmail dead but subsys lockedsm-client(pid 22112) is running...
(2):检查postfix服务的状态
复制代码代码如下:
[root@DB-Server~]# service postfix statusmaster(pid 1777) is running...
(3):停止postfix服务
复制代码代码如下:
[root@DB-Server~]# service postfix stopShutting down postfix: [ OK ]
(4):重新启动sendmail服务
复制代码代码如下:
[root@DB-Server~]# service sendmail stopShutting down sm-client: [ OK ]Shutting down sendmail: [FAILED][root@DB-Server~]# service sendmail stop[root@DB-Server~]# service sendmail startStarting sendmail: [ OK ]Starting sm-client: [ OK ]
(5):禁用postfix在reboot后自动启动
检查一下是否有设定 postfix在 reboot后自动启动
复制代码代码如下:
chkconfig--list| grep postfix
chkconfig postfix off