CentOS服务自启权威指南:手动启动变为开机自启动(以Jenkins服务为例)

前言

CentOS系统提供了多种配置服务开机自启动的方式。本文将介绍其中两种常见的方式,

  1. 一种是使用Systemd服务管理器配置,不过,在实际中,如果你已经通过包管理工具安装的,那么服务通常已经被配置为Systemd服务,只需要命令sudo systemctl enable yourService 设置开机自启动即可。但是如果你是压缩包解压的方式安装服务,可以参考如下步骤。
  2. 另一种是通过修改/etc/rc.d/rc.local文件实现。

在这里,我们以Jenkins为例,演示如何将其手动启动的服务配置为开机自启动。

Systemd方式配置开机自启动:

1. 创建Jenkins Systemd单元文件

首先,使用你喜欢的文本编辑器创建一个新的Systemd单元文件(当然也可以vim指令编辑)。在本例中,我们将以Jenkins为例。

sudo nano /etc/systemd/system/jenkins.service

在文件中添加以下内容:

[Unit]
Description=Jenkins Automation Server
Documentation=https://jenkins.io/doc/[Service]
ExecStart=/etc/init.d/jenkins start
ExecStop=/etc/init.d/jenkins stop
Type=forking
User=root[Install]
WantedBy=default.target

这个配置文件描述了Jenkins服务的基本信息:

  1. [Unit] 部分
    Description: 描述了服务的简短说明,即"Jenkins Automation Server",这是对服务的概要描述。
    Documentation: 提供了服务的文档链接,方便用户查阅有关服务的文档。
  2. [Service] 部分
    ExecStart: 定义了服务启动时执行的命令。在这里,指定使用 /etc/init.d/jenkins start 命令启动 Jenkins 服务。
    ExecStop: 定义了服务停止时执行的命令。在这里,指定使用 /etc/init.d/jenkins stop 命令停止 Jenkins 服务。
    Type: 指定服务的类型。在这里,forking 表示启动服务时,Systemd 会等待服务进程 fork 出子进程,然后主进程退出。这通常用于传统的后台守护进程。
    User: 指定服务运行的用户。在这里,服务以 root 用户身份运行。请注意,以 root 用户身份运行服务可能存在一些安全风险,因此请谨慎使用。
  3. [Install] 部分
    WantedBy: 指定服务的启动目标。在这里,设置为 default.target,表示服务是默认目标的一部分。这意味着在系统启动时会启动 Jenkins 服务。

2. 重新加载Systemd配置

保存并关闭文件后,重新加载Systemd配置,以使新的服务配置生效。

sudo systemctl daemon-reload

3. 启用服务开机自启动

启用Jenkins服务在系统启动时自动启动。

sudo systemctl enable jenkins

4. 启动Jenkins服务

手动启动Jenkins服务以验证配置。

sudo systemctl start jenkins

5. 验证服务状态

使用以下命令检查Jenkins服务的运行状态。

sudo systemctl status jenkins

如果一切正常,你应该看到Jenkins服务正在运行的详细信息。
服务启动状态

6. 重启服务(可选)

如果需要对服务进行更改,可能需要重新启动服务以使更改生效。

sudo systemctl restart jenkins

/etc/rc.d/rc.local文件方式配置开机自启动:

1. 打开rc.local文件

编辑/etc/rc.d/rc.local文件(当然也可以vim指令编辑):

sudo nano /etc/rc.d/rc.local

2. 添加启动命令

在文件的末尾添加Jenkins启动命令,例如:

/etc/init.d/jenkins start

确保命令路径正确且有效。

3. 保存并授予执行权限

保存并关闭文件后,授予执行权限:

sudo chmod +x /etc/rc.d/rc.local

4. 重启系统

确保文件是可执行的:

sudo ls -l /etc/rc.d/rc.local

输出应该包含-rwxr-xr-x,表示文件是可执行的。最后,重启系统:

sudo reboot

