前面我们讲解Linux软件包管理之源码包、脚本安装包时,我们介绍了rpm包和源码包由于安装位置的不同,会对服务的启动造成影响,具体是什么,本篇博客我们来详细介绍。

1、Linux服务管理总览

  

  我们可以看到Linux的服务分为 RPM包安装的服务以及源码包安装的服务,而RPM包服务又分为独立服务和基于 xinetd 服务。本篇博客就分别介绍着三种服务的启动和如何自启动。

2、启动和自启动

  ①、启动:启动某个服务就是在当前系统让服务运行,并提供功能。

  ②、自启动:自启动某个服务,就是在系统开机或重启动之后,随着系统启动而自动启动的服务。

3、RPM包和源码包服务启动差别根本原因

  其实不管是RPM包,还是源码包,只不过是初始安装方式不一样而已,如果已经在Linux系统上安装完成之后,那么启动服务都是可以通过如下方式启动:

/绝对路径/启动脚本名 start

  之所以RPM包还有诸如 service 服务名 start 等启动方式是由于其安装位置差异造成的。

  ①、源码包:

  安装路径一般是 /usr/local。查看源码包的启动方式可以进入到源码包的安装目录,查看安装说明文档 INSTALL

  

  这里我们可以查看INSTALL 文件,查看安装说明:

  

  也就是源码包 httpd 的启动方式是:/usr/local/src/bin/apachectl start

  ②、RPM包

  默认安装位置如下:

  

  比如 RPM 包安装的httpd服务启动方式有两种:

①、/etc/rc.d/init.d/httpd start
②、service httpd start

  第二种命令是第一种命令的简化形式。这是红帽专有命令。service 会去 rpm 包默认的安装位置去找可执行文件,所以service类似的启动服务管理命令只能管理rpm安装包。如果更改了rpm包的默认安装位置,可能造成通过service启动服务失败。

  下面我们分别对启动和自启动RPM包以及源码包服务进行讲解。

4、独立服务

  独立服务属于RPM包服务,启动方法如下:

  

  第一种方法是启动服务的万能方法,而通过service启动服务是红帽专有命令。start 表示启动服务,stop 表示停止服务,status表示查看指定服务是否启动,restart 是重启指定服务。

  独立服务自启动:

  

  

  第二种方法:

  

  修改/etc/rc.local或者/etc/rc.d/rc.local 都可以

  

  第三种方法是图形配置界面:

  输入ntsysv 命令,弹出如下界面进行配置就好了。

  

5、xinetd 服务

  这个服务也是属于 RPM包,现在Linux系统中基于 xinetd 服务越来越少了,启动服务我们只需要修改 /etc/xinetd.d/服务名   这个文件的 disable = no 即可

  

  自启动也可以通过 chkconfig 服务名 on 来设置。还可以通过 ntsysv 配置。

6、源码包服务

  启动:

  

  自启动:

  

  让源码包服务能被服务管理命令识别:即能通过 service 来启动

  

  

  

7、总结

  RPM 包和源码包启动服务的万能方法都可以通过 绝对路径/启动脚本 start 。而对于 RPM 包还可以通过 service 包名 start 来启动,源码包则需要经过配置才可以。造成启动方法的根本原因就是安装位置不同,RPM 包是有默认的安装位置的,而源码包则是需要手动指定安装位置。

