Linux服务详解

如有错误或有补充,以及任何改进的意见,请在评论区留下您的高见,同时文中给出大部分命令的示例,即是您暂时无法在Linux中查看,您也可以知道各种操作的功能以及输出

如果觉得本文写的不错,不妨点个赞,收藏一下,助力博主产生质量更高的作品

甚么是服务?

Linux服务是一种在系统后台运行、等待用户或其它软件调用的特殊程序。这些服务进程与终端无关,即使关闭终端,服务进程仍会在系统后台自动运行。服务通常是为了提供某种功能或服务给其他程序或用户而设计的,它们始终处于运行状态,以便随时接受请求并提供服务。

Linux系统中的服务有许多种,下面列举了一些常见的服务:

  1. 守护进程(Daemon):守护进程是在后台运行的特殊程序,用于提供各种服务。例如,httpd是Web服务器使用的守护进程,mysqld是MySQL数据库的守护进程。
  2. 系统守护进程(System Daemon):这些服务与系统环境和配置相关,通常由系统管理员进行管理。常见的系统守护进程包括syslogd(系统日志守护进程)和NetworkManager(网络管理守护进程)。
  3. 网络服务(Network Service):这些服务提供网络通信功能,例如SSH(安全外壳协议)和FTP(文件传输协议)。
  4. 打印服务(Printing Service):打印服务管理打印作业,例如CUPS(Common Unix Printing System)是Linux下的打印服务。
  5. 邮件服务(Mail Service):邮件服务用于接收、发送和存储电子邮件,常见的邮件服务包括Sendmail和Postfix。
  6. 数据库服务(Database Service):数据库服务提供存储、查询和管理数据的功能,常见的数据库服务包括MySQL和PostgreSQL。
  7. 认证服务(Authentication Service):认证服务管理用户账户和权限,例如PAM(Pluggable Authentication Modules)是Linux下的认证服务。
  8. 文件共享服务(File Sharing Service):文件共享服务允许网络上的计算机之间共享文件和目录,例如NFS(Network File System)和Samba。
  9. 时间服务(Time Service):时间服务同步计算机系统的时间,例如NTP(Network Time Protocol)。
  10. 包管理器(Package Manager):包管理器用于安装、更新和卸载软件包,常见的包管理器包括APT(Advanced Package Tool)、YUM和DNF等。

这些服务可以通过不同的方式进行启动、停止和管理。在Linux中,可以使用多种命令来管理服务,例如service命令、systemctl命令和init脚本等。系统管理员可以配置服务的启动方式、启动顺序和依赖关系等,以确保系统的正常运行。

管理服务

systemctl

systemctl是一个用于管理系统服务的命令行工具。它是Systemd的主命令,用于控制Systemd系统和服务管理器。systemctl可以用来启动、停止、重新启动、查询和配置系统服务。

常用   

systemctl start/stop/restart/enable/disable [服务]

        start/stop/restart 开启/关闭/重启服务

        enable/disable  启动/关闭开机自启动

systemctl status [服务] 查看服务状态

systemctl list-units --type=service --all       查看本机所有的服务

systemctl list-units --type=service --state=running        可以查看所有正在运行的服务

systemctl list-dependencies [服务]        查看服务的依赖关系

示例

service

service命令用于管理系统服务,它可以用来启动、停止、重启和查询服务的状态。它是Systemd系统之前的旧版本Linux发行版中常用的命令,但在一些较新的Linux发行版中仍然可用。

常用

service [服务名] start/stop/status/restart

与systemctl的start/stop/status/restart意义一样

示例

init

了解了解

Linux的init脚本是用于启动、停止、重启和监视系统服务的脚本。这些脚本通常位于/etc/init.d/目录下,并且每个服务都有一个与之对应的init脚本。

init脚本的主要功能如下:

  1. 启动服务:通过运行/etc/init.d/service-name start命令,可以启动指定的服务。init脚本会调用服务的启动脚本或可执行文件来启动服务。
  2. 停止服务:通过运行/etc/init.d/service-name stop命令,可以停止指定的服务。init脚本会发送适当的信号给服务进程来停止它。
  3. 重启服务:通过运行/etc/init.d/service-name restart命令,可以重启指定的服务。init脚本会先停止服务,然后再启动服务。
  4. 查看服务状态:通过运行/etc/init.d/service-name status命令,可以查看服务的当前状态。init脚本会检查服务的进程是否存在,并返回相应的状态信息。
  5. 添加服务到开机自启:通过修改服务的init脚本,可以将服务添加到开机自启列表中。在脚本的适当位置添加update-rc.d service-name defaults命令即可。
  6. 从开机自启中移除服务:通过修改服务的init脚本,可以从开机自启列表中移除服务。在脚本的适当位置添加update-rc.d service-name remove命令即可。

