『学了就忘』Linux服务管理 — 75、Linux系统中的服务
1、服务的介绍
计算机中的服务是一种能执行指定系统功能的程序,在系统后台运行。
服务应用程序通常可以在本地和通过网络为用户提供一些功能,每个程序都有一定的或者说是特定的功能,它所提供的所能实现的未必是你直接需要的,有的是以便支持其他的程序,尤其是低层(接近硬件)的程序。
这些服务可以在计算机启动时自动启动,可以暂停和重新启动,而且不显示任何用户界面。
2、Windows系统中的服务
(1)如何查看Windows系统中的服务。
我们先来看看Windows系统中的服务.
我的电脑 —> 右键 —> 点击管理,如下图所示:

在出现的界面中选择 服务和应用程序 —> 服务,就可以看到Windows系统中已经安装好的所有服务。

Windows系统是图形化界面,相对于Linux系统,更好理解和观察一些。
(2)查看服务的状态和启动类型。
我们随便双击一个服务,会出现如下界面:

说明:
- 服务状态分为:启动、停止、暂停、恢复。
- 启动类型分为:手动、自动、自动(延迟自动)、禁用。
(3)服务的状态和启动类型的区别。
1)服务启动类型
服务启动类型定义的是你下一次开机的时候,该服务是否会随着系统一起启动。也称为服务的自启动选项。
- 两个自动都是开机后,服务自己就启动。
- 手动是Windows系统特有的启动类型,Linux系统是没有的,说的是开机之后,该服务不启动,在之后的系统运行中,有其他程序调用该服务,可以不经过管理员同意,该服务会启动起来。
- 禁用代表开机之后,该服务不运行。
说明:
- 手动启动类型对于Linux系统来说是不可能的,Windows系统之所以这样设计是为了简单(与其跟你讲道理,还不如我帮你做了),优点是使用起来方便简单,缺点是很多事情都不是你说的算。
- Windows系统帮你做了很多的决定,这样也提升了相应的风险。
- 而Linux系统设计的核心原则是管理员权限最大,所有事情都是管理员说的算,管理员如果不同意,这个事情就不能执行。
- 所以Linux系统中不会有手动启动类型,这是违背Linux系统设计核心原则的。
2)服务状态
服务状态是在当前系统下,该服务当前的状态。启动就是该服务现在是运行状态,未启动就是未启动状态,也称为服务的启动选项。
3)总结:
- Windows系统和Linux系统中的服务,都会有自启动和启动两种启动方式。
- 优化服务器的时候,服务优化是系统优化的重要策略之一。关闭那些用不到的服务,服务启动的越少,系统资源占用的就越少,被人攻击的概率也越小。
3、Linux系统中服务的分类
在Linux系统中,服务的安装方式不同(rpm包还是源码包),该服务的启动与自启动方法都是有区别的。
所以在Linux系统中,服务分为两大类:RPM包安装的服务和源码包安装的服务。
其中RPM包安装的服务又分为:独立的服务和基于xinetd服务(超级守护进程)。
总结如下图:

