当前位置: 首页 > news >正文

Linux系统的服务——以Centos7为例

一、Linux系统的服务简介

        服务是向外部提供对应功能的进程,其运行在系统后台,能够7*24小时持续不断的提供外界随时发来的服务请求,且服务进程常驻在内存中,具有固定的端口号,通过端口号就能找到服务内容。

        提供服务的一端叫做服务端,向服务端发送请求内容的叫做客户端,具体的流程为:

1、首先服务器端启动服务进程,服务进程正常运行后会开放对应的固定端口号(比如80、8080、5000等端口);

2、然后客户端向服务端对应的(IP:服务端口)发起请求;

3、服务端所在主机的内核接收到客户发送来的请求数据包,系统内核会分析数据包内容(识别请求的端口号后,内核会对应到该该端口号对应的服务程序,系统内核会将客户端发送来的请求报文内容发送给对应的服务程序,服务程序收到报文后,就会与客户端建立连接处理对应的内容,并进行数据传输工作。

        在Linux中,服务分为【独立守护进程】和超【级守护进程(瞬时守护进程)】;独立守护进程是指(自行在后台实时监听客户端发送来的请求内容并进行处理,基本上所有的服务都是独立守护进程类的服务)。超级守护进程是专指xinetd这个服务,这个服务代为管理着一些特殊的系统服务,这类服务只有在被请求的时候才会由xinetd通知它启动对应服务,服务提供处理工作完成后就关闭服务,这类服务称为瞬时守护进程,即存在的时间非常短暂。

        简单的说【服务是类指那些在系统后台持续运行并提供基本功能,常驻内存中(如网络连接、SSH登录、日志管理等功能)的程序】。

二、Linux服务的常用操作_Centos7及其更高版本

2.1、列出Linux所有服务和状态

1、查看Linux系统中的所有服务

systemctl list-units --type service --all

2、查看Linux系统所有服务的开机自启动状态命令:

systemctl list-unit-files

3、查看所有已经激活的服务命令

systemctl list-units --type service

2.2、查看服务状态

        比如我这里查看httpd服务状态,其中状态(Active:active(running)表示已经启动运行中);Active:inactive(dead)表示停止): 

systemctl status 服务名称 

systemctl status 服务名称.service 

查看服务是否在运行中命令:

systemctl is-active 服务名称

2.3、启动服务

systemctl start 服务名称

        比如我这里重启httpd服务,且查看启动后的状态(Active:active(running)表示已经启动运行中):  

systemctl start 服务名称.service

2.4、停止服务

systemctl stop 服务名称

        比如我这里停止httpd服务,且查看停止后的状态(Active:inactive(dead)表示停止):  

systemctl stop 服务名称.service

2.5、重启服务

systemctl restart 服务名称

        比如我这里重启httpd服务,且查看重启后的状态(Active:active(running)表示已经启动运行中): 

 systemctl restart 服务名称.service

2.6、设置服务开机自启

systemctl enable 服务名称
systemctl enable 服务名称.service

任选这2个命令中的一个就可以;需要注意的是:设置服务开启自启后如果要验证的话,需要重启服务器后再查看服务状态为 (Active:active(running))即为设置服务开机自启成功。

如下是立即重启Linux服务器的命令: 

reboot -h now

查看服务是否开机自动启动(enabled表示已经启动) 

systemctl is-enabled 服务名称

2.7、禁用服务开机自启

systemctl disable httpd
systemctl disable 服务名称.service

任选这2个命令中的一个就可以;需要注意的是:禁用服务开启自启后如果要验证的话,需要重启服务器后再查看服务状态为 (Active:inactive(dead)表示停止)即为禁用服务开机自启成功。

 

三、服务的配置文件

        对于支持 systemd 的程序,在安装该软件的时候,会自动的在 【/usr/lib/systemd/system 】目录添加一个关于该程序的服务配置文件(比如:我使用【yum install httpd -y】安装了该程序,我们可以使用【cat /usr/lib/systemd/system/httpd.service】命令查看到该程序的服务配置文件内容),如下图所示:

在我们给httpd服务设置了开机自启【systemctl enable httpd】命令后,可以看到在【/etc/systemd/system/multi-user.target.wants/】 目录下添加了该程序的符号链接,这个链接指向【/usr/lib/systemd/system 】里面的【httpd.service】文件

在设置了服务的开机启动命令后,需要等下一次开机的时候,才会自动行 【/etc/systemd/system/】 目录中的文件服务;可以通过【systemctl is-enabled httpd】命令查看服务是否设置开机自动启动,如下图所示:

