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

Rocky Linux 运维工具 Systemd

一、Systemd 的简介
Systemd是一个用于管理Linux系统启动进程和服务的系统和服务管理器,取代了传统的init系统。它提供了并行启动、依赖关系管理、动态加载服务文件等功能,成为现代Linux发行版中主流的初始化系统。

二、Systemd 的参数说明

[Unit]
Description=My Custom Service      # 服务描述,简短描述服务的作用
After=network.target               # 指定服务应该在哪些服务之后启动
Requires=docker.service            # 指定依赖服务,如果依赖服务没有成功启动,当前服务将无法启动
Wants=mysql.service                # 指定依赖服务,如果依赖服务没有成功启动,不会导致当前服务无法启动。
Conflicts=apache2.service          # 指定冲突服务
Before=ssh.service                 # 指定服务应该在哪些服务之前启动
Requisite=mysql.service            # 要求指定服务成功启动后再启动当前服务
PartOf=multi-user.target           # 指定当前服务是其他服务的一部分,其他服务异常也会影响它
BindsTo=user@1000.service          # 指定一个服务,当被绑定的服务通过系统调用创建时,当前服务也会被创建
Documentation=https://example.com  # 添加文档链接
[Service]
Type=simple                        # 指定服务的类型,如 ​simple​, ​forking​, ​oneshot​, ​dbus​, ​notify​, 等。
ExecStart=/usr/bin/node myapp.js   # 指定启动服务时要执行的命令或脚本
ExecStop=/usr/bin/node myapp.js    # 指定停止服务时要执行的命令或脚本
Restart=always                     # 指定服务故障时的重启策略,如 ​always​, ​on-failure​, ​no​, 等
User=myuser                        # 指定特定用户运行服务
Group=mygroup                      # 指定特定用户组运行服务
Environment=VAR1=value1            # 设置服务运行时的环境变量
WorkingDirectory=directory         # 指定服务的工作目录
OOMScoreAdjust=500                 # Out-Of-Memory 分数调整
LimitNOFILE=10000                  # 最大打开文件数限制
LimitNPROC=200                     # 最大进程数限制
StandardOutput=syslog              # 标准输出重定向到syslog
StandardError=syslog               # 标准错误输出重定向到syslog
[Install]
WantedBy=multi-user.target         # 指定目标,当这些目标被启动时,服务也会被启动
Alias=my-custom-service            # 为服务定义别名
Also=another.service               # 同时处理另一个单元
DefaultInstance=default            # 设置默认实例名称

三、Systemd 的创建步骤

1、编写服务文件
服务文件是描述服务的配置文件,通常存放在/etc/systemd/system/目录下,后缀为.service。可以使用任何文本编辑器来创建服务单元文件。

2、 设置权限
设置权限:sudo chmod 755 your-service.service

3、 启用和启动服务
开机自启:sudo systemctl enable your-service.service
启动服务:sudo systemctl start your-service.service
服务状态:sudo systemctl status your-service.service

5、控制服务
启动服务:sudo systemctl start your-service.service
停止服务:sudo systemctl stop your-service.service
重启服务:sudo systemctl restart your-service.service
禁用服务:sudo systemctl disable your-service.service

6、 查看日志
日志查询:journalctl -u your-service.service

四、Systemd 的实战示例

相关文章:

  • 【每日一题】2867. 统计树中的合法路径数目-2024.2.27
  • AI大模型分析:数据背后隐藏的故事!
  • 【蓝桥杯】错误票据
  • 贪心 Leetcode 56 合并区间
  • 算法复习之二分【备战蓝桥杯】
  • 无人机飞行控制系统技术,四旋翼无人机控制系统建模技术详解
  • docker通过dockerfile安装sftp教程。
  • React富文本编辑器开发(一)
  • 如何将一个远程git的所有分支推到另一个远程分支上
  • linux 如何给服务器批量做免密,如何批量挂在磁盘
  • React编写组件时,如何省略.tsx后缀
  • 30天自制操作系统(第23天)
  • 现代灰色系有质感的家,低调的高级感
  • office word保存pdf高质量设置
  • UniApp Vue 3 中的网络请求封装详解及用法
  • 【干货分享】SpringCloud微服务架构分布式组件如何共享session对象
  • C++入门教程(10):for 语句
  • eclipse(luna)创建web工程
  • express.js的介绍及使用
  • Github访问慢解决办法
  • Gradle 5.0 正式版发布
  • JS字符串转数字方法总结
  • Linux编程学习笔记 | Linux多线程学习[2] - 线程的同步
  • Linux后台研发超实用命令总结
  • Mocha测试初探
  • mysql 数据库四种事务隔离级别
  • MYSQL如何对数据进行自动化升级--以如果某数据表存在并且某字段不存在时则执行更新操作为例...
  • mysql中InnoDB引擎中页的概念
  • PV统计优化设计
  • 基于游标的分页接口实现
  • 浏览器缓存机制分析
  • 马上搞懂 GeoJSON
  • 前端学习笔记之观察者模式
  • 强力优化Rancher k8s中国区的使用体验
  • 三分钟教你同步 Visual Studio Code 设置
  • 数据仓库的几种建模方法
  • 你学不懂C语言,是因为不懂编写C程序的7个步骤 ...
  • 曜石科技宣布获得千万级天使轮投资,全方面布局电竞产业链 ...
  • ​决定德拉瓦州地区版图的关键历史事件
  • ​七周四次课(5月9日)iptables filter表案例、iptables nat表应用
  • #多叉树深度遍历_结合深度学习的视频编码方法--帧内预测
  • #经典论文 异质山坡的物理模型 2 有效导水率
  • #我与Java虚拟机的故事#连载06:收获颇多的经典之作
  • $.ajax()
  • (2015)JS ES6 必知的十个 特性
  • (Matlab)基于蝙蝠算法实现电力系统经济调度
  • (zt)基于Facebook和Flash平台的应用架构解析
  • (附源码)springboot码头作业管理系统 毕业设计 341654
  • (附源码)ssm码农论坛 毕业设计 231126
  • (个人笔记质量不佳)SQL 左连接、右连接、内连接的区别
  • (牛客腾讯思维编程题)编码编码分组打印下标题目分析
  • (实战)静默dbca安装创建数据库 --参数说明+举例
  • (转)详解PHP处理密码的几种方式
  • **PHP二维数组遍历时同时赋值
  • .net mvc部分视图