Linux学习笔记:如何添加开机服务 (添加开机服务linux)

在Linux操作系统中,开机服务是一种在系统启动时自动运行的程序或服务。这些服务可能是系统自带的,也可能是用户自己安装的。添加开机服务可以让用户更方便地运行和管理自己的程序或服务,本文将介绍如何添加开机服务。

为了添加开机服务,我们需要在系统上创建一个systemd service unit文件。systemd是Linux系统中的一种服务管理器,用于管理和控制系统进程。一个systemd service unit文件描述了一个服务的配置和启动参数,通常保存在/etc/systemd/system目录下。以下是一个标准的systemd service unit文件的基本格式:

“`

[Unit]

Description=描述信息

After=依赖关系

[Service]

Type=服务类型

ExecStart=启动命令

ExecStop=停止命令

Restart=重启策略

[Install]

WantedBy=依赖关系

“`

其中,每个字段的含义如下:

Unit:描述了这个service unit 文件的元数据,包含了服务的描述信息和依赖关系。

Service:描述了服务的配置和启动过程。

Install:描述了服务的安装和卸载。

在创建一个service unit 文件之前,需要确认服务需要执行的命令和参数。例如,如果我们要创建一个名为myservice的服务,它需要运行一个名为myprogram的程序,可以使用以下命令创建myservice.service文件:

“`

sudo vi /etc/systemd/system/myservice.service

“`

然后输入以下内容:

“`

[Unit]

Description=My Service

[Service]

ExecStart=/usr/bin/myprogram arg1 arg2 arg3

[Install]

WantedBy=multi-user.target

“`

在这里,我们定义了一个名为My Service的服务,并将其运行的程序指定为 /usr/bin/myprogram,其参数为 arg1,arg2,arg3。同时,我们还指定了此服务在multi-user.target级别下启动。

当我们完成myservice.service文件的编辑以后,使用以下命令启动服务:

“`

sudo systemctl start myservice.service

“`

然后,我们可以使用下面的命令检查服务运行的状态:

“`

sudo systemctl status myservice.service

“`

如果服务已经运行,则输出如下所示:

“`

● myservice.service – My Service

Loaded: loaded (/etc/systemd/system/myservice.service; enabled; vendor preset: enabled)

Active: active (running) since Sun 2023-09-01 17:12:07 KST; 10min ago

Mn PID: 1234 (myprogram)

Tasks: 5 (limit: 4703)

Memory: 5.2M

CGroup: /system.slice/myservice.service

└─1234 /usr/bin/myprogram arg1 arg2 arg3

“`

如果服务未能正常运行,可以使用如下命令查看服务输出:

“`

journalctl -xn

“`

这个命令将显示在调试服务时必需的日志信息。

当我们使用start命令启动服务后,该服务只在当前会话中运行。要设置开机启动,可以使用以下命令:

“`

sudo systemctl enable myservice.service

“`

这个命令会创建一个软链接到 /etc/systemd/system/multi-user.target.wants目录下,启用开机自启动。如果你需要禁用开机自启动,可以使用以下命令:

“`

sudo systemctl disable myservice.service

“`

在Linux操作系统中,添加开机服务非常容易。只需要创建一个systemd service unit文件,定义服务的配置和启动参数,启动服务即可。当然,为了更好地管理服务,我们可以使用systemctl命令进行更多的操作,如检查服务状态、设置开机自启动等等。希望本文能够对初学者有所帮助。

相关问题拓展阅读:

  • linux设置开机自启动

linux设置开机自启动

linux设置开机自启动执行命令

执行命令

: 编辑”/etc/rc.local”,添加你想开机运行的命令

运行程序脚本

:然后在文件最后一行添加要执行程序的全路径。

例如,每次开机时要执行一个hello

.sh

,这个脚本放在/usr下面,那就可以在”/etc/rc.local”中加一行”/usr/./hello.sh”,或者” cd /opt &桥伏& ./hello.sh “

注意,你的命令应该添加在:exit 0 之前

linux在“/etc/rc.d/init.d”下有很多的文件,每个文件都是可以看到内容的,其实都是一些shell脚本或者可执行二进制文件 Linux开机的时候,会森消神加载运行/etc/init.d目录下的程序,因此我们可以把想要自动运行的脚本放到这个目录下即可。系统服务的启动就是通过这种方式实现的。

