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

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系统中配置开机自启动服务的基本方法。

相关文章:

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

前言 CentOS系统提供了多种配置服务开机自启动的方式。本文将介绍其中两种常见的方式, 一种是使用Systemd服务管理器配置,不过,在实际中,如果你已经通过包管理工具安装的,那么服务通常已经被配置为Systemd服务&#…...

第二百零一回 介绍一个三方包open_settings

文章目录 1. 概念介绍2 使用方法3 代码与效果3.1 示例代码3.2 运行效果 4. 经验分享 我们在上一章回中介绍了Form Widget相关的内容,本章回中将介绍Form系列组件的验证与提交功能.闲话休提,让我们一起Talk Flutter吧。 1. 概念介绍 我们在这里说的的验…...

iview Table实现跨页勾选记忆功能以及利用ES6的Map数据结构实现根据id进行对象数组的去重

因为iview Table组件的勾选是选中当前页的所有数据,当我们切到别的页面时,会发送请求给后端,这个时候就会刷新我们之前页码已经选中的数据。现在有个需求就是,在我们选择不同页码的数据勾选中之后,实现跨页勾选记忆功能,就是说已经打钩了的数据,不管切到哪一页它都是打钩…...

【Spring 源码】 贯穿 Bean 生命周期的核心类之 AbstractAutowireCapableBeanFactory

🚀 作者主页: 有来技术 🔥 开源项目: youlai-mall 🍃 vue3-element-admin 🍃 youlai-boot 🌺 仓库主页: Gitee 💫 Github 💫 GitCode 💖 欢迎点赞…...

漏洞复现-某友UFIDA NC系统某接口未授权访问漏洞(附漏洞检测脚本)

免责声明 文章中涉及的漏洞均已修复,敏感信息均已做打码处理,文章仅做经验分享用途,切勿当真,未授权的攻击属于非法行为!文章中敏感信息均已做多层打马处理。传播、利用本文章所提供的信息而造成的任何直接或者间接的…...

树莓派5安装opencv

1 建立虚拟环境 参考网站 https://www.piwheels.org/faq.html#venv 虚拟环境建立过程: To create a virtual environment: $ sudo apt install virtualenv python3-virtualenv -y $ virtualenv -p /usr/bin/python3 testpip sudo apt install virtualenv pytho…...

【测试开发】Python+Django实现接口测试工具

PythonDjango接口自动化 引言: 最近被几个公司实习生整自闭了,没有基础,想学自动化又不知道怎么去学,没有方向没有头绪,说白了其实就是学习过程中没有成就感,所以学不下去。出于各种花里胡哨的原因&#xf…...

从 MQTT、InfluxDB 将数据无缝接入 TDengine,接入功能与 Logstash 类似

利用 TDengine Enterprise 和 TDengine Cloud 的数据接入功能,我们现在能够将 MQTT、InfluxDB 中的数据通过规则无缝转换至 TDengine 中,在降低成本的同时,也为用户的数据转换工作提供了极大的便捷性。由于该功能在实现及使用上与 Logstash 类…...

友元c++

#include <iostream> #include <string> using namespace std; class Lovers//爱人关系,基类 { public: Lovers(string theName);// void kiss(Lovers *lover); void ask(Lovers *lover, string something); protected: string name; friend cla…...

java: 错误: 不支持发行版本 6

文章目录 背景一、问题二、问题排查三、最终解决方案 背景 我本地安装的jdk版本是jdk 17&#xff0c;在项目父工程中配置的版本是8版本&#xff0c;每次我启动项目时都会报错。 一、问题 二、问题排查 首先我排查了父工程pom.xml中的配置&#xff0c;配置的是8版本&#xff0…...

qml刷新C++中的QImage图像

第一步&#xff1a;重写QQuickImageProvider类 #include <QQuickImageProvider>class CQuickImagePainter : public QQuickImageProvider { public:CQuickImagePainter();QImage requestImage(const QString&id, QSize *, const QSize &);QPixmap requestPixm…...

