6、System V LInux的服务系统

在Linux操作系统中,对于服务的管理体系是沿用了System V的服务管理体系,System V原来是早期AT&T的一个操作系统。对于Linux系统,System V提供了运行级别的概念,System V一共提供了7种运行级别

0  关机
1  单用户模式
2  不带网络的多用户模式
3  带网络的多用户模式,纯文本界面
4  未使用
5  带网络的多用户模式,图形界面
6  重启
对于我们来说,通常使用的是级别3和级别5

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

命令 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                                                           

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

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

/etc/rc.d 除了我们刚才的 init.d 这个目录,我们还发现还有其它的一些目录 rc0.d~rc6.d,这个就对应了系统的7种级别!每个文件对应着一个特定的服务,并标志有是否开机启动以及启动顺序!


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

chkconfig 设置服务是否开机启动

chkconfig --list    查看所有服务的开机启动情况

chkconfig httpd on  服务开启自动启动 

三、xinetd

在Linux系统中还有许多不常驻的一些服务,例如 telnet、rsync服务,这些服务则是通过 xinetd 这个服务来进行管理的。

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

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

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





转载于:https://www.cnblogs.com/guominggigi/p/5292540.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值