好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

Linux系统服务基础

Linux系统服务基础

Linux系统服务基础

 您可以通过点击   右下角   的按钮 来对文章内容作出评价, 也可以通过左下方的   关注按钮   来关注我的博客的最新动态。 

如果文章内容对您有帮助, 不要忘记点击右下角的   推荐按钮   来支持一下哦   

如果您对文章内容有任何疑问, 可以通过评论或发邮件的方式联系我: 501395377@qq测试数据  / lzp501395377@gmail测试数据

如果需要转载,请注明出处,谢谢!! 

本篇随笔将主要讲解Linux系统的服务基础,从本篇随笔开始,后续的Linux系列随笔将主要记录常用的各种服务的配置,包括DNS、WWW、Mail等等各种服务的配置。。。

一、系统服务的基本概念

服务,其实就是运行在操作系统后台的一个或者多个应用程序,为计算机系统或用户提供某项特定的服务。

在我们的windows操作系统中,其在后台也运行了许许多多的服务。例如我们装的杀毒软件,其在后台运行了许多我们看不见的服务程序,通过这些服务来为用户或者计算机系统来提高特定的功能。

服务通常是不中断运行的,随时准备接受请求,从而提供某项服务。例如我们日常使用的网页服务,其就是由一个运行在所访问网站的服务器上的httpd服务提供的服务,我们通过在浏览器输入需要访问网站的域名,服务器端的httpd服务就会随时的接收我们发送过来的请求,并响应回给我们的用户。

我们Linux系统绝大多数服务都是网络服务,例如邮件服务、FTP服务、httpd服务等等,网络服务可以使为其他用户、其他计算机提供特定的服务。

二、System V

上面粗略的讲解了一些系统服务的概念,自己感觉写的一般,总的来说,Linux系统通常作为服务器端的操作系统来用的,所以Linux系统提供了许许多的的服务,有些服务需要我们自己来进行配置,这些服务的目的就是为了给我们的计算机、用户提供某项特定的功能。那么对于各种不同的服务,Linux系统是怎么样来统一进行管理的呢?

在Linux操作系统中,Linux对于服务的管理体系是沿用了System V的服务管理体系,System V原来是早期AT&T的一个操作系统。

对于Linux系统,System V提供了运行级别的概念,还记得之前一直提到过的Linux的启动运行级别吗?没错,System V一共提供了7种运行级别

0   关机

1   单用户模式

2   不带网络的多用户模式

3   带网络的多用户模式,纯文本界面

4   未使用

5   带网络的多用户模式,图形界面

6   重启

对于我们来说,通常使用的是级别3和级别5,每个级别下都有对应的启动、不启动的服务,比如单用户模式下,所有的服务都是不启动,这些都是通过System V这个服务管理体系来决定的

System V定义了init为系统启动的第一个进程,进程PID=1,这个进程的目的就是去查看 /etc/inittab 中的系统启动级别从而来启动对应的服务

对于不同的服务,因为其提供该服务的厂家不同,所以这些的服务的启动、关闭机制通常不同,在Linux系统中,为了方便的管理这些服务,每个服务的启动、结束、重启等操作都由一个System V脚本来进行控制,拥有固定的格式。

对于Linux系统上的服务,这些服务的System V脚本文件都是存放在 /etc/rc.d/init.d 这个目录下

[root@xiaoluo ~]#  cd /etc/rc.d/init.d/  
[root@xiaoluo init.d]#   ls  
abrt - ccpp         firstboot     messagebus      quota_nld    snmptrapd
abrtd             functions     mysqld          rdisc        spice - vdagentd
abrt - oops         haldaemon     netconsole      restorecond  sshd
acpid             halt          netfs           rngd         sssd
atd               htcacheclean  network         rpcbind      sysstat
auditd            httpd         NetworkManager  rpcgssd      udev - post
autofs            ip6tables     nfs             rpcidmapd    vboxadd
blk -availability  iptables      nfslock         rpcsvcgssd   vboxadd- service
bluetooth         irqbalance    ntpd            rsyslog      vboxadd - x11
certmonger        kdump         ntpdate         sandbox      vncserver
cpuspeed            killall         oddjobd         saslauthd    wdaemon
crond             lvm2 - lvmetad  portreserve     single       winbind
cups              lvm2 - monitor  postfix         smartd       wpa_supplicant
dnsmasq           mdmonitor     psacct          snmpd        ypbind 

我们看到在这个目录下,存在了许多纯文本文件,这些文件都是系统每一个服务的System V的脚本文件,对于该脚本文件,我们要启动什么服务,都是通过这些脚本文件来启动的,我们也可以通过编写System V脚本文件来手工创建一个我们自己的由System V来控制的服务。