IJCAI 2024 International Joint Conference on Artificial Intelligence

目录 1、 重要1.1 官网&#xff1a;1.2 提交网址&#xff1a;1.3 模板 &#xff08;latex & word&#xff09; 2、 Call for Papers2.1 Important Dates2.2 Details 3、 注意事项4 New in 20245 Simplified procedure for resubmission information6、 Submission Process …...

使用Python Flask搭建Web问答应用程序并发布到公网远程访问

使用Python Flask搭建web问答应用程序框架&#xff0c;并发布到公网上访问 文章目录 使用Python Flask搭建web问答应用程序框架&#xff0c;并发布到公网上访问前言1. 安装部署Flask并制作SayHello问答界面2. 安装Cpolar内网穿透3. 配置Flask的问答界面公网访问地址4. 公网远程…...

android 13.0 app应用安装白名单

1.概述 在13.0系统rom定制化开发中,客户需求要实现应用安装白名单功能,在白名单之中的应用可以安装,其他的app不准安装,实现一个 控制app安装的功能,这需要从app安装流程入手就可以实现功能 PMS就是负责管理app安装的,功能就添加在这里就可以了,接下来看具体实现这个功能…...

SSL证书HTTPS保护服务

SSL证书属于数字证书的其中一种&#xff0c;广泛用于https协议&#xff0c;从而可以让数据传输在加密前提下完成&#xff0c;确保HTTPS网络安全是申请SSL证书必要工作。 SSL证书是主要用于https是一种加密协议&#xff0c;仔细观察网站地址会发现目前主流的网址前面都会有http…...

快速认识什么是:Docker

Docker&#xff0c;一种可以将软件打包到容器中并在任何环境中可靠运行的工具。但什么是容器以及为什么需要容器呢&#xff1f;今天就来一起学快速入门一下Docker吧&#xff01;希望本文对您有所帮助。 假设您使用 Cobol 构建了一个在某种奇怪风格的 Linux 上运行的应用程序。您…...

c语言青蛙跳台阶

"青蛙跳台阶"问题是一个经典的动态规划问题&#xff0c;经常被用来解释动态规划的基本概念。问题的描述是&#xff1a;假设一只青蛙可以跳上1级或2级台阶&#xff0c;如果有n级台阶&#xff0c;那么青蛙有多少种跳法。 在C语言中&#xff0c;我们可以使用动态规划来…...

IntelliJ IDEA 2023.3 最新版如何试用?IntelliJ IDEA 2023.3 最新版试用方法

&#x1f337;&#x1f341; 博主猫头虎&#xff08;&#x1f405;&#x1f43e;&#xff09;带您 Go to New World✨&#x1f341; &#x1f984; 博客首页——&#x1f405;&#x1f43e;猫头虎的博客&#x1f390; &#x1f433; 《面试题大全专栏》 &#x1f995; 文章图文…...

Java参数校验详解:使用@Valid注解和自定义注解进行参数验证

很多时候我们需要使用不少if、else等等逻辑判断及验证&#xff0c;这样在进行一些重复的参数校验会很麻烦&#xff0c;且以后要维护也会吃力。 而这样就可以使用javax.validation。验证&#xff08;Validation&#xff09;常见的验证操作包括验证数据的类型、格式、长度、范围、…...

多维时序 | MATLAB实现BWO-CNN-BiGRU-Multihead-Attention多头注意力机制多变量时间序列预测

多维时序 | MATLAB实现BWO-CNN-BiGRU-Multihead-Attention多头注意力机制多变量时间序列预测 目录 多维时序 | MATLAB实现BWO-CNN-BiGRU-Multihead-Attention多头注意力机制多变量时间序列预测预测效果基本介绍模型描述程序设计参考资料 预测效果 基本介绍 MATLAB实现BWO-CNN-B…...

SEO排名培训对个人和企业有什么区别

SEO排名培训对个人和企业的不同影响 在当今数字化时代&#xff0c;搜索引擎优化&#xff08;SEO&#xff09;已成为提升网络曝光度的关键手段。无论是个人博主、自由职业者&#xff0c;还是中小企业&#xff0c;SEO排名培训都能带来显著的效益。SEO排名培训对个人和企业的具体…...

