1、源码包服务的启动管理

# 通过源码包的安装路径,找到该服务的启动脚本,
# 也就是获得该服务的启动脚本的绝对路径,
# 最后加上启动选项。
[root@localhost ~]# /usr/local/apache2/bin/apachectl start|stoplrestart|...

注意:

按用源码包安装服务的时候,每个服务的启动脚本是不同的。

我们如何知道一个服务的启动脚本叫什么名称呢?

在官方给你的安装文档中,会明确的告诉你该服务的启动脚本叫什么名称。

开启服务示例:

说明:

这个报错说的是localhost.localdomain这个主机名没有被识别,但是apache服务启动起来是没有问题的。

查看apache服务是否开启,执行命令ps aux | grep httpd

如下图所示:

2、源码包服务的自启动管理

通过配置/etc/rc.d/rc.local配置文件,来实现通过源码包安装的服务的自启动管理。

这个方法和RPM包默认安装的独立服务管理方式二一样(请看文章中的方式二:点此查看)。

这个方法是通用的,不论是源码包还是RPM包安装的服务都可以,主要看的是你在/etc/rc.d/rc.local配置文件中写的是源码包安装的服务启动命令,还是通过RPM包安装的服务启动命令。

所以在上文中推荐使用配置文件的方式进行服务的管理,通用、统一管理Linux系统中的服务。

示例:

# 配置/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
/usr/local/apache2/bin/apachectl start

3、让源码包服务被服务管理命令识别

我们接下来就做个试验,把通过源码包安装的apche服务,变为和RPM包安装的apache服务一样,可以被servicechkconfigntsysv命令识别。

我们所要解决的问题如下图:

(1)让通过源码包安装的服务能被service命令管理启动

service命令其实只是在/etc/rc.d/init.d/目录中查找是否有服务的启动脚本,所以我们只需要做个软链接,把源码包的启动脚本链接到/etc/rc.d/init.d/目录中,就能被service命令管理了。

# 将通过源码包安装的服务的启动脚本,在/etc/rc.d/init.d/目录中做一个软链接
[root@localhost ~]# ln -s /usr/local/apache2/bin/apachectl /etc/rc.d/init.d/apachectl

查看/etc/rc.d/init.d/内容,如下图所示:

执行service apachectl restart命令,开启apche服务。

可以看到apche服务可以通过service 命令进行启动了,没有报未被识别的服务错误。

(2)让通过源码包安装的服务能被chkconfig命令管理自启动

接上一步,然后需要对软链接到/etc/rc.d/init.d/目录,通过源码包安装的服务的启动脚本进行配置。

# 编辑/etc/rc.d/init.d/目录中的源码包启动脚本
# (注意此文件是软链接,所以修改的还是源码包启动脚本)
[root@localhost ~]# vim /etc/rc.d/init.d/apachectl # 在开头添加内容如下
#!/bin/sh
# 添加内容-1
# 指定httpd脚本可以被chkconfig命令管理
# 格式是:chkconfig:运行级别启动顺序关闭顺序
# 这里我们设定apache在3和5级别能被chkconfig命令管理,启动顺序是S86,关闭顺序是K76
# 注意:(自定顺序,不要和系统中已有的启动程序顺序冲突)
# chkconfig:35 86 76
#
# 添加内容-2
# 说明,内容随意
# description:aaabbbccc #以上两句话必须加入,才能被chkconfig命令识别。

然后让chkconfig命令能够管理源码包安装的服务。

[root@localhost ~]# chkconfig --add apachectl

没有报错说明成功。

通过chkconfig命令查看Linux中自启动服务。

如下图所示:

然后可以通过chkconfig命令开启该服务的自启动状态了。

(3)让ntsysv命令可以管理通过源码包安装的服务

ntsysv命令其实是和chkconfig命令使用同样的管理机制,也就是说上面chkconfig命令能够管理源码包安装的服务,ntsysv命令也就可以管理通过源码包安装的服务了。

执行[root@localhost ~]# ntsysv命令,可以在图形界面中找到我们上边刚刚配置的apache服务。

(4)总结

  • 如果想让源码包服务被service命令识别并管理,只要做个软链接把启动脚本链接到/etc/rc.d/init.d/目录中即可。
  • 要想让源码包服务被chkconfig命令识别,除了需要把服务的启动脚本链接到/etc/rc.d/init.d/目录中,还要修改这个启动脚本,在启动脚本的开头加入:
    • # chkconfig:运行级别、启动顺序、关闭顺序。
    • # description:说明信息。
  • 然后需要使用chkconfig --add 服务名的方式,把服务加入chkconfig命令管理中。

    命令格式如下:
    [root@localhost ~]# chkconfig [选项] [服务名]
    
    选项:
    --add:把服务加入chkconfig命令的管理。
    --del:把服务从chkconfig命令的管理中删除。 # 示例:
    # 把apache服务从chkconfig命令的管理中删除
    [root@localhost ~]# chkconfig -del httpd
  • chkconfig命令配置完成,ntsysv命令也就可以管理该服务了。

提示:

知道源码包安装的服务可以这样处理就可以了,并不推荐这样做。通过源码包安装的服务就用源码包的方式启动服务,通过RPM包方式安装的服务,就用RPM包的方式启动服务,就很好。