对于Linux的所有的这些服务,我们通过  service  这个命令来进行统一的管理

命令  service  可以调用指定服务的System V脚本,并执行指定的动作

  service 服务名 [start | stop | restart | status]  

例如我们这里需要启动 httpd 这个服务,可以使用 service httpd start 这个命令

 [root@xiaoluo init.d]#  service httpd start 
Starting httpd: httpd: apr_sockaddr_info_get() failed   for   xiaoluo
httpd: Could not reliably determine the server  '  s fully qualified domain name, using 127.0.0.1 for ServerName 
                                                           [  OK  ]

我们也可以通过 service httpd status 来查看当前服务的启动情况

 [root@xiaoluo init.d]#  service httpd status 
httpd (pid    6589 ) is running.

如果我们要重启该服务,或者关闭服务可以分别使用 service httpd restart 、service httpd stop命令

 [root@xiaoluo init.d]#  service httpd restart 
Stopping httpd:                                            [  OK  ]
Starting httpd: httpd: apr_sockaddr_info_get() failed   for   xiaoluo
httpd: Could not reliably determine the server  '  s fully qualified domain name, using 127.0.0.1 for ServerName 
                                                            [  OK  ]
[root@xiaoluo init.d]#  service httpd stop 
Stopping httpd:                                            [  OK  ] 

对于Linux系统的这些服务,我们都是通过 service 这个命令去调用该服务对应的System V脚本,并执行其指定的动作

刚才我们也说到了,System V定义了运行级别的概念,每个运行级别对应有启动、不启动的服务,在 /etc/rc.d 这个目录下,除了我们刚才的 init.d 这个目录,我们还发现还有其它的一些目录,诸如 rc0.d、rc1.d等

 [root@xiaoluo rc.d]# ll
total   60  
drwxr -xr-x.  2  root root   4096  May  27   22 : 57   init.d
 -rwxr-xr-x.  1  root root   2617  Feb  22   19 : 18   rc
drwxr -xr-x.  2  root root   4096  Jun   1   14 : 32   rc0.d
drwxr -xr-x.  2  root root   4096  Jun   1   14 : 32   rc1.d
drwxr -xr-x.  2  root root   4096  Jun   1   14 : 32   rc2.d
drwxr -xr-x.  2  root root   4096  Jun   1   14 : 32   rc3.d
drwxr -xr-x.  2  root root   4096  Jun   1   14 : 32   rc4.d
drwxr -xr-x.  2  root root   4096  Jun   1   14 : 32   rc5.d
drwxr -xr-x.  2  root root   4096  Jun   1   14 : 32   rc6.d
 -rwxr-xr-x.  1  root root    220  Feb  22   19 : 18   rc.local
 -rwxr-xr-x.  1  root root  19472  Feb  22   19 : 18  rc.sysinit

这些 rc0.d ,rc3.d这些目录就分别对应了系统的7中启动级别,每个目录里面都存放了许多的文件,每个文件对应着一个特定的服务,并标志有是否开机启动以及启动顺序,例如我们进入到 rc5.d 这个目录