注意:【/etc/systemd/system/】是管理员根据需求建立的执行脚本,也可以理解为是【/usr/lib/systemd/system/】的连接映射。

3.1、systemctl

        在 Centos7 之前是使用 service 进行服务的管理,虽然service使用起来简单,但对于每一个服务,都需要我们人为手动的编写对应脚本文件来控制服务相关的启动、停止、重启等操作,服务控制得好坏,完全依赖于编写脚本的人,这样的话对于服务来说不是很稳定,对于管理服务的人员也不友好。

        为了解决service带来的服务不稳定,对管理服务人员不友好等问题,在 Centos7 中采用了新的【systemctl】服务管理工具,systemctl使用固定规范格式的脚本内容来控制服务的启动、停止等相关操作,使得服务的管理变得简单了很多(即:对服务的启动、停止、重启、开机自启等操作只需要一条命令就可实现)

 3.2、systemd

面向管理员的 systemd,第 III 部分 (0pointer.de)icon-default.png?t=N7T8https://0pointer.de/blog/projects/systemd-for-admins-3.htmlsystemd.unit (0pointer.de)icon-default.png?t=N7T8https://0pointer.de/public/systemd-man/systemd.unit.htmlsystemd.service (0pointer.de)icon-default.png?t=N7T8https://0pointer.de/public/systemd-man/systemd.service.html

systemd 基础知识简介 (suse.com)icon-default.png?t=N7T8https://documentation.suse.com/smart/systems-management/html/systemd-basics/index.html

 

 

 

 

相关文章:

Linux系统的服务——以Centos7为例

一、Linux系统的服务简介 服务是向外部提供对应功能的进程,其运行在系统后台,能够7*24小时持续不断的提供外界随时发来的服务请求,且服务进程常驻在内存中,具有固定的端口号,通过端口号就能找到服务内容。 提供服务的一…...

Numpy矩阵运算

版权声明 本文原创作者:谷哥的小弟作者博客地址:http://blog.csdn.net/lfdfhl Numpy概述 Numpy是Python的一个开源数值计算扩展库,主要用于存储和处理大型多维数组和矩阵,并且提供了大量的数学函数来操作这些数组。Numpy是Pytho…...

Spring容器Bean之XML配置方式

一、首先看applicationContext.xml里的配置项bean 我们采用xml配置文件的方式对bean进行声明和管理,每一个bean标签都代表着需要被创建的对象并通过property标签可以为该类注入其他依赖对象,通过这种方式Spring容器就可以成功知道我们需要创建那些bean实…...

【Rust入门】生成随机数

文章目录 前言随机数库rand添加rand库到我们的工程生成一个随机数示例代码 总结 前言 在编程中,生成随机数是一种常见的需求,无论是用于数据分析、游戏开发还是模拟实验。Rust提供了强大的库来帮助我们生成随机数。在这篇文章中,我们将通过一…...

普通Java工程如何在代码中引用docker-compose.yml中的environment值

文章目录 一、概述二、常规做法1. 数据库配置分离2. 代码引用配置3. 编写启动类4. 支持打包成可执行包5. 支持可执行包打包成docker镜像6. docker运行 三、存在问题分析四、改进措施1. 包含environment 变量的编排文件2. 修改读取配置文件方式3. 为什么可以这样做 五、运行效果…...

微观特征轮廓尺寸测量:光学3D轮廓仪、共焦显微镜与台阶仪的应用

随着科技进步,显微测量仪器以满足日益增长的微观尺寸测量需求而不断发展进步。多种高精度测量仪器被用于微观尺寸的测量,其中包括光学3D表面轮廓仪(白光干涉仪)、共聚焦显微镜和台阶仪。有效评估材料表面的微观结构和形貌&#xf…...

Rust开发环境搭建

Rust开发环境搭建 环境 rust: 1.79.0(2024-06-13)1. Rustup下载器在线安装 windows: https://static.rust-lang.org/rustup/dist/x86_64-pc-windows-msvc/rustup-init.exe unix: curl --proto https --tlsv1.2 -sSf https://sh.rustup.rs | sh2. R…...

图文识别0难度上手~基于飞浆对pdf简易ocr并转txt

前言 本篇pdf适用windows对视觉识别0基础的的纯小白用户。大佬请绕道~~ 注意: 本项目pdf的ocr对于表格、画图文字,水印等干扰没做任何处理,因此希望各位使用该功能的pdf尽量不要含有这些干扰项,以免影响翻译效果。 流程 1.构建…...