每个init脚本都包含了一些基本的命令和逻辑,用于控制服务的启动、停止、重启和监视。这些命令通常包括shell命令、条件判断和循环结构等。

随着Systemd的普及,许多Linux发行版已经将Systemctl作为管理服务的首选命令,而将init脚本标记为过时或废弃。因此,在新的Linux发行版中,建议使用Systemctl命令来管理服务。

chkconfig

(博主的系统不太支持chkconfig,因此此处并未给出示例)

chkconfig命令用于检查和设置系统的各种服务。它可以用来管理在系统启动时自动启动的服务。

--add:添加指定的系统服务。

--del:删除指定的系统服务。

--list:列出所有的系统服务及其状态。

--level <等级代号>:指定要查看或修改的服务程序在哪个执行等级中开启或关闭。等级代号是一个0~7的数字。

等级就是Linux的运行等级

  • 0:关机
  • 1:单用户模式
  • 2:无网络连接的多用户命令行模式
  • 3:有网络连接的多用户命令行模式
  • 4:保留,未使用
  • 5:带图形界面的多用户模式
  • 6:重新启动

案例:对 network 服务 进行各种操作,把 network 在 3 运行级别,关闭自启动
chkconfig --level 3 network off
chkconfig --level 3 network on
细节
chkconfig 重新设置服务后自启动或关闭,需要重启机器 reboot 生效

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/663266.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C++ easyx 结合C++实现 画同心圆。

easyx 结合C实现 画同心圆。 #include<graphics.h> #include<conio.h>int main() {initgraph(666, 666); // 初始化为 666*666 的画布/* circle */setcolor(BLUE); //circle 的线条为某色setfillcolor(YELLOW); //circle 内某色填充 setlinestyle(PS_…

windows11安装docker for windows一直报错的记录

电脑windows11 安装docker&#xff0c;启用wsl2&#xff0c;这块网上搜搜 参考 旧版 WSL 的手动安装步骤 其他都没有问题&#xff0c;通过wsl2访问 Ubuntu22.04 也没有问题 问题是docker 安装需要执行 wsl --update 一直报错&#xff1a;请在存储设置中,将系统驱动器设置为新内…

LeetCode每日一题 | 1686. 石子游戏 VI

文章目录 题目描述问题分析程序代码 题目描述 原题链接 Alice 和 Bob 轮流玩一个游戏&#xff0c;Alice 先手。 一堆石子里总共有n个石子&#xff0c;轮到某个玩家时&#xff0c;他可以 移出 一个石子并得到这个石子的价值。Alice 和 Bob 对石子价值有 不一样的的评判标准 。双…

基于 Echarts 的 Python 图表库:Pyecahrts交互式的日历图和3D柱状图

文章目录 概述一、日历图和柱状图介绍1. 日历图基本概述2. 日历图使用场景3. 柱状图基本概述4. 柱状图使用场景 二、代码实例1. Pyecharts绘制日历图2. Pyecharts绘制2D柱状图3. Pyecharts绘制3D柱状图 总结 概述 本文将引领读者深入了解数据可视化领域中的两个强大工具&#…

关于VxTerm有可能通过SSH协议默认情况下不能正常连接华为S5735交换机的解决办法

此方法为网友&#xff1a;刘春&#xff08;QQ282867758&#xff09;多次测试后找到的解决办法。 在此感谢他&#xff01;谢谢&#xff01; 默认情况下&#xff0c;VxTerm与S5735建立SSH连接时采用的Kex Exchange算法为&#xff1a;diffie-hellman-group-exchange-sha256&…

Python使用fastAPI实现一个流式传输接口

1. 使用fastapi实现流式传输 1.1 服务端 fastapi_server.py 编写服务端代码fastapi_server.py。服务端代码主要使用了fastapi和uvicorn两个库。 #!/usr/bin/env python # codingutf-8 # Time : 2024/1/31 19:13 # Software: PyCharm from fastapi import FastAPI from fa…

大数据 - Hadoop系列《三》- MapReduce(分布式计算引擎)概述

上一篇文章&#xff1a; 大数据 - Hadoop系列《三》- HDFS&#xff08;分布式文件系统&#xff09;概述-CSDN博客 目录 12.1 针对MapReduce的设计构思 1. 如何对付大数据处理场景 2. 构建抽象编程模型 3. 统一架构、隐藏底层细节 12.2 分布式计算概念 12.3 MapReduce定义…

如何通过CVE漏洞编码找到对应的CVE漏洞详情及源码修改地址

背景&#xff1a; 最近正在使用docker进行一些cve漏洞的复现&#xff0c;有时候就要通过CVE的漏洞编码&#xff0c;找到对应的漏洞详情&#xff0c;以及漏洞的源码修改 以我上一篇文章的CVE-2020-17518编码为例 Apache Flink文件上Apache Flink文件上 方法&#xff1a; 通…

为什么golang不支持可重入锁呢?