[root@xiaoluo rc.d]# cd rc5.d/ 
[root@xiaoluo rc5.d]#   ls  - l
total   0  
lrwxrwxrwx.   1  root root  16  May  14   01 : 26  K01smartd -> init.d/ smartd
lrwxrwxrwx.   1  root root  17  May  14   01 : 21  K02oddjobd -> init.d/ oddjobd
lrwxrwxrwx.   1  root root  17  May  14   01 : 28  K05wdaemon -> init.d/ wdaemon
lrwxrwxrwx.   1  root root  16  May  14   01 : 26  K10psacct -> init.d/ psacct
lrwxrwxrwx.   1  root root  19  May  14   01 : 21  K10saslauthd -> init.d/ saslauthd
lrwxrwxrwx.   1  root root  22  May  14   01 : 21  K15htcacheclean -> init.d/ htcacheclean
lrwxrwxrwx.   1  root root  15  Jun   1   14 : 32  K15httpd -> init.d/ httpd
lrwxrwxrwx.   1  root root  19  May  27   22 : 57  K35vncserver -> init.d/ vncserver
lrwxrwxrwx.   1  root root  17  May  14   01 : 21  K50dnsmasq -> init.d/ dnsmasq
lrwxrwxrwx.   1  root root  20  May  14   01 : 19  K50netconsole -> init.d/ netconsole
lrwxrwxrwx.   1  root root  15  May  14   01 : 21  K50snmpd -> init.d/ snmpd
lrwxrwxrwx.   1  root root  19  May  14   01 : 21  K50snmptrapd -> init.d/ snmptrapd
lrwxrwxrwx.   1  root root  13  May  14   01 : 19  K60nfs -> init.d/ nfs
lrwxrwxrwx.   1  root root  20  May  14   01 : 19  K69rpcsvcgssd -> init.d/ rpcsvcgssd
lrwxrwxrwx.   1  root root  17  May  14   01 : 30  K73winbind -> init.d/ winbind
lrwxrwxrwx.   1  root root  14  May  14   01 : 35  K74ntpd -> init.d/ ntpd
lrwxrwxrwx.   1  root root  17  May  14   01 : 21  K75ntpdate -> init.d/ ntpdate
lrwxrwxrwx.   1  root root  19  May  14   01 : 26  K75quota_nld -> init.d/ quota_nld
lrwxrwxrwx.   1  root root  16  May  14   01 : 30  K76ypbind -> init.d/ ypbind
lrwxrwxrwx.   1  root root  15  May  14   01 : 35  K80kdump -> init.d/ kdump
lrwxrwxrwx.   1  root root  24  Jun   1   14 : 32  K84wpa_supplicant -> init.d/ wpa_supplicant
lrwxrwxrwx.   1  root root  21  May  14   01 : 19  K87restorecond -> init.d/ restorecond
lrwxrwxrwx.   1  root root  14  Jun   1   14 : 32  K88sssd -> init.d/ sssd
lrwxrwxrwx.   1  root root  15  May  14   01 : 19  K89rdisc -> init.d/ rdisc
lrwxrwxrwx.   1  root root  19  May  14   01 : 35  K95firstboot -> init.d/ firstboot
lrwxrwxrwx.   1  root root  14  May  14   01 : 26  K99rngd -> init.d/ rngd
lrwxrwxrwx.   1  root root  17  May  14   01 : 24  S01sysstat -> init.d/ sysstat
lrwxrwxrwx.   1  root root  22  May  14   01 : 25  S02lvm2-monitor -> init.d/lvm2- monitor
lrwxrwxrwx.   1  root root  19  May  14   01 : 22  S08ip6tables -> init.d/ ip6tables
lrwxrwxrwx.   1  root root  18  May  14   01 : 19  S08iptables -> init.d/ iptables
lrwxrwxrwx.   1  root root  17  May  14   01 : 19  S10network -> init.d/ network
lrwxrwxrwx.   1  root root  16  May  31   11 : 27  S11auditd -> init.d/ auditd
lrwxrwxrwx.   1  root root  21  May  14   01 : 13  S11portreserve -> init.d/ portreserve
lrwxrwxrwx.   1  root root  17  May  14   01 : 21  S12rsyslog -> init.d/ rsyslog
lrwxrwxrwx.   1  root root  18  May  14   01 : 26  S13cpuspeed -> init.d/ cpuspeed
lrwxrwxrwx.   1  root root  20  May  14   01 : 26  S13irqbalance -> init.d/ irqbalance
lrwxrwxrwx.   1  root root  17  May  14   01 : 14  S13rpcbind -> init.d/ rpcbind
lrwxrwxrwx.   1  root root  19  May  14   01 : 19  S15mdmonitor -> init.d/ mdmonitor
lrwxrwxrwx.   1  root root  20  May  14   01 : 12  S22messagebus -> init.d/ messagebus
lrwxrwxrwx.   1  root root  24  May  26   14 : 01  S23NetworkManager -> init.d/ NetworkManager
lrwxrwxrwx.   1  root root  17  Jun   1   14 : 32  S24nfslock -> init.d/ nfslock
lrwxrwxrwx.   1  root root  17  Jun   1   14 : 32  S24rpcgssd -> init.d/ rpcgssd
lrwxrwxrwx.   1  root root  19  Jun   1   14 : 32  S24rpcidmapd -> init.d/ rpcidmapd
lrwxrwxrwx.   1  root root  26  May  14   01 : 25  S25blk-availability -> init.d/blk- availability
lrwxrwxrwx.   1  root root  14  May  14   01 : 19  S25cups -> init.d/ cups
lrwxrwxrwx.   1  root root  15  May  14   01 : 19  S25netfs -> init.d/ netfs
lrwxrwxrwx.   1  root root  15  May  14   01 : 26  S26acpid -> init.d/ acpid
lrwxrwxrwx.   1  root root  19  May  14   01 : 20  S26haldaemon -> init.d/ haldaemon
lrwxrwxrwx.   1  root root  19  May  14   01 : 19  S26udev-post -> init.d/udev- post
lrwxrwxrwx.   1  root root  16  May  14   01 : 22  S28autofs -> init.d/ autofs
lrwxrwxrwx.   1  root root  17  May  14   02 : 15  S30vboxadd -> init.d/ vboxadd
lrwxrwxrwx.   1  root root  21  May  14   02 : 16  S30vboxadd-x11 -> init.d/vboxadd- x11
lrwxrwxrwx.   1  root root  25  May  14   02 : 16  S35vboxadd-service -> init.d/vboxadd- service
lrwxrwxrwx.   1  root root  19  May  14   01 : 22  S50bluetooth -> init.d/ bluetooth
lrwxrwxrwx.   1  root root  14  May  14   01 : 26  S55sshd -> init.d/ sshd
lrwxrwxrwx.   1  root root  16  May  14   14 : 29  S64mysqld -> init.d/ mysqld
lrwxrwxrwx.   1  root root  24  May  14   01 : 26  S70spice-vdagentd -> init.d/spice- vdagentd
lrwxrwxrwx.   1  root root  17  May  14   01 : 21  S80postfix -> init.d/ postfix
lrwxrwxrwx.   1  root root  19  May  14   01 : 16  S82abrt-ccpp -> init.d/abrt- ccpp
lrwxrwxrwx.   1  root root  15  May  14   01 : 16  S82abrtd -> init.d/ abrtd
lrwxrwxrwx.   1  root root  15  May  14   01 : 22  S90crond -> init.d/ crond
lrwxrwxrwx.   1  root root  13  May  14   01 : 14  S95atd -> init.d/ atd
lrwxrwxrwx.   1  root root  20  May  14   01 : 21  S99certmonger -> init.d/ certmonger
lrwxrwxrwx.   1  root root  11  May  14   01 : 19  S99local -> rc.local