说明:
通过RPM包安装的服务我们是用
service命令启动,我们可以把源码包安装的服务的启动方式修改成和RPM包安装的服务启动方式一样,就是把通过源码包安装的服务的启动命令加入到service命令当中,进行服务的启动。但是不推荐这样做,原因:
对初学者来说,服务的启动方法和安装位置,是区分该服务是通过源码包安装还是通过RPM包安装的重要方式。如果你进行修改了,你很难分清楚该服务是哪种方式安装的。
4、独立的服务和基于xinetd服务的区别
(1)两者区别。
上边说了RPM包安装的服务又分为:独立的服务和基于xinetd服务,这两者的区别:
- 独立的服务:
就是独立启动的意思,这类型的服务可以自行启动,而不用依赖其他的管理服务。不依赖其他管理服务,那么当客户端请求访问时,独立的服务直接运行在内存中,响应请求更快速。
Linux中目前大多数服务都是独立的服务,比如Apache服务,FTP服务,Samba服务等。 - 基于
xinetd的服务:
这种服务就不能独立启动了,而是要依靠管理服务来调用这种服务。这个负责管理的服务就是xinetd服务,xinetd服务是系统的超级守护进程,直接运行在系统内存中。xinetd服务的作用就是管理不能独立启动的服务,当有客户端请求时,先请求xinetd服务,由xinetd服务去唤醒相对应的服务。当客户端请求结束后,被唤醒的服务会关闭并释放资源。这样做的好处是只需要持续启动xinetd服务,而其他基于xinetd的服务只有在需要时才启动,不会占用过的的服务器资源。但是这种服务由于在有客户端请求时才会被唤醒,所以相应时间相对较慢。
(2)优缺点。
- 调用独立的服务,直接调用内存中的服务即可,响应快,效率高。
xinetd服务的缺点是,响应速度慢些,响应效率差。
出现基于xinetd的服务,主要的目的就是节约内存,节约资源。
总结(重点):
现在我们的计算机的硬件基础发展的很快,内存或者其他的硬件资源都很充裕,Linux认为基于
xinetd的服务作用不大了。xinetd服务的好处越来越小,反而会影响使用效果,所以现在Linux中基于xinetd的服务越来越少,甚至Linux系统默认都没有安装xinetd服务。
5、如何查看一个服务是独立的服务还是基于xinetd的服务
RPM包方式安装的服务,如何区分是独立的服务和基于xinetd的服务。
使用命令chkconfig,chkconfig命令是用来更新、查询、修改不同执行级上的系统服务。
(1)查看系统中独立的服务
使用chkconfig --list查询服务的运行级别。
[root@localhost ~]# chkconfig --list
选项:
-list:列出所有RPM默认安装服务的自启动状态
注意:查询的是RPM包的默认安装服务的自启动状态,也就是重启计算机之后是否启动配置。并不是现在该服务是否被启动。
如下图:

我们之前讲过的系统运行级别0-6,0代表关机,6代表重启等。
这些能看到0-6系统运行级别的服务,都是系统中独立的服务。
如果需要了解Linux系统运行级别请看这篇文章。
(2)查看系统中基于xinetd的服务
上面说了,现在我们安装的Linxu系统中,默认是不安装xinetd服务的,没有xinetd服务也就没有基于xinetd的服务。
如果我们要查看系统中有哪些基于xinetd的服务,我们要先安装一下xinetd服务。
执行命令:yum -y install xinetd
如下图所示:

然后在执行chkconfig --list命令,就可以看到xinetd服务都有什么了。
如下图所示:

『学了就忘』Linux服务管理 — 75、Linux系统中的服务的更多相关文章
- 『学了就忘』Linux服务管理 — 79、源码包安装的服务管理
目录 1.源码包服务的启动管理 2.源码包服务的自启动管理 3.让源码包服务被服务管理命令识别 1.源码包服务的启动管理 # 通过源码包的安装路径,找到该服务的启动脚本, # 也就是获得该服务的启动脚 ...
- 『学了就忘』Linux服务管理 — 77、RPM包安装基于xinetd的服务的管理
目录 1.基于xinetd服务的启动管理 (1)telnet服务安装 (2)telnet服务启动 2.基于xientd服务的自启动管理 现在Linux系统中基于xinetd的服务越来越少了,但Linu ...
- 『学了就忘』Linux日志管理 — 91、日志服务rsyslogd说明
目录 1.日志文件格式 2.rsyslogd服务的配置文件 (1)rsyslog.conf文件内容 (2)rsyslog.conf配文件内容说明 (3)定义自己的日志 1.日志文件格式 只要是由日志服 ...
- 『学了就忘』Linux服务管理 — 76、RPM包安装的服务管理
目录 1.独立服务的启动管理 2.独立服务的自启动管理 方式一: 方式二:(推荐) 方式三: 3.验证 1.独立服务的启动管理 (1)使用/etc/init.d/目录中的启动脚本启动服务(推荐) [r ...
- 『学了就忘』Linux基础 — 1、UNIX系统介绍
目录 (一)UNIX系统介绍 1.UNIX系统发展历史 2.UNIX 主要发行版本 (二)GNU计划 1.GNU计划介绍 2.为何Stallman会发起这个GNU计划呢? 3.GNU的通用公共许可证: ...
- 『学了就忘』Linux基础 — 6、VMware虚拟机安装Linux系统(超详细)
目录 1.打开VMware虚拟机软件 2.选择Linux系统的ISO安装镜像 3.开启虚拟机安装系统 (1)进入Linux系统安装界面 (2)硬件检测 (3)检测光盘 (4)欢迎界面 (5)选择语言 ...
- 『学了就忘』Linux基础 — 11、通过setup工具配置Linux系统IP地址
目录 1.setup命令介绍 2.使用setup命令配置IP (1)执行setup命令 (2)进入图形化配置界面 (3)选择配置IP还是DNS (4)选择要配置的网卡 (5)进入IP地址配置页面 (6 ...
- 『学了就忘』Linux基础 — 15、了解Linux系统的目录结构
目录 1.一级目录说明 (1)一级目录列表 (2)/bin/和/sbin/目录说明 (3)/boot/目录说明 (4)/lib/和/lib64/目录说明 (5)/lost+found/目录说明 (6) ...
- 『学了就忘』Linux基础命令 — 25、文件基本权限的管理
目录 1.文件和目录的默认权限 2.umask默认权限 (1)查看系统的umask权限 (2)用八进制数值显示umask权限 (3)umask权限的计算方法 (4)注意:umask默认权限的计算绝不是 ...
随机推荐
- Python科普系列——类与方法(上篇)
欢迎来到新的系列,up又开新坑了~~ 实际上,Python作为一门易用性见长的语言,看上去简单,却仍然有很多值得一说的内容,因此这个系列会把Python中比较有意思的地方也给科普一遍.而另一方面,关于 ...
- [loj3527]地牢游戏
当英雄能力值$\ge 10^{7}$时,即能战胜所有敌人,简单预处理即可 若英雄能力值在$[2^{k},2^{k+1})$中,对敌人分类讨论: 1.若$s_{i}\le 2^{k}$,其必然会战胜这些 ...
- Java8-JVM内存区域划分白话解读
前言 java作为一款能够自动管理内存的语言,与传统的c/c++语言相比有着自己独特的优势.虽然我们无需去管理内存,但为了防范可能发生的异常,我们需要对java内部数据如何存储有一定了解,已应对突发问 ...
- 初识XSS攻击
初识XSS攻击 本文参考于<白帽子讲Web安全>第3章跨站脚本攻击(XSS),该书出版于2014年,因而现在可能存在一些新场景或新技术而未被提及,但本文对学习和了解XSS攻击仍具有重要价值 ...
- Python迭代器生成器与生成式
Python迭代器生成器与生成式 什么是迭代 迭代是重复反馈过程的活动,其目的通常是为了逼近所需目标或结果.每一次对过程的重复称为一次"迭代",而每一次迭代得到的结果会作为下一次迭 ...
- Java计算器的简易实现(+-*/)
java计算器的简易实现(+-*/) import java.util.Scanner; /* 写一个计算器 实现加减乘除四个功能 并且能够用循环接收新的数据,通过用户交互实现 写四个方法 + - * ...
- 洛谷 P4516 [JSOI2018]潜入行动
题面传送门 一眼树形 \(dp\) 本题有 \(2\) 大难点. 难点之一是状态的设计,这里需要四维状态,\(dp[i][j][0/1][0/1]\) 表示在以 \(i\) 为根的子树内放了 \(j\ ...
- Git 使用,本地项目上传到GitHub远程库
Git 使用,本地项目上传到GitHub远程库 环境 GitHub账号 点此进入github官网 git客户端工具 点此进入git下载页 本地项目上传到 GitHub 在GitHub中创建一个仓库(远 ...
- android Fragment跳转Fragment
android Fragment跳转Fragment,最新的android studio3 在系统模板建立的BottomNavigationView 中跳转方式 此版本下不能用FragmentMana ...
- 学习java的第十一天
一.今日收获 1.学习java完全学习手册2.9.3循环结构的内容并验证例题 2.观看哔哩哔哩上的教学视频 二.今日问题 1.基本没有 三.明日目标 1.继续完成2.9.3循环结构的例题 2.哔哩哔哩 ...