Linux服务管理教程

Linux服务管理可以对服务的运行进行开启和关闭,对于各种软件应用功能很有作用,对于查看Linux异常也有帮助。注意,不同包源安装的服务,管理方式、操作命令都是有不同的。

一、简介与分类
⑴、系统的运行级别
              0   关机
              1   单用户(启动最小服务用于修复)相当于Windows中的安全模式
              2   不完全多用户,不含NFS服务    正常服务除了NFS服务
              3   完全多用户,标准的字符界面    正常服务
              4   未分配,系统保留
              5   图形界面                      启动图形界面(前提是安装过)
              6   重启
     查看运行级别命令:runlevel
     修改运行级别命令:init 运行级别
     注释:init 6、和init 0命令不一定会正确结束系统正在运行的服务,所以并不可靠,不建议使用这两个命令关机、重启
     修改系统默认运行级别配置文件:vim /etc/inittab
                                   id:3:initdefault:    #开机默认进入3级别
⑵、服务的分类
                                         独立的服务
                  RPM包默认安装的服务
    ①、Linux服务                       基于xinetd服务(后面版本淘汰)
                  源码包安装的服务
    服务的启动:当前系统中让服务运行并提供相应功能
    服务自启动:服务在系统开机或重启随系统的启动而启动的服务
    ②、查询已安装的服务
    chkconfig --list     #查询RPM包服务自启动命令(也可以查看服务自启动状态)
    /usr/local/          #源码包安装的服务位置,usr(是Unix系统资源的缩写)
    注释:服务自启动是不能确定服务是否启动的,两者没有联系;
    ③、PRM和源码包安装服务的区别:安装位置不同!
        源码包指定安装在/usr/local/下,RPM包安装在默认位置中
⑶、服务与端口
    ①、查询当前系统正在运行的服务
        ps aux         #这个命令查询出来的不太准确,因为还有程序会占用进程
        查询端口对应的服务      #这是第二种方法
        端口:是传输层将数据传输到对应应用层的接口,以便系统知道提供何种服务

应用层与传输层

注释:TCP和UDP都各自有65536个,但是系统怕混乱,使用TCP协议开放TCP端口时也会空出UDP端口,反之亦然,所以一般称端口为65535个。
    ②、端口与服务的对应
        一般10000以内的端口是系统自留,具体可查看/etc/services 文件
    ③、查询系统中开启的服务
        netstat -tlunp      #列出系统中当前已经启动的服务(只能查监听端口)
        -t          #列出tcp数据
        -u          #列出udp数据
        -l          #列出正在监听的网络服务(不包含已经连接的网络服务)
        -n          #用端口号来显示服务,而不是用服务名
        -p          #列出该服务的进程ID(PID)
        netstat -an    #查询系统当前的服务和程序所占用的端口情况(可查连接端口和监听端口)
 
二、RPM包服务管理
    RPM包主要的安装位置解析:
    /etc/init.d/           #启动脚本位置
    /etc/sysconfig/        #初始化环境配置文件位置
    /etc/                  #配置文件位置
    /etc/xinetd.conf       #xinetd配置文件
    /etc/xinetd.d/         #基于xinetd服务的启动脚本
    /var/lib/              #服务产生的数据放在这里
    /var/log               #日志
(由于安装方式不同导致安装的绝对路径不同,而软件或者服务启动都上采用绝对路径进行启动的,路径不同因此启动方式不同)
①、独立服务的管理(在内存中直接运行的服务,响应更快但占用内存)
    ※、独立服务的启动(通过RPM包安装的程序后面都会加个d)
    /etc/init.d/独立服务名 start|stop|status|restart|   #标准启动方式,/etc/rc.d/init.d同/etc/init.d/
    service 独立服务名 start|stop|restart|status|       #Redhat专有命令
    ※、独立服务的自启动(二种不同方法自启动,在各自查询时状态时不相关,都设置启动的话会重启二次,会报错)
    chkconfig [--level 运行级别] [独立服务名] [on|off]
    例如:chkconfig --list | grep httpd     #查看httpd服务自启动状态
          chkconfig --level 2345 httpd on   
          #设定httpd服务自启动,当前未必启动了,所以service httpd start
          chkconfig httpd off               #关闭httpd服务自启动
    或者使用ntsysv命令管理自启动,在弹出的界面中输入*即可,按空格为清除
    这个方法与上面的方法是一样的,只是修改途径不同。而且修改的只是图形界面5的自启动,要想其他一致,尝试一下ntsysv 2345,注意这个方法也是Redhat专有命令
 
    修改/etc/rc.d/rc.local文件(类似Windows中自定义启动项,推荐这种方法)
          vi /etc/rc.d/rc.local      #/etc/rc.d/rc.local同/etc/rc.local
      增加/etc/init.d/httpd start
      保存退出:wq  