我们发现,在这些目录里面,存放的都是链接文件,不过这每一个链接文件的名字都有着严格的规定。每一个链接文件都由3部分组成

 K15httpd  -> init.d/httpd     S55sshd  -> init.d/sshd
 ①第一个部分是第一个字母K或者S,表示该服务是不是是不是开机自动启动,K表示开机不启动,S表示开机就启动
②第二个部分是一个数字,这个数字代表的是该服务的启动顺序,服务启动的顺序非常的重要,例如我们的网络服务需要在邮件服务之前启动
③第三个部分就是对应服务的名字,该链接文件其实都是指向的是 init.d 这个目录下的System V脚本文件

我们如果希望某服务开机就启动,可以通过修改 rc5.d 目录下的链接文件,不过这样做很麻烦,Linux系统提供了一个  chkconfig  命令可以来设置服务是否开机启动

例如我们通过  chkconfig --list  命令来查看所有服务的开机启动情况

[root@xiaoluo rc5.d]#  chkconfig --   list 
NetworkManager       0 :off     1 :off     2 :on     3 :on     4 :on     5 :on     6  :off
abrt -ccpp           0 :off     1 :off     2 :off     3 :on     4 :off     5 :on     6  :off
abrtd                0 :off     1 :off     2 :off     3 :on     4 :off     5 :on     6  :off
acpid                0 :off     1 :off     2 :on     3 :on     4 :on     5 :on     6  :off
atd                  0 :off     1 :off     2 :off     3 :on     4 :on     5 :on     6  :off
auditd               0 :off     1 :off     2 :on     3 :on     4 :on     5 :on     6  :off
autofs               0 :off     1 :off     2 :off     3 :on     4 :on     5 :on     6  :off
blk -availability     0 :off     1 :on     2 :on     3 :on     4 :on     5 :on     6  :off
bluetooth            0 :off     1 :off     2 :off     3 :on     4 :on     5 :on     6  :off
certmonger           0 :off     1 :off     2 :off     3 :on     4 :on     5 :on     6  :off
cpuspeed             0 :off     1 :on     2 :on     3 :on     4 :on     5 :on     6  :off
crond                0 :off     1 :off     2 :on     3 :on     4 :on     5 :on     6  :off
cups                 0 :off     1 :off     2 :on     3 :on     4 :on     5 :on     6  :off
dnsmasq              0 :off     1 :off     2 :off     3 :off     4 :off     5 :off     6  :off
firstboot            0 :off     1 :off     2 :off     3 :off     4 :off     5 :off     6  :off
haldaemon            0 :off     1 :off     2 :off     3 :on     4 :on     5 :on     6  :off
htcacheclean         0 :off     1 :off     2 :off     3 :off     4 :off     5 :off     6  :off
httpd                0 :off     1 :off     2 :off     3 :off     4 :off     5 :off     6  :off
ip6tables            0 :off     1 :off     2 :on     3 :on     4 :on     5 :on     6  :off
iptables             0 :off     1 :off     2 :on     3 :on     4 :on     5 :on     6  :off
irqbalance           0 :off     1 :off     2 :off     3 :on     4 :on     5 :on     6  :off
kdump                0 :off     1 :off     2 :off     3 :off     4 :off     5 :off     6  :off
lvm2 -monitor        0 :off     1 :on     2 :on     3 :on     4 :on     5 :on     6  :off
mdmonitor            0 :off     1 :off     2 :on     3 :on     4 :on     5 :on     6  :off
messagebus           0 :off     1 :off     2 :on     3 :on     4 :on     5 :on     6  :off
mysqld               0 :off     1 :off     2 :on     3 :on     4 :on     5 :on     6  :off
netconsole           0 :off     1 :off     2 :off     3 :off     4 :off     5 :off     6  :off
netfs                0 :off     1 :off     2 :off     3 :on     4 :on     5 :on     6  :off
network              0 :off     1 :off     2 :on     3 :on     4 :on     5 :on     6  :off
nfs                  0 :off     1 :off     2 :off     3 :off     4 :off     5 :off     6  :off
nfslock              0 :off     1 :off     2 :off     3 :on     4 :on     5 :on     6  :off
ntpd                 0 :off     1 :off     2 :off     3 :off     4 :off     5 :off     6  :off
ntpdate              0 :off     1 :off     2 :off     3 :off     4 :off     5 :off     6  :off
oddjobd              0 :off     1 :off     2 :off     3 :off     4 :off     5 :off     6  :off
portreserve          0 :off     1 :off     2 :on     3 :on     4 :on     5 :on     6  :off
postfix              0 :off     1 :off     2 :on     3 :on     4 :on     5 :on     6  :off
psacct               0 :off     1 :off     2 :off     3 :off     4 :off     5 :off     6  :off
quota_nld            0 :off     1 :off     2 :off     3 :off     4 :off     5 :off     6  :off
rdisc                0 :off     1 :off     2 :off     3 :off     4 :off     5 :off     6  :off
restorecond          0 :off     1 :off     2 :off     3 :off     4 :off     5 :off     6  :off
rngd                 0 :off     1 :off     2 :off     3 :off     4 :off     5 :off     6  :off
rpcbind              0 :off     1 :off     2 :on     3 :on     4 :on     5 :on     6  :off
rpcgssd              0 :off     1 :off     2 :off     3 :on     4 :on     5 :on     6  :off
rpcidmapd            0 :off     1 :off     2 :off     3 :on     4 :on     5 :on     6  :off
rpcsvcgssd           0 :off     1 :off     2 :off     3 :off     4 :off     5 :off     6  :off
rsyslog              0 :off     1 :off     2 :on     3 :on     4 :on     5 :on     6  :off
saslauthd            0 :off     1 :off     2 :off     3 :off     4 :off     5 :off     6  :off
smartd               0 :off     1 :off     2 :off     3 :off     4 :off     5 :off     6  :off
snmpd                0 :off     1 :off     2 :off     3 :off     4 :off     5 :off     6  :off
snmptrapd            0 :off     1 :off     2 :off     3 :off     4 :off     5 :off     6  :off
spice -vdagentd      0 :off     1 :off     2 :off     3 :off     4 :off     5 :on     6  :off
sshd                 0 :off     1 :off     2 :on     3 :on     4 :on     5 :on     6  :off
sssd                 0 :off     1 :off     2 :off     3 :off     4 :off     5 :off     6  :off
sysstat              0 :off     1 :on     2 :on     3 :on     4 :on     5 :on     6  :off
udev -post           0 :off     1 :on     2 :on     3 :on     4 :on     5 :on     6  :off
vboxadd              0 :off     1 :off     2 :on     3 :on     4 :on     5 :on     6  :off
vboxadd -service     0 :off     1 :off     2 :on     3 :on     4 :on     5 :on     6  :off
vboxadd -x11         0 :off     1 :off     2 :off     3 :on     4 :off     5 :on     6  :off
vncserver            0 :off     1 :off     2 :off     3 :off     4 :off     5 :off     6  :off
wdaemon              0 :off     1 :off     2 :off     3 :off     4 :off     5 :off     6  :off
winbind              0 :off     1 :off     2 :off     3 :off     4 :off     5 :off     6  :off
wpa_supplicant       0 :off     1 :off     2 :off     3 :off     4 :off     5 :off     6  :off
ypbind               0 :off     1 :off     2 :off     3 :off     4 :off     5 :off     6 :off