拓朋N86公网车载台:邮政分拣车高效协同的通信保障

在繁忙的邮政包裹分拣中心&#xff0c;效率与协同是每辆分拣车与调度人员最为关心的两大要素。在这样一片高速运转而充满挑战的天地里&#xff0c;拓朋N86公网集群车载台以其出色的性能&#xff0c;悄然成为了分拣车队的隐形指挥中枢。 全国覆盖&#xff0c;沟通无阻 分拣中心往…...

谷歌:子目标驱动提升长程智能体

&#x1f4d6;标题&#xff1a;A Subgoal-driven Framework for Improving Long-Horizon LLM Agents &#x1f310;来源&#xff1a;arXiv, 2603.19685v1 &#x1f31f;摘要 基于大语言模型&#xff08;LLM&#xff09;的代理已经成为数字环境的强大自主控制器&#xff0c;跨越…...

面试复盘之WHERE和HAVING的区别以及MySQL的索引

where是在数据分组之前进行过滤执行流程 FROM → WHERE → GROUP BY → HAVING → SELECT → ORDER BY示例 SELECT * FROM employee WHERE salary > 5000;含义&#xff1a;先从表中筛选出 salary > 5000 的记录&#xff0c;再返回结果。 HAVING 关键字 HAVING 的作用…...

如何通过Onekey技术解决Steam资源仓库的高效同步与版本控制难题

如何通过Onekey技术解决Steam资源仓库的高效同步与版本控制难题 【免费下载链接】Onekey Onekey Steam Depot Manifest Downloader 项目地址: https://gitcode.com/gh_mirrors/one/Onekey 问题&#xff1a;Steam资源管理的核心矛盾与行业痛点 在数字内容分发领域&#…...

拼多多数据采集实战指南:用scrapy-pinduoduo轻松获取电商市场情报

拼多多数据采集实战指南&#xff1a;用scrapy-pinduoduo轻松获取电商市场情报 【免费下载链接】scrapy-pinduoduo 拼多多爬虫&#xff0c;抓取拼多多热销商品信息和评论 项目地址: https://gitcode.com/gh_mirrors/sc/scrapy-pinduoduo 在电商竞争日益激烈的今天&#x…...

KernelSU低版本内核适配实战指南:突破Linux 4.14+设备的技术瓶颈

KernelSU低版本内核适配实战指南&#xff1a;突破Linux 4.14设备的技术瓶颈 【免费下载链接】KernelSU A Kernel based root solution for Android 项目地址: https://gitcode.com/GitHub_Trending/ke/KernelSU 问题溯源&#xff1a;旧内核设备的Root困境 在Android设备…...

DXVK 2.7.1:Linux游戏图形性能的终极Vulkan转换层深度解析

DXVK 2.7.1&#xff1a;Linux游戏图形性能的终极Vulkan转换层深度解析 【免费下载链接】dxvk Vulkan-based implementation of D3D8, 9, 10 and 11 for Linux / Wine 项目地址: https://gitcode.com/gh_mirrors/dx/dxvk DXVK 2.7.1作为基于Vulkan的Direct3D 8/9/10/11转…...

Instructions终极指南:5个简单步骤创建你的第一个iOS引导标记

Instructions终极指南&#xff1a;5个简单步骤创建你的第一个iOS引导标记 【免费下载链接】Instructions Create walkthroughs and guided tours (coach marks) in a simple way, with Swift. 项目地址: https://gitcode.com/gh_mirrors/in/Instructions Instructions是…...

如何在 React 中正确绑定 onClick 事件以避免类型错误

React 中 onClick 期望接收一个函数&#xff0c;若传入字符串或直接执行表达式&#xff08;如 window.href...&#xff09;会导致“Expected onclick listener to be a function”报错&#xff1b;正确做法是使用箭头函数包裹逻辑。 react 中 onclick 期望接收一个函数&am…...