FFmpeg常用命令手册

官方文档:ffmpeg Documentation 常规选项 -i input_url 输入文件或者输入流的路径 Main 选项 -f fmt (input/output) 强制指定输入或输出文件的格式, 常见的格式名称包括flv,mp4、hls、mpegts、avi、mov -c[:stream_specifier] codec (i…...

CTF入门知识点

CTF知识点 md5函数 <?php$a 123;echo md5($a,true); ?> 括号中true显示输出二进制 替换成false显示输出十六进制绕过 ffifdyop 这个字符串被 md5 哈希了之后会变成 276f722736c95d99e921722cf9ed621c&#xff0c;这个字符串前几位刚好是 or 6 而 Mysql 刚好又会把 …...

Leetcode 完美数

1.题目要求: 对于一个 正整数&#xff0c;如果它和除了它自身以外的所有 正因子 之和相等&#xff0c;我们称它为 「完美数」。给定一个 整数 n&#xff0c; 如果是完美数&#xff0c;返回 true&#xff1b;否则返回 false。示例 1&#xff1a;输入&#xff1a;num 28 输出&a…...

springboot中的定时任务编写

第1部分&#xff1a;引言 1.1 定时任务的重要性 在现代软件开发中&#xff0c;定时任务是应用程序自动化和运维效率的关键组成部分。无论是数据备份、系统健康检查、定期报告生成&#xff0c;还是用户活动触发的自动化流程&#xff0c;定时任务都扮演着不可或缺的角色。它们确…...

第100+14步 ChatGPT学习:R实现随机森林分类

基于R 4.2.2版本演示 一、写在前面 有不少大佬问做机器学习分类能不能用R语言&#xff0c;不想学Python咯。 答曰&#xff1a;可&#xff01;用GPT或者Kimi转一下就得了呗。 加上最近也没啥内容写了&#xff0c;就帮各位搬运一下吧。 二、R代码实现随机森林分类 &#xff…...

C#面 :ASP.Net Core中有哪些异常处理的方案?

在 ASP.NET Core中&#xff0c;有多种异常处理方案可供选择。以下是其中几种常见的异常处理方案&#xff1a; 中间件异常处理&#xff1a; ASP.NET Core提供了一个中间件来处理全局异常。通过在Startup类的Configure方法中添加UseExceptionHandler中间件&#xff0c;可以捕获…...

论文辅导 | 基于多尺度分解的LSTM⁃ARIMA锂电池寿命预测

辅导文章 模型描述 锂电池剩余使用寿命&#xff08;Remaining useful life&#xff0c;RUL&#xff09;预测是锂电池研究的一个重要方向&#xff0c;通过对RUL的准确预测&#xff0c;可以更好地管理和维护电池&#xff0c;延长电池使用寿命。为了能够准确预测锂电池的RUL&…...

开关阀(4):对于客户技术要求信息的识别

1.阀门部分 2.执行器 行程时间的一般标准 The stroking times are applicable to throttling control valves and should not exceed 2 seconds/inch of valve diameter 3.附件 4.定位器...

Python统计实战:时间序列分析之二阶曲线预测和三阶曲线预测

为了解决特定问题而进行的学习是提高效率的最佳途径。这种方法能够使我们专注于最相关的知识和技能&#xff0c;从而更快地掌握解决问题所需的能力。 &#xff08;以下练习题来源于《统计学—基于Python》。请在Q群455547227下载原始数据。&#xff09; 练习题 下表是某只股票…...

Drools开源业务规则引擎(三)- 事件模型(Event Model)

文章目录 Drools开源业务规则引擎&#xff08;三&#xff09;- 事件模型&#xff08;Event Model&#xff09;1.org.kie.api.event2.RuleRuntimeEventManager3.RuleRuntimeEventListener接口说明示例规则文件规则执行日志输出 4.AgentaEventListener接口说明示例监听器实现类My…...

智慧校园行政办公升级,日程监控不可或缺

在智慧校园的行政办公场景下&#xff0c;日程监控功能扮演了一个核心协调者的角色&#xff0c;它细腻地编织起时间管理的网络&#xff0c;确保各项活动与任务在井然有序中高效推进。这一功能通过以下几个方面&#xff0c;展现了其在提升工作效率与团队协作方面的独特价值。 首先…...

RedHat运维-Linux SSH基础3-sshd守护进程

1. sshd这个守护进程提供了OpenSSH服务&#xff0c;请问可以通过编辑哪些配置文件&#xff0c;来配置这个服务呢&#xff1f;________________________ 2. sshd这个守护进程提供了OpenSSH服务&#xff0c;请问可以通过编辑哪些配置文件&#xff0c;来配置这个服务呢&#xff1f…...

进程地址空间(比特课总结)

一、进程地址空间 1. 环境变量 1 &#xff09;⽤户级环境变量与系统级环境变量 全局属性&#xff1a;环境变量具有全局属性&#xff0c;会被⼦进程继承。例如当bash启动⼦进程时&#xff0c;环 境变量会⾃动传递给⼦进程。 本地变量限制&#xff1a;本地变量只在当前进程(ba…...

《Qt C++ 与 OpenCV:解锁视频播放程序设计的奥秘》

引言:探索视频播放程序设计之旅 在当今数字化时代,多媒体应用已渗透到我们生活的方方面面,从日常的视频娱乐到专业的视频监控、视频会议系统,视频播放程序作为多媒体应用的核心组成部分,扮演着至关重要的角色。无论是在个人电脑、移动设备还是智能电视等平台上,用户都期望…...

理解 MCP 工作流:使用 Ollama 和 LangChain 构建本地 MCP 客户端

&#x1f31f; 什么是 MCP&#xff1f; 模型控制协议 (MCP) 是一种创新的协议&#xff0c;旨在无缝连接 AI 模型与应用程序。 MCP 是一个开源协议&#xff0c;它标准化了我们的 LLM 应用程序连接所需工具和数据源并与之协作的方式。 可以把它想象成你的 AI 模型 和想要使用它…...

渗透实战PortSwigger靶场-XSS Lab 14:大多数标签和属性被阻止

<script>标签被拦截 我们需要把全部可用的 tag 和 event 进行暴力破解 XSS cheat sheet&#xff1a; https://portswigger.net/web-security/cross-site-scripting/cheat-sheet 通过爆破发现body可以用 再把全部 events 放进去爆破 这些 event 全部可用 <body onres…...

蓝桥杯 2024 15届国赛 A组 儿童节快乐

P10576 [蓝桥杯 2024 国 A] 儿童节快乐 题目描述 五彩斑斓的气球在蓝天下悠然飘荡&#xff0c;轻快的音乐在耳边持续回荡&#xff0c;小朋友们手牵着手一同畅快欢笑。在这样一片安乐祥和的氛围下&#xff0c;六一来了。 今天是六一儿童节&#xff0c;小蓝老师为了让大家在节…...

vue3 字体颜色设置的多种方式

在Vue 3中设置字体颜色可以通过多种方式实现&#xff0c;这取决于你是想在组件内部直接设置&#xff0c;还是在CSS/SCSS/LESS等样式文件中定义。以下是几种常见的方法&#xff1a; 1. 内联样式 你可以直接在模板中使用style绑定来设置字体颜色。 <template><div :s…...

Python爬虫(二):爬虫完整流程

爬虫完整流程详解&#xff08;7大核心步骤实战技巧&#xff09; 一、爬虫完整工作流程 以下是爬虫开发的完整流程&#xff0c;我将结合具体技术点和实战经验展开说明&#xff1a; 1. 目标分析与前期准备 网站技术分析&#xff1a; 使用浏览器开发者工具&#xff08;F12&…...

CMake 从 GitHub 下载第三方库并使用

有时我们希望直接使用 GitHub 上的开源库,而不想手动下载、编译和安装。 可以利用 CMake 提供的 FetchContent 模块来实现自动下载、构建和链接第三方库。 FetchContent 命令官方文档✅ 示例代码 我们将以 fmt 这个流行的格式化库为例,演示如何: 使用 FetchContent 从 GitH…...

selenium学习实战【Python爬虫】

selenium学习实战【Python爬虫】 文章目录 selenium学习实战【Python爬虫】一、声明二、学习目标三、安装依赖3.1 安装selenium库3.2 安装浏览器驱动3.2.1 查看Edge版本3.2.2 驱动安装 四、代码讲解4.1 配置浏览器4.2 加载更多4.3 寻找内容4.4 完整代码 五、报告文件爬取5.1 提…...

【数据分析】R版IntelliGenes用于生物标志物发现的可解释机器学习

禁止商业或二改转载&#xff0c;仅供自学使用&#xff0c;侵权必究&#xff0c;如需截取部分内容请后台联系作者! 文章目录 介绍流程步骤1. 输入数据2. 特征选择3. 模型训练4. I-Genes 评分计算5. 输出结果 IntelliGenesR 安装包1. 特征选择2. 模型训练和评估3. I-Genes 评分计…...