简单的说,运行级就是操作系统当前正在运行的功能级别。

例:在Ubuntu/debain里,可以使用update-rc.d命令来把示例脚本:/etc/init.d/proxy安装到各个runlevel中。

update-rc.d后面有三个参数,分别是/etc/init.d下的脚本名字,默认安装方式,运行的

优先级

。优先级的数字越大,表示越迟运行,这里我们把自己写的服务放在最后运行。

如果要卸载随机启动的服务,执行

在update-rc.d安装的时候提示了警告信息,是因为我们写的/etc/init.d/proxy太简陋了,只包含了我们想要的此亏命令,连LSB的信息也没有提供。

只需要对自启动脚本做一些小改动,就可以避免那个警告了。如下:

到此,一个最简单的随机启动服务写好了,看起来文章挺长的,但其实也就几个命令而已。 在下次开机启动的时候,proxy.py就会以root用户身份被自动运行。

在/etc/init.d下新建示例脚本文件(startTest.sh),该脚本会启动/opt/test.sh。内容如下:

写了脚本文件之后事情还没有完,继续完成以下几个步骤:

关于添加开机服务linux的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

香港服务器首选树叶云,2H2G首月10元开通。
树叶云(shuyeidc.com)提供简单好用,价格厚道的香港/美国云服务器和独立服务器。IDC+ISP+ICP资质。ARIN和APNIC会员。成熟技术团队15年行业经验。

文章来源网络,作者:管理,如若转载,请注明出处:https://shuyeidc.com/wp/190336.html<

(0)
管理的头像管理
上一篇2025-03-31 14:59
下一篇 2025-03-31 15:00

相关推荐

  • 云服务器和云虚拟主机怎么选?云服务器和虚拟主机区别

    云服务器适合业务增长快、需弹性扩展的场景,而云虚拟主机适合预算有限、技术门槛低的小型静态网站或测试环境,二者核心区别在于资源独享性与运维复杂度,核心差异解析:从底层架构到使用体验很多人容易混淆这两者,觉得它们都是“买空间建站”,它们的底层逻辑完全不同,云服务器(ECS)就像是你租了一整栋别墅,水电网络独立,你想……

    2026-06-29
    0
  • 赣州智慧旅游招聘是真的吗?赣州旅游人才招聘信息

    中级岗位(3-5年经验)月薪范围通常在6000-10000元,这类岗位需要独立负责项目模块,如独立运营一个抖音账号,或维护一个景区小程序的功能迭代,具备成功案例的候选人议价能力较强,高级岗位(5年以上经验)月薪范围通常在10000-20000元,部分核心管理岗可达更高,这类人才需要具备战略规划能力,如制定整个景……

    2026-06-29
    0
  • 赣州智能物联网车位锁如何管理?智能车位锁管理系统多少钱

    赣州智能物联网车位锁管理的核心在于通过云端平台实现远程控锁、状态实时监控及自动计费,彻底解决传统车位“被占难管”与“找位难”的痛点,在赣州这样的城市,随着机动车保有量的持续增长,老旧小区、商业综合体以及私人固定车位的资源矛盾日益凸显,传统的机械地锁或简易遥控锁,不仅操作繁琐,更无法实现数据化管理,引入智能物联网……

    2026-06-29
    0
  • 赣州智能消防栓好用吗,智能消防栓多少钱一个

    赣州智能消防栓通过物联网技术实现实时监测与远程报警,能显著降低火灾响应时间并提升城市消防安全管理水平,是目前智慧城市建设中不可或缺的基础设施,赣州智能消防栓的核心价值与应用场景传统消防栓往往存在“看不见、摸不着、用不了”的痛点,在赣州这样地形复杂、老城区与新城区并存的区域,传统设施的管理难度极大,智能消防栓的出……

    2026-06-29
    0
  • 云服务器和物理机到底有啥区别?

    云服务器本质上是虚拟化资源池中的弹性实例,而传统物理服务器是独占的硬件实体,前者胜在弹性与运维便捷,后者强在物理隔离与性能稳定,具体选择取决于业务对成本、扩展性及安全合规的权衡,很多人初次接触服务器时,容易把“云服务器”和“传统物理服务器”混为一谈,觉得它们都是用来跑网站或存数据的盒子,这两者的底层逻辑完全不同……

    2026-06-29
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注