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

Linux(Ubuntu/CentOS)配置开机自启动服务

systemd和systemctl的区别和联系
systemd:是现代Linux系统中的初始化系统和服务管理器。它主要负责系统引导和进程管理,支持并行化启动服务,并提供高级的服务管理和依赖控制。
systemctl:是systemd的命令行工具,用于与systemd进行交互。它提供了一种便捷的方式来管理systemd所控制的服务。综上所述,systemd是Linux系统中的初始化系统和服务管理器,而systemctl是其命令行工具。它们之间既存在区别又相互联系,共同构成了Linux系统中强大的系统和服务管理框架。
确定Linux
如果不确定系统上使用的是哪种初始化系统:
1、查看系统是否有systemctl命令:列出当前正在运行的所有服务:systemctl list-units --type=service有就直接用这个。
2、如果没有systemctl,可以用命令行:ps 1 命令来查看PID为1的进程是什么。命令行:ps 1 // 这通常是系统的初始化进程,如systemd、init(SysVinit)或upstart(Upstart)
systemctl设置开机自启动服务

systemctl命令使得用户可以方便地启动、停止、重启、查看状态、启用或禁用系统服务。

命令行工具对应Linux版本说明
CentOS:CentOS 7及更高版本
Ubuntu:Ubuntu 15.04及以后的版本

列出当前正在运行的所有服务:systemctl list-units --type=service
检查服务的状态:sudo systemctl status 服务名.service
启动服务命令:sudo systemctl start 服务名.service
设置服务开机自启动:sudo systemctl enable 服务名.service // 服务将被添加到系统的启动项中,确保在系统启动时自动启动。
验证服务是否已被设置为开机自启动:sudo systemctl is-enabled 服务名.service // 如果返回enabled,则说明服务已设置为开机自启动。

init.d目录下创建启动脚本并配置开机自启动

update-rc.d命令在基于Debian和Ubuntu等Linux发行版中用于管理系统服务的启动和停止顺序。

1、进入init.d目录:cd /etc/init.d/
2、创建或编辑Shell启动脚本:
示例脚本(以myservice为例),保存为自己的服务名.sh:

	#!/bin/sh# /etc/init.d/myservice# Provides: myservice# Required-Start: $remote_fs $syslog# Required-Stop: $remote_fs $syslog# Default-Start: 2 3 4 5# Default-Stop: 0 1 6# Short-Description: Start daemon at boot time# Description: Enable service provided by daemon.case "$1" instart)echo "Starting MyService..."# 在这里添加启动服务的命令stop)echo "Stopping MyService..."# 在这里添加停止服务的命令*)echo "Usage: /etc/init.d/myservice {start|stop}"exit 1esacexit 0

3、赋予执行权限

	sudo chmod +x /etc/init.d/myservice

4、使用update-rc.d配置开机自启动

	命令行:sudo update-rc.d myservice defaults这将把myservice脚本添加到系统的默认运行级别(通常是2、3、4、5,对应多用户模式)的启动项中。

5、扩展 设置运行级别

	如果您需要设置特定的启动和停止顺序,可以使用update-rc.d的-s和-f选项来调整。例如:sudo update-rc.d myservice start 90 2 3 4 5 . stop 10 0 1 6 .这将设置在运行级别2、3、4、5时启动myservice,启动顺序为90;在运行级别0、1、6时停止myservice,停止顺序为10。验证运行级别配置:通过检查/etc/rcX.d/目录(其中X是运行级别)中的链接来验证配置是否成功。这些链接应该指向/etc/init.d/myservice脚本。

相关文章:

Linux(Ubuntu/CentOS)配置开机自启动服务

systemd和systemctl的区别和联系 systemd:是现代Linux系统中的初始化系统和服务管理器。它主要负责系统引导和进程管理,支持并行化启动服务,并提供高级的服务管理和依赖控制。 systemctl:是systemd的命令行工具,用于与…...

springboot3版本结合knife4j生成接口文档

1.概述 knife4j官网为:介绍 | Knife4j (xiaominfo.com)https://doc.xiaominfo.com/docs/introduction 初步了解的码友可以初步了解一下官网的如下几个模块: 其中在快速开始模块中,不同的springboot版本都有一个使用的案例demo如下图位置&am…...

谈谈 Wi-Fi 的 RTS/CTS 设计

