Linux 使用用户级别的 systemd 服务

使用用户级别的 systemd 服务

可以创建一个用户级别的 systemd 服务来实现开机启动。这种方式更加灵活和规范,适用于需要长期运行的服务或后台任务。

  • 创建一个 .service 文件,通常放置在 ~/.config/systemd/user/ 目录下,例如 ~/.config/systemd/user/my_service.service。
  • 编辑 .service 文件,定义服务的启动命令、工作目录等信息。
  • 使用 systemctl --user 命令启用、停止、启动或重启服务。加粗样式

示例 .service 文件内容

[Unit]
Description=My Service
After=network.target

[Service]
ExecStart=/path/to/my_command
Restart=always

[Install]
WantedBy=default.target

这个文件是一个 systemd 单元文件,用于定义一个 systemd 服务。下面解释每个部分的含义:

1、[Unit]:这个部分包含了单元的基本信息。

  • Description=My Service:描述了这个单元的简要说明,即服务的名称或描述。

  • After=network.target:指定了这个单元应该在哪些其他单元之后启动。这里指定在网络服务启动之后启动该服务。
    1、[Service]:这个部分定义了服务的执行方式。

  • ExecStart=/path/to/my_command:指定了服务启动时执行的命令或程序的路径。/path/to/my_command 应该替换为实际的命令或程序路径。

  • Restart=always:定义了服务的重启策略,这里设置为总是重启,在服务异常退出时会自动重新启动。
    1、[Install]:这个部分定义了如何安装这个单元。

  • WantedBy=default.target:指定了这个单元应该被哪个系统目标(target)所依赖以启动。这里设置为 default.target,表示当系统进入默认目标时,应该启动该服务。
    这些配置项的具体含义可以参考 systemd 单元文件的文档和手册。

然后执行以下命令使服务生效:

systemctl --user enable my_service.service
systemctl --user start my_service.service

无论选择哪种方式,都要确保命令的执行权限正确,并且谨慎操作,以免影响系统稳定性。


完结 学海无涯 保持敬畏之心 小心甚微 如摄大川。

  • 4
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
systemd是一个用于管理Linux系统中的服务和进程的工具。要启动一个服务,需要创建一个systemd脚本,并将其放置在/usr/lib/systemd/system/或/etc/systemd/system/目录下。脚本文件以.service结尾,并包含三个部分:\[Unit\]、\[Service\]和\[Install\]。 在\[Unit\]部分,可以设置描述信息、启动顺序和依赖关系。例如,可以使用Description字段来描述服务的信息,使用After和Before字段来指定服务的启动顺序。 在\[Service\]部分,可以设置服务的启动类型、用户和组、重启策略以及执行命令。Type字段用于指定启动类型,例如oneshot表示只执行一次任务后立即退出,simple表示立即启动,forking表示服务进程fork后父进程退出,等等。ExecStart字段用于指定要执行的命令。 在\[Install\]部分,可以设置服务的安装信息,例如WantedBy字段用于指定服务的启动级别。 更多关于systemd的详细信息和命令可以参考以下链接: - \[systemd教程\](http://www.ruanyifeng.com/blog/2016/03/systemd-tutorial-commands.html) - \[systemd简介\](https://www.jianshu.com/p/22bed497c9c0) - \[systemd服务配置\](https://blog.csdn.net/xing_huo95/article/details/90246050) - \[systemd官方文档\](https://www.freedesktop.org/software/systemd/man/bootup.html#System%20Manager%20Bootup) #### 引用[.reference_title] - *1* *2* [linux systemed——自定义系统服务,及开机启动](https://blog.csdn.net/weixin_43918005/article/details/109136633)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [systemd启动流程分析](https://blog.csdn.net/rikeyone/article/details/108097837)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

白嫖一茶

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值