②、基于xinetd服务的管理(xinetd在内存中,管理的服务需要时调用,效率低)
    安装(由于效率低下,后续版本剔除了):yum -y install xinetd
      xinetd主要的服务rsync是对Linux和Windows数据同步、数据备份。
    启动:vi /etc/xinetd.d/rsync     将disable = no 改成默认启动
      service xinetd restart      #rsync是被xinetd管理,本身没有启动脚本
    xinetd服务自启动:设置启动或关闭,会一致默认其下面的服务自启或关闭
     chkconfig rsync on         ntsysv找到服务加*号
     chkconfig rsync off        #停止自启动,还会停止当前服务
 
三、源码包服务管理
①、源码包安装服务的启动:使用绝对路径,调用启动脚本来启动。不同的源码包的启动脚本不同。可以查看源码包的安装说明,查看启动脚本的方法。
例如:/usr/local/apache2/bin/apachectl start|stop
②、源码包服务的自启动  vi /etc/rc.local (vi /etc/rc.d/rc.local)
                  加入  /usr/local/apache2/bin/apachectl start
③、让源码包服务被服务管理命令识别
    让源码包的apache服务能被service命令管理启动(做个软链接)
    ln -s /usr/local/apache2/bin/apachectl /etc/init.d/apache
    让源码包的apache服务能被chkconfig、ntsysv命令管理启动
    vi /etc/init.d/apache  后加入下面两句话
    # chkconfig:35 86 76                  #不是注释,是命令
    # description:source package apache   #是注释,但必须要加
    chkconfig --add apache                #加入chkconfig命令才算完成
    注释:chkconfig:35 86 76      chkconfig 运行级别 启动顺序 关闭顺序
    启动顺序和关闭顺序号不能和系统内置的顺序号相同,系统内置的顺序号可以进入查看:cd /etc/rc3.d/    ls      (rc3中的3代表运行级别,里面文档中的K字头代表关闭程序的顺序,S字头代表启动顺序,也就是说关闭级别需要每个K字头都执行一遍,而启动级别需要每个S字头启动一遍,这里添加的启动、关闭顺序不要和上面目录里面的顺序相同即可,至于多少可以自定义)

四、服务管理总结

Linux服务