比如我们需要设置 httpd 服务开启自动启动,可以使用  chkconfig httpd on  命令即可

 [root@xiaoluo rc5.d]#  chkconfig httpd on 
[root@xiaoluo rc5.d]# chkconfig  --list |  grep   httpd
httpd                0 :off     1 :off     2 :on     3 :on     4 :on     5 :on     6 :off

如果需要设置成开机不启动,则使用  chkconfig httpd off  命令即可

 [root@xiaoluo rc5.d]#  chkconfig httpd off 
[root@xiaoluo rc5.d]# chkconfig  --list |  grep   httpd
httpd                0 :off     1 :off     2 :off     3 :off     4 :off     5 :off     6 :off

三、xinetd

其实对于上面通过 S有stem V来管理的一些服务都属于Linux系统的常驻运行的服务,其实在Linux系统中还有许多不常驻的一些服务,例如 telnet、rsync服务,这些服务则是通过 xinetd 这个服务来进行管理的。

xinetd 控制的就是那些不常驻的服务,功能较为简单的服务

xinetd其实自己本身就是作为一个系统的常驻的服务运行在后台,而xinetd所控制的服务在没有连接请求的时候是不运行的,所有xinetd控制的服务的连接请求都会提交给xinetd来进行代理

xinetd在收到一个请求后,会根据请求的协议及服务启动相应的服务进程,进程处理完后请求就会结束