为什么golang不需要可重入锁&#xff1f; 在工程中使用锁的原因在于为了保护不变量&#xff0c;也可以用于保护内、外部的不变量。 基于此&#xff0c;Go 在互斥锁设计上会遵守这几个原则。如下&#xff1a; 在调用 mutex.Lock 方法时&#xff0c;要保证这些变量的不变性保持…

手写分布式存储系统v0.2版本

引言 上回说到 手写分布式存储系统v0.1版本 &#xff0c;已经实现了通过监听TCP端口并将数据写到本地磁盘的功能&#xff0c;今天咱们就继续往上面添砖加瓦 v0.2版本大致做以下功能 实现滚动写文件 代码优化 一、滚动写文件实现 由于咱们写文件是用的mmap进行文件写入&am…

索引的设计原则(MySQL)

文章目录 文章目录 前言 一、搜索的索引列 二、使用唯一索引 三、使用短索引 四、最左前缀原则 五、不要过度使用 六、尽量使用主键索引 ​​​​​ 前言 索引的设计需要遵循一些原则&#xff0c;创建索引时遵循这些原则&#xff0c;有利于提升查询效率。 一、搜索的索引列 创建…

解决ModuleNotFoundError: No module named ‘pysqlite2‘

目录 一、问题描述 二、问题分析 三、解决方法 四、参考文章 一、问题描述&#xff1a; 新建conda编译环境。安装Jupyter后打不开&#xff0c;报错&#xff1a; 二、问题分析&#xff1a; 缺少sqlite3动态链接库 三、解决方法&#xff1a; SQLite Download Page 下载…

组播目的地址

路由器收到目的地址为224.0.0.5和239.0.0.5的组播报文如何处理? 224.0.0.5为永久组地址,是IANA为路由协议预留的IP地址(也称为保留组地址),用于标识一组特定的网络设备,供路由协议,目前被分配于OSPF协议使用,运行了OSPF协议的网络设备默认都会加入该组播组。 当路由器…

数字地球开放平台农作物长势监测解决方案

利用遥感技术进行产量预测是一种高效而准确的方法&#xff0c;通过监测植被的生长状况、土地利用、气象等因素&#xff0c;可以为农业决策提供有力支持。数字地球开放平台拥有200颗卫星&#xff0c;为您提供一站式卫星遥感服务。 数字地球开放平台将为您介绍一般遥感技术在农作…

游戏开发丨基于Panda3D的迷宫小球游戏

文章目录 写在前面Panda3D程序设计程序分析运行结果系列文章写在后面 写在前面 本期内容 基于panda3d的迷宫中的小球游戏 所需环境 pythonpycharm或anacondapanda3d 下载地址 https://download.csdn.net/download/m0_68111267/88792121 Panda3D Panda3D是一种开放源代码…

如何选择最适合的服务器

许多朋友想做一些网站&#xff0c;应用&#xff0c;游戏&#xff0c;小程序等等&#xff0c;都需要接触一个基础&#xff0c;就是服务器。服务器相当于一台24小时不关机的联网电脑&#xff0c;浏览网页或者应用相当于用户在访问这台电脑里的文件。那么如何选择最适合自己的服务…

在微服务项目中,实现无停机更新有哪些方法和策略?

在微服务项目中&#xff0c;确保线上更新不停掉服务是非常关键的&#xff0c;以保障系统的可用性。以下是一些方法和策略&#xff0c;可以帮助实现无停机更新&#xff1a; 蓝绿部署&#xff08;Blue-Green Deployment&#xff09;&#xff1a; 在蓝绿部署中&#xff0c;维护两个…

【Java高级】通过CompletableFuture类异步、并行获取数据库数据

1. CompletableFuture类简介 CompletableFuture 类是 Java 中用于异步编程和处理异步任务的工具类。它是 Java 8 引入的一部分&#xff0c;提供了一种方便的方式来处理异步操作&#xff0c;例如并行执行多个任务、等待多个任务完成等。 CompletableFuture 可以通过 runAsync …

【Java 数据结构】对象的比较

Java中对象的比较 1. PriorityQueue中插入对象2. 元素的比较2.1 基本类型的比较2.2 对象比较的问题 3. 对象的比较3.1 覆写基类的equals3.2 基于Comparble接口类的比较3.3 基于比较器比较3.4 三种方式对比 4. 集合框架中PriorityQueue的比较方式5. 使用PriorityQueue创建大小堆…

【AI_Design】Midjourney学习笔记

目录 后缀解析Promot合格使用prompt关键词描述 关键词化合作用关键词网站推荐 联合Chatgpt使用总结 后缀解析 –ar&#xff1a;宽高比设置–c&#xff1a;多样性设置&#xff08;数值0-100&#xff0c;默认值0&#xff09;–s&#xff1a;风格化设置&#xff08;数值0-1000&am…