讲师总结的服务优化(针对RPM包服务)
服务名称     功能简介                                                                                                              建议
acpid        电源管理接口,如果是笔记本用户建议开启,可以监听内核层的相关电源事件     开启
anacron      系统的定时任务程序。cron的一个子系统,如果定时任务错过了执行事件,可以通过anacron继续唤醒执行     关闭
alsasound     Alsa声卡驱动。如果使用alsa声卡,开启                        关闭
apmd        电源管理模块。如果支持acpid,就不需要apmd,可以关闭         关闭
atd          指定系统在特定时间执行某个任务,只能执行一次。如果需要则开启,但我们一般使用crond来执行循环定时任务     关闭
auditd        审核子系统。如果开启了此服务,SELinux的审核信息会写入/var/log/audit/audit.log文件,如果不开启,审核信息会记录在syslog中        开启
autofs        让服务器可以自动挂载网络中的其他服务器的共享数据,一般用来自动挂载NFS服务。如果没有NFS服务建议关闭   关闭
avahi-daemon  Avahi 是 zeroconf 协议的实现。它可以在没有DNS服务的局域网里发现基于zeroconf协议的设备和服务,除非有兼容设备或使用zeroconf协议,否则关闭    关闭
bluetooth      蓝牙设备支持。一般不会在服务器上启用蓝牙设备                 关闭
capi           仅对使用ISND设备的用户有用                                  关闭
chargen-dgram  使用UDP协议的chargen server。主要功能类似远程打字的功能     关闭
chargen-stream  同上                                                        关闭
cpuspeed       可以用来调整CPU的频率。当闲置时可以自动降低频率减少电量    开启
crond          系统的定时任务,一般的Linux服务器都需要                     开启
cvs            一个版本控制系统                                            关闭
daytime-dgram  daytime使用TCP协议的Daytime的守护进程,该协议为客户机实现从远程服务器获取日期和时间的功能 关闭
daytime-stream  同上                                                        关闭
dovecot        邮件服务中POP3/IMAP服务的守护进程。主要用来接收信件,如果 启动了邮件服务则开启,否则关闭  关闭
echo-dgram     服务器回显客户服务的进程                                    关闭
echo-stream     同上                                                       关闭
firstboot        系统安装完成之后,有个欢迎界面,需要对系统进程初始设置 。如果不是第一次启动,关闭     关闭
gpm           在字符终端(tty1-tty6)中可以使用鼠标复制和粘贴。             开启
haldaemon     检查盒支持USB设备。如果上服务器可以关闭,个人建议开启      关闭
hidd           蓝牙鼠标、键盘等蓝牙设备检测。必须启动bluetooth服务         关闭
hplip          HP打印机支持,如果没有关闭                                  关闭
httpd          apache服务的守护进程。需要启动就开启,否则关闭              开启
ip6tables       IPV6的防火墙,目前IPV6协议并没有使用,可以关闭             关闭
iptables        防火墙功能,Linux中防火墙是内核支持功能,是服务器的主要防护手段,必须开启  开启
irda           IrDA提供红外设备(笔记本,PDA's,手机,计算器等等)之间的通讯支持,关闭  关闭
irqbalance      支持多核处理器,让CPU可以自动分配系统中断(IRQ),提高系统性能。目前服务器都是多核,开启  开启
isdn           使用ISND设备连接网络,主流是光纤和ADSL,关闭               关闭
kudzu          该服务可以在开机时进行硬件检测,并会调用相关的设置软件,建议关闭,仅在需要时开启  关闭
lvm2-monitor    该服务可以让系统支持LVM逻辑卷组,如果分区采用的是LVM方式,那么应该开启。建议开启 开启
mcstrans        SELinux的支持服务。建议开启                                 开启
mdmonitor      该服务用来监测Software  RAID 或 LVM的信息,建议关闭        关闭
mdmod         该服务用来监测Multi-Path设备,不是必须服务                  关闭
messagebus     这是Linux的IPC进程间通讯服务,用来在各软件中交换信息,个人建议关闭
microcode_ctl    Intel系列的CPU可以通过这个服务额外的微指令集               关闭
mysqld          MySQL数据库服务器,如果需要开启,否则关闭                 开启
named          DNS服务的守护进程,用来进行域名解析,如果是DNS服务器则开启,否则关闭   关闭
netfs            该服务用于在系统启动时自动挂载网络中的共享文件空间,比如NFS,Samba等等,需要就开启,否则关闭   关闭
network         提供网络设置功能。通过这个服务管理网络,开启               开启
nfs             NFS(network file system)服务,Linux与Linux之间的文件共享服务,需要就开启,否则关闭 关闭
nfslock          在Linux中如果使用了NFS服务,为了避免同一个文件被不同用户同时编辑,所以设置这个锁服务,有NFS开启,否则关闭  关闭
ntpd           该服务可以通过互联网自动更新系统时间,使系统时间永远准确,需要开启,但不是必须服务  关闭
pcscd          智能卡检测服务,可以关闭                                    关闭
portmap       用在远程过程调用(RPC)的服务,如果没有任何RPC服务时,可以关闭,主要是NFS和NIS服务需要  关闭
psacct         该守护进程支持几个监控进程活动的工具                        关闭
rdisc           客户端ICMP路由器协议                                      关闭
readahead_early 在系统开机的时候,先将某些进程加载如内存整理,可以加快启动  关闭
readahead_later  同上                                                      关闭
restorecond     用于给SELinux监测和重新加载正确的文件上下文                关闭
rpcgssd         与NFS有关的客户端功能,如果没有NFS关闭                  关闭
rpcidmapd      同上                                                       关闭
rsync          远程数据备份守护进程                                       关闭
sendmail       邮件服务的守护进程,有邮件服务就开启                       关闭
setroubleshoot  该服务用于将SELinux相关信息记录在日志/var/log/messages中     开启
smartd         该服务用于自动检测硬盘状态,建议开启                       开启
smb           网络服务samba的守护进程,可以让Linux和Windows之间共享数据,如果需要则开启       关闭
squid          代理服务的守护进程,如果需要开启,否则关闭                 关闭
sshd           ssh加密远程登录管理服务,服务器的远程管理必须使用此服务   开启
syslog          日志的守护进程                                            开启
vsftpd          vsftp服务的守护进程,如果需要FTP服务则开启,否则关闭     关闭
xfs             这个是XWindows的字体守护进程,为图形界面提供字体服务如果不启动图形界面,就不用开启  关闭
xinetd          超级守护进程,如果有依赖xinetd的服务就必须开启            开启
ypbind         为NIS(网络信息系统)客户机激活ypbind服务进程             关闭
yum-updatesd   yum的在线升级服务                                        关闭

请按F5,刷新后再评论
  • 全部评论(0
    还没有评论,快来抢沙发吧!