xinetd本身就是一个系统服务,通过 System V来对其进行管理,在CentOS6/RHEL6中,xinetd服务默认是没有安装的,我们若要使用该服务,首先需要安装它

[root@xiaoluo ~]#  yum   install   xinetd
Loaded plugins: fastestmirror, refresh - packagekit, security
Loading mirror speeds from cached hostfile
  *  base: mirror01.idc.hinet.net
  *  extras: mirror01.idc.hinet.net
  *  updates: mirror01.idc.hinet.net
base                                                      |  3.7  kB      00 : 00       
extras                                                    |  3.5  kB      00 : 00       
updates                                                   |  3.4  kB      00 : 00       
Setting up Install Process
Resolving Dependencies
 -->  Running transaction check
 ---> Package xinetd.x86_64  2 : 2.3 . 14 - 38  .el6 will be installed
 -->  Finished Dependency Resolution

Dependencies Resolved

 ================================================================================ 
 Package         Arch            Version                    Repository     Size
 ================================================================================ 
Installing:
 xinetd          x86_64            2 : 2.3 . 14 - 38 .el6            base           121   k

Transaction Summary
 ================================================================================ 
Install         1   Package(s)

Total download size:   121   k
Installed size:   259   k
Is this ok [y / N]: y
Downloading Packages:
xinetd - 2.3 . 14 - 38 .el6.x86_64.rpm                          |  121  kB      00 : 01       
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing :   2 :xinetd- 2.3 . 14 - 38 .el6.x86_64                                 1 / 1   
  Verifying  :   2 :xinetd- 2.3 . 14 - 38 .el6.x86_64                                 1 / 1   

Installed:
  xinetd.x86_64   2 : 2.3 . 14 - 38  .el6                                                 

Complete !

在我们安装好我们的xinetd服务以后,我们这时再通过  chkconfig --list  命令来查看所有的服务启动设置