选择其中一种方式进行配置,根据你的系统和个人偏好进行选择,确保Jenkins服务在CentOS系统启动时能够自动启动。

总结

通过这两种配置方式,你可以轻松将服务(以Jenkins为例)在CentOS系统启动时自动启动。使用Systemd提供了现代而强大的服务管理功能,适用于大多数Linux系统。而修改/etc/rc.d/rc.local文件则是一种传统但仍然有效的方法,特别是在一些老旧的系统中。

选择合适的方式取决于你的系统版本和个人偏好。使用Systemd方式,你能够更灵活地管理服务,同时充分利用现代Linux系统的功能。而/etc/rc.d/rc.local方式则在某些情况下可能更为简便。

无论你选择哪种方式,确保配置正确,以确保你的服务在系统启动时能够顺利运行。通过这些步骤,你已经掌握了在CentOS系统中配置开机自启动服务的基本方法。

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

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

相关文章

渗透测试学习day7

文章目录 靶机:VaccineTask1Task2Task3Task4Task5Task6 7-9解题过程Task7Submit user flagSubmit root flag 靶机:Vaccine Task1 问题:除了SSH和HTTP,这个盒子上还托管了什么服务? ftpnmap扫一下 Task2 问题&…

【机器视觉技术栈】03 - 镜头

镜头 定焦镜头变焦镜头远心镜头 FA镜头与远心镜头的区别? 焦距越小畸变程度越大,精度要求不高的场景可以使用焦距大的FA镜头做尺寸测量,但焦距越大带来的问题就是整个机械设备越大。精度高的场景使用远心镜头进行尺寸测量。 光学基础知识…

Insomnia -- 非常nice的开源 API 调试工具

