linux的服务管理

systemd

systemd 是一个系统和服务管理器,用于Linux操作系统中,旨在替代传统的Unix系统V初始化系统(SysV init)。

不一定所有使用 yum 安装的软件都可以通过 systemctl start 来管理。能否通过 systemctl start 管理取决于软件包是否提供了相应的 systemd 单元文件。

如果软件没有提供 systemd 单元文件

如果软件包没有提供 systemd 单元文件,但你希望通过 systemctl 来管理它,可以手动创建一个 systemd 单元文件。以下是创建自定义服务单元文件的步骤:

csharp 复制代码
创建服务单元文件:
在 /etc/systemd/system/ 目录中创建一个新的服务单元文件。
例如,为了管理一个名为 myapp 的软件,可以创建 /etc/systemd/system/myapp.service 文件。
sudo nano /etc/systemd/system/myapp.service
编辑服务单元文件:
在文件中添加以下内容,根据具体的软件路径和启动命令进行修改。


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

[Service]
ExecStart=/usr/bin/myapp
Restart=on-failure
User=myuser
Group=mygroup

[Install]
WantedBy=multi-user.target



Description:服务的描述。
After:指定服务的启动顺序。
ExecStart:启动服务的命令。
Restart:指定服务失败时的重启策略。
User 和 Group:运行服务的用户和组(可选)。
WantedBy:指定服务的目标运行级别。
加载新服务单元文件:
sudo systemctl daemon-reload
启动和启用服务:
sudo systemctl start myapp
sudo systemctl enable myapp

systemctl

systemctl 是管理和控制 systemd 的主要命令行工具。它提供了启动、停止、重启服务,查看服务状态,启用和禁用服务开机自启动等功能。

查看服务状态:

systemctl status <service_name>

启动服务:

sudo systemctl start <service_name>

停止服务:

sudo systemctl stop <service_name>

重启服务:

sudo systemctl restart <service_name>

相关推荐
郝亚军1 小时前
asqlite-autoconf-3310100 的ubuntu 22.04 aarch64交叉编译
linux·运维·ubuntu
过去式的美好2 小时前
阿里云 2 核 2G 服务器搭建 AI 知识库:从 0 到可用(附踩坑实录)
服务器·人工智能·阿里云
如意机反光镜裸2 小时前
如何合并局域网共享文件夹中的多个 Excel 工作簿?(免 WPS 会员解决方案)
服务器·excel·wps
笑锝没心没肺2 小时前
Linux安装docker及运行容器测试
linux·运维·docker
数据知道2 小时前
网络安全实战:渗透测试全流程 SOP——从授权到报告交付
服务器·网络·安全·web安全·网络安全
Mr_liu_6662 小时前
Claude非专业入门实战笔记(附录):关闭Telemetry-遥测,消除无用网络请求与日志噪音
linux·笔记·ubuntu·ai编程
时空无限2 小时前
ubuntu apt 查看软件之间的依赖
linux·运维·ubuntu
Escalating_xu2 小时前
【Linux】线程概念与控制:从地址空间、LWP 到 pthread_create、join、detach 与 NPTL
java·linux·redis
Escalating_xu2 小时前
【Linux】进程信号:从产生、阻塞与递达到 sigaction、可重入与内核返回路径
linux·运维·面试·职场和发展
2603_966437262 小时前
格式化之后数据还能恢复吗?说清恢复条件
linux·运维·数据库