[root@xiaoluo ~]#  chkconfig --   list 
NetworkManager       0 :off     1 :off     2 :on     3 :on     4 :on     5 :on     6  :off
abrt -ccpp           0 :off     1 :off     2 :off     3 :on     4 :off     5 :on     6  :off
abrtd                0 :off     1 :off     2 :off     3 :on     4 :off     5 :on     6  :off
acpid                0 :off     1 :off     2 :on     3 :on     4 :on     5 :on     6  :off
atd                  0 :off     1 :off     2 :off     3 :on     4 :on     5 :on     6  :off
auditd               0 :off     1 :off     2 :on     3 :on     4 :on     5 :on     6  :off
autofs               0 :off     1 :off     2 :off     3 :on     4 :on     5 :on     6  :off
blk -availability     0 :off     1 :on     2 :on     3 :on     4 :on     5 :on     6  :off
bluetooth            0 :off     1 :off     2 :off     3 :on     4 :on     5 :on     6  :off
certmonger           0 :off     1 :off     2 :off     3 :on     4 :on     5 :on     6  :off
cpuspeed             0 :off     1 :on     2 :on     3 :on     4 :on     5 :on     6  :off
crond                0 :off     1 :off     2 :on     3 :on     4 :on     5 :on     6  :off
cups                 0 :off     1 :off     2 :on     3 :on     4 :on     5 :on     6  :off
dnsmasq              0 :off     1 :off     2 :off     3 :off     4 :off     5 :off     6  :off
firstboot            0 :off     1 :off     2 :off     3 :off     4 :off     5 :off     6  :off
haldaemon            0 :off     1 :off     2 :off     3 :on     4 :on     5 :on     6  :off
htcacheclean         0 :off     1 :off     2 :off     3 :off     4 :off     5 :off     6  :off
httpd                0 :off     1 :off     2 :off     3 :off     4 :off     5 :off     6  :off
ip6tables            0 :off     1 :off     2 :on     3 :on     4 :on     5 :on     6  :off
iptables             0 :off     1 :off     2 :on     3 :on     4 :on     5 :on     6  :off
irqbalance           0 :off     1 :off     2 :off     3 :on     4 :on     5 :on     6  :off
kdump                0 :off     1 :off     2 :off     3 :off     4 :off     5 :off     6  :off
lvm2 -monitor        0 :off     1 :on     2 :on     3 :on     4 :on     5 :on     6  :off
mdmonitor            0 :off     1 :off     2 :on     3 :on     4 :on     5 :on     6  :off
messagebus           0 :off     1 :off     2 :on     3 :on     4 :on     5 :on     6  :off
mysqld               0 :off     1 :off     2 :on     3 :on     4 :on     5 :on     6  :off
netconsole           0 :off     1 :off     2 :off     3 :off     4 :off     5 :off     6  :off
netfs                0 :off     1 :off     2 :off     3 :on     4 :on     5 :on     6  :off
network              0 :off     1 :off     2 :on     3 :on     4 :on     5 :on     6  :off
nfs                  0 :off     1 :off     2 :off     3 :off     4 :off     5 :off     6  :off
nfslock              0 :off     1 :off     2 :off     3 :on     4 :on     5 :on     6  :off
ntpd                 0 :off     1 :off     2 :off     3 :off     4 :off     5 :off     6  :off
ntpdate              0 :off     1 :off     2 :off     3 :off     4 :off     5 :off     6  :off
oddjobd              0 :off     1 :off     2 :off     3 :off     4 :off     5 :off     6  :off
portreserve          0 :off     1 :off     2 :on     3 :on     4 :on     5 :on     6  :off
postfix              0 :off     1 :off     2 :on     3 :on     4 :on     5 :on     6  :off
psacct               0 :off     1 :off     2 :off     3 :off     4 :off     5 :off     6  :off
quota_nld            0 :off     1 :off     2 :off     3 :off     4 :off     5 :off     6  :off
rdisc                0 :off     1 :off     2 :off     3 :off     4 :off     5 :off     6  :off
restorecond          0 :off     1 :off     2 :off     3 :off     4 :off     5 :off     6  :off
rngd                 0 :off     1 :off     2 :off     3 :off     4 :off     5 :off     6  :off
rpcbind              0 :off     1 :off     2 :on     3 :on     4 :on     5 :on     6  :off
rpcgssd              0 :off     1 :off     2 :off     3 :on     4 :on     5 :on     6  :off
rpcidmapd            0 :off     1 :off     2 :off     3 :on     4 :on     5 :on     6  :off
rpcsvcgssd           0 :off     1 :off     2 :off     3 :off     4 :off     5 :off     6  :off
rsyslog              0 :off     1 :off     2 :on     3 :on     4 :on     5 :on     6  :off
saslauthd            0 :off     1 :off     2 :off     3 :off     4 :off     5 :off     6  :off
smartd               0 :off     1 :off     2 :off     3 :off     4 :off     5 :off     6  :off
snmpd                0 :off     1 :off     2 :off     3 :off     4 :off     5 :off     6  :off
snmptrapd            0 :off     1 :off     2 :off     3 :off     4 :off     5 :off     6  :off
spice -vdagentd      0 :off     1 :off     2 :off     3 :off     4 :off     5 :on     6  :off
sshd                 0 :off     1 :off     2 :on     3 :on     4 :on     5 :on     6  :off
sssd                 0 :off     1 :off     2 :off     3 :off     4 :off     5 :off     6  :off
sysstat              0 :off     1 :on     2 :on     3 :on     4 :on     5 :on     6  :off
udev -post           0 :off     1 :on     2 :on     3 :on     4 :on     5 :on     6  :off
vboxadd              0 :off     1 :off     2 :on     3 :on     4 :on     5 :on     6  :off
vboxadd -service     0 :off     1 :off     2 :on     3 :on     4 :on     5 :on     6  :off
vboxadd -x11         0 :off     1 :off     2 :off     3 :on     4 :off     5 :on     6  :off
vncserver            0 :off     1 :off     2 :off     3 :off     4 :off     5 :off     6  :off
wdaemon              0 :off     1 :off     2 :off     3 :off     4 :off     5 :off     6  :off
winbind              0 :off     1 :off     2 :off     3 :off     4 :off     5 :off     6  :off
wpa_supplicant       0 :off     1 :off     2 :off     3 :off     4 :off     5 :off     6  :off
xinetd               0 :off     1 :off     2 :off     3 :on     4 :on     5 :on     6  :off
ypbind               0 :off     1 :off     2 :off     3 :off     4 :off     5 :off     6  :off

 xinetd based services:
     chargen - dgram:     off
    chargen - stream:    off
    daytime - dgram:     off
    daytime - stream:    off
    discard - dgram:     off
    discard - stream:    off
      echo - dgram:        off
      echo - stream:       off
    rsync:             off
    tcpmux - server:     off
      time - dgram:        off
      time -stream:       off

