Linux软件安装——服务管理

摘要:本文主要学习了Linux中有关服务管理的知识。

什么是服务

服务一般是放置在后台运行的一个或多个进分程,为用户或系统提供某项特定的服务,有些是系统服务,有些则是独立的网络服务。

对于这些服务,我们可以通过运行主程序来启动或关闭服务,也可以通过系统提供的service和chkconfig来管理。

服务的分类

Linux中的服务按照安装方法不同可以分为RPM包默认安装的服务和源码包安装的服务两大类。

其中,RPM包默认安装的服务又因为启动与自启动管理方法不同分为独立的服务和基于xinetd的服务。

RPM包

RPM包默认安装的服务。这些服务是通过RPM包安装的,可以被服务管理命令识别。这些服务又可以分为两种:

1)独立的服务

就是独立启动的意思,这种服务可以自行启动,而不用依赖其他的管理服务。因为不依赖其他的管理服务,所以,当客户端请求访问时,独立的服务响应请求更快速。

目前,Linux中的大多数服务都是独立的服务。

2)基于xinetd的服务

这种服务就不能独立启动了,而要依靠管理服务来调用。这个负责管理的服务就是xinetd服务。xinetd服务是系统的超级守护进程,其作用就是管理不能独立启动的服务。

当有客户端请求时,先请求xinetd服务,由xinetd服务去唤醒相对应的服务。当客户端请求结束后,被唤醒的服务会关闭并释放资源。

样做的好处是只需要持续启动xinetd服务,而其他基于xinetd的服务只有在需要时才被启动,不会占用过多的服务器资源。但是这种服务由于在有客户端请求时才会被唤醒,所以响应时间相对较长。

源码包

源码包安装的服务。这些服务是通过源码包安装的,所以安装位置都是手工指定的。由于不能被系统中的服务管理命令直接识别,所以这些服务的启动与自启动方法一般都是源码包设计好的。每个源码包的启动脚本都不一样,一般需要查看说明文档才能确定。

RPM包和源码包的不同

1)编译使用不同

RPM包是经过编译的软件包,安装更快速,不易报错,但不再是开源的。

源码包是开源的,自定义性强,通过编译安装更加适合系统,但是安装速度较慢,编译时容易报错。

2)安装位置不同

源码包安装到我们手工指定的位置当中,而RPM包安装到系统默认位置当中(可以通过rpm -ql 包名命令查询)。

也就是说,RPM包安装到系统默认位置,可以被服务管理命令识别,但是源码包安装到手工指定位置,当然就不能被服务管理命令识别了(可以手工修改为被服务管理命令识别)。

对服务进行管理

通过主程序管理服务

通过手动执行主程序来启动服务,首先要知道主程序保存的路径。例如,手动启动Apache服务,需要知道Apache主程序的存储路径即可,/usr/local/apche2/bin/apachectl start开启服务,/usr/local/apche2/bin/apachectl stop停止服务。绝大多数通过源码安装的软件都需要我们手动指定路径来启动服务。

通过service管理服务

如果通过rpm或yum安装,则应用程序一般会在/etc/init.d目录下创建对应的启动脚本,我们可以通过service命令来管理服务。service命令其实是去/etc/init.d目录下,去执行相关程序。

有时更改了服务配置后,不想停止服务的情况下来使配置生效,可以通过reload参数来重新加载配置文件,或者是你更改配置不知道新的配置是否正确,或重启服务后是否会导致服务无法启动,可以使用condrestart选项,此时系统会测试新的配置文件是否有问题,没问题的才会重启,否则不会用新配置来重启服务。

通过chkconfig管理开机启动服务

由于Linux是服务器版的操作系统,所以需要将很多服务设置为开机启动。chkconfig命令可以用来管理开机启动项,但设置开机启动时需要指定运行级别。

Linux操作系统正常情况下可以在六种模式(4暂时未使用)下启动并分别用数字表示:1代表关机模式,2代表无NFS网络的字符界面模式,3代表全功能字符界面模式,4暂时未定义使用,5代表图形界面模式,6代表重启模式。

每个级别都有启动和不启动的服务,通过runlevel命令查看当前所处的运行级别,通过init n来改变运行级别。

通过systemctl管理服务

从CentOS 7开始,CentOS开始使用systemd服务来代替daemon,原来管理系统启动(chkconfig)和管理系统服务(service)的相关命令全部由systemctl命令来代替。