1. 这款开源 API 调试工具很棒!!! Kong Insomnia是一个协作的开源API开发平台,可以轻松构建高质量的API,而不会像其他工具那样臃肿和混乱。 350开源插件 平衡能力和复杂性。当你需要的时候扩展工作流(当你不需要的时…

C++进阶篇7---异常

目录 一、异常的介绍 二、异常的使用 1.异常的抛出和捕获 2.异常的重新抛出 3.异常安全 4.异常规范 三、自定义异常体系 四、C标准库的异常体系 一、异常的介绍 异常是一种处理错误的方式,当一个函数发现自己无法处理的错误时就可以抛出异常,让…

LeetCode437.路径总和III

看完题目我就拿直接用递归写了如下代码: class Solution {private int ans;public int pathSum(TreeNode root, int targetSum) {ans 0;dfs(root, targetSum, 0);return ans;}public void dfs(TreeNode root, int targetSum, int sum){if(root null)return;sum r…

CSS面经(未完待续)

1. CSS选择器及其优先级 !important > 行内样式 > id选择器 > 类/伪类/属性选择器 > 标签/伪元素选择器 > 子/后台选择器 > *通配符 2. 重排和重绘是什么?浏览器的渲染机制是什么? 重排(回流):当增加或删除dom节点&…

超大规模集成电路设计----CMOS反相器(五)

本文仅供学习,不作任何商业用途,严禁转载。绝大部分资料来自----数字集成电路——电路、系统与设计(第二版)及中国科学院段成华教授PPT 超大规模集成电路设计----CMOS反相器(五) 5.1 静态CMOS反相器综述5.1.1 静态CMOS反相器优点…

【C语言:自定义类型(结构体、位段、共用体、枚举)】

文章目录 1.结构体1.1什么是结构体1.2结构体类型声明1.3结构体变量的定义和初始化1.4结构体的访问 2.结构体对齐2.1如何对齐2.2为什么存在内存对齐? 3.结构体实现位段3.1什么是位段3.2位段的内存分配3.3位段的跨平台问题3.4位段的应用3.5位段使用注意事项 4.联合体4…

Chapter 6 Managing Application Engine Programs 管理应用程序引擎程序

Chapter 6 Managing Application Engine Programs 管理应用程序引擎程序 Running Application Engine Programs 运行应用程序引擎程序 This section provides an overview of program run options and discusses how to: 本节提供程序运行选项的概述,并讨论如何…

上下拉电阻会增强驱动能力吗?

最近看到一个关于上下拉电阻的问题,发现不少人认为上下拉电阻能够增强驱动能力。随后跟几个朋友讨论了一下,大家一致认为不存在上下拉电阻增强驱动能力这回事,因为除了OC输出这类特殊结构外,上下拉电阻就是负载,只会减…

RT-Thread Studio文件消失不见或被排除构建

不得不说RT-Thread Studio里面配置真多,今天我同事的电脑发现根本没有被画斜杠的文件夹,导致我想移植f1的写内部flash这个(可以看上一个文章)时候不能直接点击属性排除构建,然后在网上查找的时候也没怎么找到说法&…

代码随想录算法训练营 ---第五十五天

今天是 动态规划:编辑距离问题。 第一题: 简介: 动态规划五部曲: 1.确定dp数组的含义 dp[i][j] 表示以下标i-1为结尾的字符串s,和以下标j-1为结尾的字符串t,相同子序列的长度为dp[i][j]。 2.确定递推公…

智能优化算法应用:基于寄生捕食算法无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用:基于寄生捕食算法无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用:基于寄生捕食算法无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.寄生捕食算法4.实验参数设定5.算法结果6.参考…

玩转Omniverse | 将FBX文件导入Omniverse View,以及step等3D格式如何转换为USD文件的过程

1,参考这个过程,玩转Omniverse | 将FBX文件导入Omniverse View 2,实际操作: 在omniverse中安装usd explorer 打开usd explorer 选择step,然后右键选择convert to USD,点击确认,稍等一会就会转换…

Python神器解析时间序列数据:数据分析者必读

更多资料获取 📚 个人网站:ipengtao.com 时间序列数据是在许多领域中都至关重要的数据类型,它涵盖了一系列按时间顺序排列的数据点。Python作为一种强大的数据分析工具,提供了许多库和工具,能够有效地处理、分析和可视…

高级搜索——伸展树Splay详解

文章目录 伸展树Splay伸展树Splay的定义局部性原理Splay的伸展操作逐层伸展双层伸展zig-zig/zag-zagzig-zag/zag-zigzig/zag双层伸展的效果与效率 伸展树的实现动态版本实现递增分配器节点定义Splay类及其接口定义伸展操作左单旋右单旋右左/左右双旋伸展 查找操作删除操作插入操…

springcloud整合Oauth2自定义登录/登出接口

我使用的是password模式&#xff0c;并配置了token模式 一、登录 (这里我使用的示例是用户名密码认证方式) 1. Oath2提供默认登录授权接口 org.springframework.security.oauth2.provider.endpoint.postAccess; Tokenpublic ResponseEntity<OAuth2AccessToken> pos…

hbase thrift2 jar包冲突导致启动失败问题排查记录

1、启动命令 ${HBASE_HOME}/bin/hbase-daemon.sh start thrift2 2、异常情况 hbase-root-thrift2-hdfs-test07.yingzi.com.out异常日志&#xff1a; Exception in thread "main" java.lang.AbstractMethodError: org.apache.hadoop.metrics2.sink.timeline.Hadoo…

Nginx(十二) gzip gzip_static sendfile directio aio 组合使用测试(2)

测试10&#xff1a;开启gzip、sendfile、aio、directio1m&#xff0c;关闭gzip_static&#xff0c;请求/index.js {"time_iso8601":"2023-11-30T17:20:5508:00","request_uri":"/index.js","status":"200","…

【Java Web学习笔记】4 - DOM文档对象模型

项目代码 https://github.com/yinhai1114/JavaWeb_LearningCode/tree/main/javascript 零、在线文档 JavaScript HTML DOM 一、HTML DOM基本介绍 1. DOM全称是Document Object Model文档对象模型 文档<---映射--->对象 2.就是把文档中的标签&#xff0c;属性&#xf…