Linux系列教程(二十三)——Linux的服务管理的更多相关文章

  1. Linux系列教程(十三)——Linux软件包管理之源码包、脚本安装包

    上篇博客我们讲解了网络yum源和光盘yum源的搭建步骤,然后详细介绍了相关的yum命令,yum 最重要是解决了软件包依赖性问题.在安装软件时,我们使用yum命令将会简单方便很多.我们知道yum命令只能 ...

  2. .Neter玩转Linux系列之二:Linux下的文件目录及文件目录的权限

    一.Linux下的文件目录 简介:linux的文件系统是采用级层式的树状目录结构,在此 结构中的最上层是根目录“/”,然后在此目录下再创建 其他的目录.深刻理解linux文件目录是非常重要的,如下图所 ...

  3. SpringBoot进阶教程(二十三)Linux部署Quartz

    在之前的一篇文章中<SpringBoot(九)定时任务Schedule>,已经详细介绍了关于schedule框架的配置和使用,有收到一些朋友关于部署的私信,所以抽时间整理一个linux部署 ...

  4. linux系列(二十三):df命令

    1.命令格式 df [选项] [文件] 2.命令功能 显示指定磁盘文件的可用空间.如果没有文件名被指定,则所有当前被挂载的文件系统的可用空间将被显示.默认情况下,磁盘空间将以 1KB 为单位进行显示, ...

  5. Spring Boot2 系列教程(二十三)理解 Spring Data Jpa

    有很多读者留言希望松哥能好好聊聊 Spring Data Jpa! 其实这个话题松哥以前零零散散的介绍过,在我的书里也有介绍过,但是在公众号中还没和大伙聊过,因此本文就和大家来仔细聊聊 Spring ...

  6. .Neter玩转Linux系列之一:初识Linux

    一.为什么要学习Linux (1)首先我们欣赏一下,曾经的微软是如何看待Linux的,是不是很惊讶,微软还是很可爱的(#^.^#) 如今的微软看待Linux的态度:有人说微软技术那么厉害,难道微软就不 ...

  7. Shell脚本系列教程二: 开始Shell编程

    Shell脚本系列教程二: 开始Shell编程 2.1 如何写shell script? (1) 最常用的是使用vi或者mcedit来编写shell脚本, 但是你也可以使用任何你喜欢的编辑器; (2) ...

  8. CRL快速开发框架系列教程二(基于Lambda表达式查询)

    本系列目录 CRL快速开发框架系列教程一(Code First数据表不需再关心) CRL快速开发框架系列教程二(基于Lambda表达式查询) CRL快速开发框架系列教程三(更新数据) CRL快速开发框 ...

  9. Android Studio系列教程二--基本设置与运行

    Android Studio系列教程二--基本设置与运行 2014 年 11 月 28 日 DevTools 本文为个人原创,欢迎转载,但请务必在明显位置注明出处! 上面一篇博客,介绍了Studio的 ...

  10. 【Visual C++】游戏开发五十六 浅墨DirectX教程二十三 打造游戏GUI界面(一)

    本系列文章由zhmxy555(毛星云)编写,转载请注明出处. 文章链接:http://blog.csdn.net/poem_qianmo/article/details/16384009 作者:毛星云 ...

随机推荐

  1. linux上redis安装配置及其防漏洞配置及其攻击方法

    Linux上redis安装: 需先在服务器上安装yum(虚拟机可使用挂载的方式安装) 安装配置所需要的环境运行指令:  yum -y install gcc 进入解压文件执行make 指令进行编译 执 ...

  2. 我的第一个python web开发框架(9)——目录与配置说明

    和老大聊完后,小白回家接收到相关工具函数包后,就按要求开始干活,首先要做的是熟悉配置参数和了解工具函数有哪些实用的工具. 由于这个项目比较简单,所以不用创建那么多分类,只需要api.common.co ...

  3. RT-thread 利用Scons 工具编译提示python编码错误解决办法

    错误信息: scons: Reading SConscript files ...UnicodeDecodeError: 'ascii' codec can't decode byte 0xbd in ...

  4. eclipse远程调试Linux环境下的web项目

    前提: 远程服务器上的代码和本地的代码同步 第一步 : 配置远程服务器下的startup.sh文件 在第一行添加 : declare -x CATALINA_OPTS="-server -X ...

  5. Mysql存在则更新,没有则新增

    insert ignore 当插入数据时,如出现错误时,如重复数据,将不返回错误,只以警告形式返回. insert ignore into table(col1,col2) values ('val1 ...

  6. time函数获取时间与本地时间不一致

    修改php.ini,将“date.timezone”项修改为“date.timezone = PRC”. 大陆内地可用的值是:Asia/Chongqing ,Asia/Shanghai ,Asia/U ...

  7. 更新Android Studio 3.0碰到的问题

    更新完后试下运行正在维护的旧项目,出现各种错误,因为后来发现问题不在这,所以没记完整,大概如下: A larger heap for the Gradle daemon is recommended ...

  8. 微信小程序用setData修改数组或对象中的一个属性值

    在page中有如下数组 data: { info:[ { name:"yuki", tou:"../img/head.jpg", zGong:130, gMon ...

  9. angular控制器常用的4种通信方式

    首先概括一下angular控制器通信的4种方式: 作用域继承. 通过$scope广播事件. 事件发射器模块. 服务. 1.作用域的继承 子作用域可以访问声明在它们的祖先作用域中的变量和函数. < ...

  10. Ionic3 启动非常慢

    优化: ionic cordova build android --prod --release