Linux软件安装——服务管理的更多相关文章

  1. Linux软件安装——服务管理的命令

    Linux软件安装——服务管理的命令 摘要:本文主要学习了Linux系统中服务管理的命令. service命令 service命令用于对系统服务进行管理,比如启动(start).停止(stop).重启 ...

  2. 源码包---linux软件安装与管理

    源代码推荐保存位置: /usr/local/src 软件安装位置: /usr/local 如何确定安装过程报错: 安装过程停止 并出现error / warning / no 的提示 ./config ...

  3. Linux软件安装管理之——dpkg与apt-*详解 apt命令(dpkg和apt代替rpm)

    apt list *python* Nosee123关注赞赏支持   Linux软件安装管理之--dpkg与apt-*详解 [Linux软件安装管理系列]- - 传送门: - -<Linux软件 ...

  4. Linux软件安装管理之——dpkg与apt-*详解

    Linux软件安装管理之--dpkg与apt-*详解 [Linux软件安装管理系列]- - 传送门: - -<Linux软件安装管理之--源码安装详解> - -<Linux软件安装管 ...

  5. Linux基础学习(6)--Linux软件安装

    第六章——Linux软件安装 一.软件包管理简介 1.软件包分类: (1)源码包:脚本安装包 (2)二进制包(RPM包.系统默认包) 2.源码包: (1)源码包的优点:开源,如果有足够的能力,可以修改 ...

  6. Linux软件安装,RPM与YUM

    为了防止无良网站的爬虫抓取文章,特此标识,转载请注明文章出处.LaplaceDemon/SJQ. http://www.cnblogs.com/shijiaqi1066/p/3843955.html ...

  7. Linux软件安装中RPM与YUM 区别和联系

    .tc-nav-row{ height:38px; margin: 8px 15px; } .tc-nav-tab{ text-align: center; color:#333333; line-h ...

  8. 第五部分 linux 软件安装RPM SRPM与YUM

    第五部分  linux  软件安装RPM    SRPM与YUM   软件管理员简介 RPM与DPKG两大主流 rpm: redhat       centos     suse    命令:yum ...

  9. Linux软件安装——软件包

    Linux软件安装——软件包 摘要:本文主要学习了Linux下软件安装的相关知识. 软件包 简介 Linux下的软件包众多,且几乎都是经GPL授权.免费开源(无偿公开源代码)的.这意味着如果你具备修改 ...

随机推荐

  1. ASP.NET MVC教程五:ASP.NET MVC中的路由

    一.概述 在ASP.NET MVC架构中,控制器在3大核心构件中处于中心地位,通过控制器支配模型和视图,然而从浏览器发出的请求到控制器还需要路由的协助,路由将特定的请求和控制器的动作对应起来. 在AS ...

  2. C#深入浅出之数据类型

    基本数据类型        C#支持完整的BCL(基类库)名字,但是最好都统一使用关键字进行使用与开发,比如使用int而不是System.Int32,以及使用string类型时候应当使用string而 ...

  3. retrying failed action with response code: 403

    0x00 Event [2019-09-24T19:22:31,655][INFO ][logstash.outputs.elasticsearch] retrying failed action w ...

  4. ThinkPHP数据库驱动之mysql事物回滚

    1.开启事务方法 startTrans()2.事务提交方法 commit()3.事务回滚方法 rollback() 用法例子: $order = M(‘order’); $allAdded = tru ...

  5. git submodule git 子模块管理相关操作

    Git 子模块操作相关的一些命令备忘: # 当使用git clone下来的工程中带有submodule时,初始的时候 submodule的内容并不会自动下载下来的,需执行如下命令: git submo ...

  6. Codeforces Round #586 (Div. 1 + Div. 2)

    传送门 A. Cards 记录一下出现的个数就行. Code #include <bits/stdc++.h> #define MP make_pair #define fi first ...

  7. EXSI的使用

    新建资源池 创建好的资源池和虚拟机 创建用户 角色就是权限的集合 右键点击添加. 创建完角色回到清单资源池 重点新登录 bios有一项叫来电自启动. 添加网桥

  8. Java Web 学习(6) —— Spring MVC 之校验器

    Spring MVC 之校验器 数据验证 一个典型的 Spring MVC 应用会同时应用到 formatters/converters 和 validators. 在调用 controller 期间 ...

  9. QT使用LIBS添加绝对路径的dll引用

    http://blog.sina.com.cn/s/blog_70b93da90100n6w8.html 参考这篇文章 举例: 要引用 F:\QT\parttime_work\build-JChart ...

  10. git pull出错:cannot pull into a repository with state: merging_resolved"

    git pull 出错解放办法:1.尝试先提交现有代码到本地,再更新2.git reset —hard