我们看到,在安装了xinetd服务以后,其下面出现了一些其他的服务选项,例如rsync,chargen-dgram等这些服务,这些服务都是系统的一些不常驻服务,都是通过xinetd这个服务来对其进行管理的

xinetd服务的配置文件是  /etc/xinetd.conf

[root@xiaoluo ~]#  cat  /etc/ xinetd.conf 
#
# This is the master xinetd configuration   file . Settings  in   the
# default section will be inherited by all service configurations
# unless explicitly overridden   in   the service configuration. See
# xinetd.conf   in  the  man  pages  for  a  more   detailed explanation of
# these attributes.

defaults
{
# The next two items are intended to be a quick access place to
# temporarily enable or disable services.
#
#    enabled         = 
#    disabled     = 

# Define general logging characteristics.
    log_type     = SYSLOG daemon  info   
    log_on_failure     =  HOST
    log_on_success     =  PID HOST DURATION EXIT

# Define access restriction defaults
#
#    no_access     = 
#    only_from     = 
#    max_load     =  0  
    cps         =  50   10  
    instances     =  50  
    per_source     =  10  

# Address and networking defaults
#
#    bind         = 
#    mdns         =  yes
    v6only         =  no

# setup environmental attributes
#
#    passenv         =
     groups         =  yes
    umask         =  002  

# Generally, banners are not used. This sets up their global defaults
#
#    banner         = 
#    banner_fail     = 
#    banner_success     = 
}

includedir  /etc/xinetd.d

对于由xinetd控制的那些不常驻服务,它们的配置文件是存放在  /etc/xinetd.d/  这个目录下与该服务名字相同的文件

[root@xiaoluo ~]# cd /etc/xinetd.d/ 
[root@xiaoluo xinetd.d]# ll
total   48 
-rw-------.  1  root root  1157  Feb  22   11 : 03  chargen- dgram
 -rw-------.  1  root root  1159  Feb  22   11 : 03  chargen- stream
 -rw-------.  1  root root  1157  Feb  22   11 : 03  daytime- dgram
 -rw-------.  1  root root  1159  Feb  22   11 : 03  daytime- stream
 -rw-------.  1  root root  1157  Feb  22   11 : 03  discard- dgram
 -rw-------.  1  root root  1159  Feb  22   11 : 03  discard- stream
 -rw-------.  1  root root  1148  Feb  22   11 : 03   echo - dgram
 -rw-------.  1  root root  1150  Feb  22   11 : 03   echo - stream
 -rw-r--r--.  1  root root   332  Apr   3    2012   rsync
 -rw-------.  1  root root  1212  Feb  22   11 : 03  tcpmux- server
 -rw-------.  1  root root  1149  Feb  22   11 : 03   time - dgram
 -rw-------.  1  root root  1150  Feb  22   11 : 03   time -stream

同样这些配置文件的配置也有固定的格式,例如rsync这个服务的配置文件信息为:

[root@xiaoluo xinetd.d]#  cat   rsync 
# default: off
# description: The rsync server is a good addition to an   ftp   server, as it #    allows crc checksumming etc.
service rsync
{
    disable     =  yes
    flags         =  IPv6
    socket_type      =  stream
      wait             =  no
    user             =  root
    server           = /usr/bin/ rsync
    server_args      = -- daemon
    log_on_failure   +=  USERID
} 

本篇随笔主要讲解了Linux系统服务的基础知识、System V与Xinetd的概念,以及通过 servcie 命令来启动某一服务,通过 chkconfig 命令来设置服务是否开机启动

 

 

分类:  Linux

标签:  linux ,  CentOS

作者: Leo_wl

    

出处: http://HdhCmsTestcnblogs测试数据/Leo_wl/

    

本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

版权信息

查看更多关于Linux系统服务基础的详细内容...

  阅读:45次