我不是专业的 Wi-Fi 技术工作者。但我可以谈谈作为统计复用网络的 Wi-Fi,通用的网络分布式协调功能在底层是相通的。 从一个图展开: 基于这底层逻辑,共享以太网可以用 CSMA/CD,而 Wi-Fi 只能用 CSMA/CA,区别在 CD(冲…...

JVM 详解

一. JVM 内存区域的划分 1. 程序计数器 程序计数器是JVM中一块比较小的空间, 它保存下一条要执行的指令的地址. [注]: 与CPU的程序计数器不同, 这里的下一条指令不是二进制的机器语言, 而是Java字节码. 2. 栈 保存方法中的局部变量, 方法的形参, 方法之间的调用关系. 栈又…...

【debug】

error info: Error response Error response Error code 401. Message: Unauthorized. requests.exceptions.ConnectionError: HTTPConnectionPool(host‘127.0.0.1’, port9000): Max retries exceeded with url: /test/ (Caused by NewConnectionError(‘&l…...

PCB注意事项

1.记录一下我绘制PCB中遇到的一些坑 4G模块和SIM卡的信号线最好距离短,SIM卡下 不要过线 晶振是高速信号,两根线要尽可能差分,保持长度一直,而且线尽可能加粗,晶振下最好不要有线经过 继电器中间需要间隔 继电器中间挖空,起到隔离作用,绝缘,因为继电器有可能接市电220v 高压…...

Nmap使用指南

目录 nmap命令大全 1. 安装Nmap 2. 基本扫描 2.1 扫描单个IP地址 2.2 扫描指定端口范围 2.3 扫描整个子网 3. 高级扫描 3.1 服务版本检测 3.2 操作系统检测 3.3 脚本扫描 3.4 扫描速度 4. 输出结果 4.1 保存到文件 4.2 格式化输出 5. 注意事项 6. 进一步学习 n…...

社区版Dify 轻松实现文生图,Dify+LLM+ComfyUI

社区版Dify 轻松实文生图,DifyLLMComfyUI Dify 安装可参考这里ComfyUI 其实 比 WebUI更简单更实用DifyComfyUIDifyLLM1. Qwen 通义千问大模型系列2. OpenAI大模型系列3. 本地Ollama搭建 DifyLLMComfyUI Dify 安装可参考这里 这是一个在Dify上实现 文生图的教程&…...

Python - 获取当前函数中的所有参数信息(名称和值)

代码 import inspect import randomclass P:def start(self, p1, p2, p3None, p4None):arg_info inspect.getargvalues(inspect.currentframe())kwargs arg_info.locals # 获取到所有参数print(kwargs)del kwargs["self"]try:self._start(**kwargs)except Except…...

PHP之伪协议

文章目录 PHP伪协议php://协议data://协议file://协议phar://协议zip:// & bzip2:// & zlib://协议 过滤器 题目练习[BJDCTF 2020]ZJCTF,不过如此BaseCTF[week1]Aura酱的礼物 PHP伪协议 file:// — 访问本地文件系统 http:// — 访问 HTTP(s) 网址 ftp:// …...

关于Vue的子组件改变父组件传来的值

一、组件直接传值 大家都知道父子组件传值的方案,有以下几个,不再详细敖述 Props:父组件向子组件传递数据 $emit:子组件通过自定义事件向父组件传递数据 .sync修饰符:一个方便且强大的工具,可以简化父子组…...

jvm排查问题-实践追踪问题 与思路--堆内堆外内存泄漏排查方针

概述 排查问题的一般思路是:现象 ——> 直接原因 ——>根本原因。 从问题现象出发,可以分为 应用逻辑问题、资源使用问题、虚拟机异常: 应用逻辑可能导致报错增加、死锁、程序退出等;资源问题主要集中在CPU上升和内存上升(OOM Kill);虚拟机问题通常包括GC问题、进…...

网络层协议--ip协议

目录 引言 IP协议 协议头格式 16位标识与3位标志与13位片偏移讲解 网段划分(重要) DHCP技术 CIDR技术 特殊的IP地址 广播主机 IP地址的数量限制 私有IP地址和公网IP地址 路由:在复杂的网络结构中, 找出一条通往终点的路线 简单认识路由器 路由表生成算…...

【总结整理】 神经网络与深度学习 邱锡鹏 课后习题答案 扩展阅读链接

本文主要针对神经网络神经网络邱锡鹏 2~8 章的课后习题进行理解的过程中,搜索到的讲的会比较透彻的链接整理。适合有一定基础但是想了解更细的人阅读。 主要参考书籍 首先是本书pdf可在神经网络与深度学习获取; 主要参考的课后习题答案为nndl/solution…...

使用 Three.js 创建一个 3D 人形机器人仿真系统

引言 在这篇文章中,我们将探讨如何使用 Three.js 创建一个简单但有趣的 3D 人形机器人仿真系统。这个机器人可以通过键盘控制进行行走和转向,并具有基本的动画效果。 技术栈 HTML5Three.jsJavaScript 实现步骤 1. 基础设置 首先,我们需要…...

图像修复和编辑大一统 | 腾讯北大等联合提出BrushEdit:BrushNet进阶版来了

文章链接:https://arxiv.org/pdf/2412.10316 项目链接:https://liyaowei-stu.github.io/project/BrushEdit 亮点直击 提出了BrushEdit,这是先前BrushNet模型的高级迭代版本。BrushEdit通过开创基于修复(inpainting)的图…...

【hackmyvm】Adroit靶机wp

tags: HMVjava反编译SQL注入 1. 基本信息^toc 文章目录 1. 基本信息^toc2. 信息收集3. java反编译4. sql注入5. 解密密码6. 提权 靶机链接 https://hackmyvm.eu/machines/machine.php?vmAdroit 作者 alienum 难度 ⭐️⭐️⭐️⭐️️ 2. 信息收集 ┌──(root㉿kali)-[~] └…...

【Python运维】自动化备份与恢复系统的实现:Python脚本实战

《Python OpenCV从菜鸟到高手》带你进入图像处理与计算机视觉的大门! 解锁Python编程的无限可能:《奇妙的Python》带你漫游代码世界 随着信息化进程的加速,数据的重要性日益增加,数据丢失的风险也随之增加。为了保证数据安全,定期备份和及时恢复数据是必不可少的操作。本…...

Goland 安装与使用

GoLand安装 官方网址: JetBrains GoLand:不只是 Go IDE 1. 进入官网,点击下载: ​ 2. 如下图一步步安装 ​ ​ ​ ​ ​ 3. 如下图一步步安装...

vue2 升级为 vite 打包

VUE2 中使用 Webpack 打包、开发,每次打包时间太久,尤其是在开发的过程中,本文记录一下 VUE2 升级Vite 步骤。 安装 Vue2 Vite 依赖 dev 依赖 vitejs/plugin-vue2": "^2.3.3 vitejs/plugin-vue2-jsx": "^1.1.1 vite&…...

Sambert语音合成镜像新手教程:Web界面操作,简单易上手

Sambert语音合成镜像新手教程:Web界面操作,简单易上手 1. 为什么选择Sambert语音合成镜像 语音合成技术正在改变我们与数字世界的交互方式。Sambert多情感中文语音合成镜像是一个开箱即用的解决方案,特别适合没有深度学习背景但需要快速实现…...

千问3.5-2B应用场景:高校实验报告图解、科研论文插图说明生成、技术文档辅助

千问3.5-2B应用场景:高校实验报告图解、科研论文插图说明生成、技术文档辅助 1. 千问3.5-2B模型简介 千问3.5-2B是Qwen系列中的小型视觉语言模型,专为图片理解与文本生成任务设计。这个模型的核心能力在于:你上传一张图片,再输入…...

终极多店铺管理指南:如何在Fecshop中轻松运营多个独立商城

终极多店铺管理指南:如何在Fecshop中轻松运营多个独立商城 【免费下载链接】yii2_fecshop Yii2_fecshop是一个基于Yii2框架的电商系统,适合用于搭建在线商城、B2C网站等。特点:功能丰富、易于扩展、支持多种支付方式。 项目地址: https://g…...

Wan2.2-I2V-A14B一键部署教程:Python环境快速配置与模型调用

Wan2.2-I2V-A14B一键部署教程:Python环境快速配置与模型调用 1. 快速开始:部署前的准备工作 在开始之前,确保你已经拥有星图GPU平台的账号并完成登录。这个平台提供了强大的计算资源,特别适合运行图像到视频转换这类计算密集型任…...

视频智能剪辑的革命:FunClip如何用AI重新定义视频编辑边界

视频智能剪辑的革命:FunClip如何用AI重新定义视频编辑边界 【免费下载链接】FunClip Open-source, accurate and easy-to-use video speech recognition & clipping tool, LLM based AI clipping intergrated. 项目地址: https://gitcode.com/GitHub_Trending…...

BetterGI原神智能辅助工具完整教程:5大核心功能快速上手

BetterGI原神智能辅助工具完整教程:5大核心功能快速上手 【免费下载链接】better-genshin-impact 📦BetterGI 更好的原神 - 自动拾取 | 自动剧情 | 全自动钓鱼(AI) | 全自动七圣召唤 | 自动伐木 | 自动刷本 | 自动采集/挖矿/锄地 | 一条龙 | 全连音游 -…...

OpenClaw学术场景应用:Qwen3-32B镜像辅助论文数据处理

OpenClaw学术场景应用:Qwen3-32B镜像辅助论文数据处理 1. 为什么需要自动化论文数据处理? 作为一名经常需要处理实验数据的研究人员,我过去常常花费大量时间在Excel和Python之间来回切换。数据清洗、格式转换、异常值检测这些重复性工作不仅…...

Excel VBA 技巧:让工作表中的形状宏自适应

在日常工作中,Excel 不仅仅是数据处理的工具,更是我们自动化办公的利器。今天我们要探讨的是如何让Excel工作表中的形状宏能够自适应地工作,即使在复制工作表到新的工作簿时也能保持其功能性。 问题背景 假设我们有一个工作簿BOOK1,其中包含一个名为TEST的工作表和一个名…...

李慕婉-仙逆-造相Z-Turbo模型安装包制作教程

李慕婉-仙逆-造相Z-Turbo模型安装包制作教程 1. 开篇:为什么需要制作安装包 如果你已经体验过李慕婉-仙逆-造相Z-Turbo模型的文生图能力,可能会发现每次部署都需要重复安装依赖、配置环境。制作安装包就是为了解决这个问题,让模型可以一键安…...

Embedded Coder实战:5分钟搞定PID控制器的C代码生成(附完整配置流程)

Embedded Coder实战:5分钟搞定PID控制器的C代码生成(附完整配置流程) 在工业自动化领域,PID控制器就像一位不知疲倦的调节大师,默默维持着无数设备的稳定运行。想象一下,当你需要将这套经典算法部署到资源有…...