『学了就忘』Linux服务管理 — 79、源码包安装的服务管理的更多相关文章

  1. 『学了就忘』Linux服务管理 — 76、RPM包安装的服务管理

    目录 1.独立服务的启动管理 2.独立服务的自启动管理 方式一: 方式二:(推荐) 方式三: 3.验证 1.独立服务的启动管理 (1)使用/etc/init.d/目录中的启动脚本启动服务(推荐) [r ...

  2. 『学了就忘』Linux服务管理 — 75、Linux系统中的服务

    目录 1.服务的介绍 2.Windows系统中的服务 3.Linux系统中服务的分类 4.独立的服务和基于xinetd服务的区别 5.如何查看一个服务是独立的服务还是基于xinetd的服务 (1)查看 ...

  3. 『学了就忘』Linux日志管理 — 90、Linux中日志介绍

    目录 1.日志相关服务 2.系统中常见的日志文件 1.日志相关服务 在CentOS 6.x中日志服务已经由rsyslogd取代了原先的syslogd服务.RedHat认为syslogd已经不能满足在工 ...

  4. Linux 系统下用源码包安装软件

    Linux系统下用源码包安装软件 by:授客 QQ:1033553122 下载源码安装包,解压或者直接双击打开(如果有安装zip或rar等压缩/解压缩软件的话),查找相关的安装说明文件,一般是READ ...

  5. 『学了就忘』Linux软件包管理 — 40、Linux系统软件包介绍

    目录 1.Linux系统软件包分类 2.源码包说明 3.二进制包说明 4.RPM包的优缺点 4.RPM包的两种安装方法 5.总结 1.Linux系统软件包分类 Linux系统下的软件包只有源码包和二进 ...

  6. 『学了就忘』Linux软件包管理 — 47、Linux源码包的安装和卸载

    目录 1.源码包安装服务的注意事项 2.源码包安装服务的过程 3.源码包安装服务的删除 4.源码包安装服务的启动 5.源码包安装服务的关闭 1.源码包安装服务的注意事项 (1)安装服务选择哪种软件包? ...

  7. 『学了就忘』Linux日志管理 — 92、日志轮替

    目录 1.日志文件的命名规则 2.logrotate配置文件说明 3.logrotate配置文件的主要参数 1.日志文件的命名规则 日志轮替最主要的作用就是把旧的日志文件移动并改名,同时建立新的空日志 ...

  8. 『学了就忘』Linux基础命令 — 30、find命令详细说明

    目录 1.find命令的基本信息 2.find命令基本使用 3.按照文件大小搜索 4.按照修改时间搜索 5.按照权限搜索 6.按照所有者和所属组搜索 7.按照文件类型搜索 8.逻辑运算符 (1)-a: ...

  9. 『学了就忘』Linux基础 — 15、了解Linux系统的目录结构

    目录 1.一级目录说明 (1)一级目录列表 (2)/bin/和/sbin/目录说明 (3)/boot/目录说明 (4)/lib/和/lib64/目录说明 (5)/lost+found/目录说明 (6) ...

随机推荐

  1. Python 数据类型常用的内置方法(一)

    目录 Python 数据类型常用的内置方法 1.整型 int 2.浮点型 float 字符串转浮点型: 3.字符串 str 多种类型转字符型: 索引 切片 len( )方法:统计字符串长度/个数 移除 ...

  2. LOTO示波器实测——光照强度传感器

    loto最近推出了很多的周边传感器模块的实测案例,本文介绍和演示LOTO示波器实测光照强度传感器的使用. 下图就是主角感光模块,可以用来测量光照强度. 这个模块也很简单,只有3个引脚,一个电源,3.3 ...

  3. [atAGC050B]Three Coins

    记$p_{i}$表示该位置是否有硬币 称使得$p_{i,i+1,i+2}$都变为1的操为对$i$的添加操作,使得$p_{i,i+1,i+2}$都变为0的操作为对$i$的删除操作 考虑一个简单的操作:若 ...

  4. rocketmq 精华

    (ps:)通过本人语雀文档阅读体验更好哦--有目录 介绍 rocket mq 翻译成中文就是火箭消息队列,从名字就可以看出来,它是一个很快的消息队列... rocket mq 是 阿里巴巴研制的后面贡 ...

  5. selenium定位元素方法汇总

    #打开网页前三步 from selenium import webdriver driver=webidriver.Chrome() driver.get("https://www.baid ...

  6. [JSC2021 A~D + F]

    半小时打完了\(A~D\),想要一发\(F\)冲进前\(100\),结果平衡树常数大\(T\)了.据说\(G\)是矩阵树定. \(A\) 放代码吧. A // code by Dix_ #includ ...

  7. UOJ 422 - 【集训队作业2018】小Z的礼物(Min-Max 容斥+轮廓线 dp)

    题面传送门 本来说要找道轮廓线 \(dp\) 的题目刷刷来着的?然后就找到了这道题. 然鹅这个题给我最大的启发反而不在轮廓线 \(dp\),而在于让我新学会了一个玩意儿叫做 Min-Max 容斥. M ...

  8. DirectX12 3D 游戏开发与实战第七章内容(上)

    利用Direct3D绘制几何体(续) 学习目标 学会一种无须每帧都要刷新命令队列的渲染流程,以此来优化性能 了解另外两种根签名参数类型:根常量和根描述符 探索如何在程序中生成和绘制常见的几何体:如栅格 ...

  9. nohup使用

    nohup:不挂断运行 在忽略挂起信号的情况下运行给定的命令,以便在注销后命令可以在后台继续运行. 可以这么理解:不挂断的运行,注意并没有后台运行的功能,就是指,用nohup 运行命令可以是命令永远运 ...

  10. php背景透明png

    php背景透明png php处理图片时,例如生成水印,对于png的水印经常背景会加有色的背景,用此方法可以去除背景 主要函数:imagecolortransparent: //添加水印 $src = ...