『无欲则无求』Linux服务管理 — 75、RPM包安装的独立服务管理

1、独立服务的启动管理

(1)使用/etc/init.d/目录中的启动脚本启动服务(推荐)

[root@localhost ~]# /etc/init.d/httpd start

或者

[root@localhost ~]# /etc/cr.d/init.d/httpd start

两个是软连的关系,用哪个目录都行。

(2)使用service命令来启动独立的服务

[root@localhost ~]# service 独立服务名 start|stop|restart…

service命令启动服务,其实是/etc/init.d/目录中脚本启动服务的简化命令。

service命令最终所搜的还是/etc/init.d/目录中的服务启动脚本。

2、独立服务的自启动管理

提示:设置服务的自启动,是我下次开机时候,该服务的自启动配置,而不是设置此时该服务是否运行。

方式一:

使用chkconfig服务自启动管理命令。

[root@localhost ~]# chkconfig [--level 运行级别] [独立服务名] [on|off]

选项:
--level:设定在哪个运行级别中开机自启动(on),或是关闭自启动(off)

示例:
[root@localhost ~]# chkconfig --level 2345 httpd on

练习:

# 1.先查看httpd服务的自启动状态
[root@localhost ~]# chkconfig --list | grep httpd
httpd   0:关闭 1:关闭 2:关闭 3:关闭 4:关闭 5:关闭 6:关闭

# 2.设置httpd服务的自启动
# httpd服务开启自启动默认的系统运行级别就是2345
# 所以可以简写:chkconfig httpd on 也是可以的
[root@localhost ~]# chkconfig --level 2345 httpd on

# 3.查看修改后的httpd服务自启动状态
[root@localhost ~]# chkconfig --list | grep httpd
httpd   0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭

# 4.关闭httpd服务的自启动
[root@localhost ~]# chkconfig httpd off

# 5.再次查看httpd服务的自启动状态
[root@localhost ~]# chkconfig --list | grep httpd
httpd   0:关闭 1:关闭 2:关闭 3:关闭 4:关闭 5:关闭 6:关闭
方式二:(推荐)

修改/etc/rc.d/rc.local文件,设置服务自启动。

提示:/etc/rc.local/etc/rc.d/rc.local是软链接关系。

(如有忘记,请看https://blog.csdn.net/Liuyuelinjiayou/article/details/107959617中最后一点)

# 配置/etc/rc.d/rc.local配置文件
[root@localhost ~]# vim /etc/rc.d/rc.local

# 内容
#!/bin/sh
#
# This script will be executed *after* all the other init scripts.
# You can put your own initialization stuff in here if you don't
# want to do the full Sys V style init stuff.

touch /var/lock/subsys/local
/etc/rc.d/init.d/httpd start

注意:最好不要写service启动方式,写/etc/init.d/路径的方式启动。因为service启动方式可能不能够百分之百被执行。

提示:

有一个问题,我编辑好/etc/rc.local配置文件,然后查询httpd服务的自启动状态,发现httpd服务的自启动状态没有改变,如下图:

在这里插入图片描述

原因:

第二种方式是修改/etc/rc.local配置文件的方式实现服务自启动,

第一种方式是使用chkconfig命令的方式实现服务自启动,

你不能用方式二修改,用方式一的方式查询,因为两种方式不相干。

所以修改/etc/rc.local配置文件的方式配置服务自启动,只能通过查看配置文件来判断是否配置服务的自启动。

相反同理。

还有一点要注意的是,一个服务用一种方式配置就可以了。

总结:

推荐用第二种方式配置服务的自启动管理。

RPM包安装的服务启动脚本都放在/etc/cr.d/init.d/目录中了,service命令、chkconfig命令、ntsysv命令都是到/etc/cr.d/init.d/目录中找服务的启动脚本,来启动服务。

而源码包安装的服务,是手动安装到指定位置的服务,你手动指定到哪里,服务就安装到哪个位置,所以以命令的方式是找不到源码包安装的服务的。

最后结论:

以命令方式不能直接管理源码包安装的服务,只有配置文件的方式既能能直接管理源码包安装的服务,又能管理rpm包安装的服务,所以推荐方式二。

方式三:
  • 使用ntsysv命令管理自启动:

    [root@localhost ~]# ntsysv [--level 运行级别]
    选项:
    --level运行级别:可以指定设定自启动的运行级别
    
  • ntsysv命令和chkconfig命令

    ntsysv命令和chkconfig命令是通用的,用一个命令修改完,另一个命令中是可以查看到的。

    你可以理解成chkconfig命令是手动命令行配置服务的开机自启动,

    ntsysv命令是通过图形化界面配置服务的开机自启动,

    只不过ntsysv命令默认赋予服务的自启动(系统运行级别)范围比较小。

    如:chkconfig命令开启httpd服务的自启动默认系统运行级别开启为2345,而ntsysv命令只是开启3级别。
    在这里插入图片描述

  • 示例

      # 1.执行ntsysv命令
      [root@localhost ~]# ntsysv
    
      # 2.或者加上系统运行级别
      [root@localhost ~]# ntsysv --level 2345
    

    出现ntsysv命令的图形化界面
    在这里插入图片描述

    操作方式:

    • 上下键:在不同服务之间移动。
    • 空格键:选定或取消服务的自启动。就是在服务之前是否打入*
    • tab键:在不同项目间切换。
    • F1键:显示服务的说明。

    在终端窗口执行ntsysv命令,所有通过RPM包安装的服务,在这里都能够找到,包括基于xinetd的服务。

3、验证

配置完服务自启动之后,重启一下计算机,看一下所配置的自启动服务是否启动,就是这么简单。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值