CentOS 自启动某个应用

在 CentOS 中,如果你希望某个应用程序在网络启动后自动启动,可以通过创建自定义的 Systemd 服务文件来实现。这种方法是现代 Linux 系统的一种推荐方式,可以让你更好地控制服务的启动顺序和依赖关系。

步骤如下:

1. 创建 Systemd 服务文件
  1. 打开终端,并使用 sudo 权限创建自定义的服务文件。服务文件通常位于 /etc/systemd/system/ 目录下。

    复制代码
    sudo vi /etc/systemd/system/myapp.service

    这里的 myapp.service 是你为服务指定的名称,可以根据需要进行更改。

  2. 在文件中添加以下内容:

    复制代码
    [Unit]
    Description=My Application Service
    After=network.target  # 确保在网络启动后再启动该应用
    
    [Service]
    ExecStart=/path/to/your/application  # 替换为应用程序的完整路径
    Restart=always  # 如果应用程序崩溃,自动重启
    
    [Install]
    WantedBy=multi-user.target
    • Description: 提供服务的描述。
    • After=network.target: 确保在网络服务启动后再启动你的应用程序。
    • ExecStart: 指定启动应用程序的具体命令或路径。
    • Restart : 设置崩溃后自动重启的策略,可以使用 alwayson-failure 等。
  3. 保存并退出编辑器。如果使用 vi,可以按 Esc 然后输入 :wq 保存并退出。

2. 重新加载 Systemd 管理器

在创建或修改服务文件后,需要重新加载 Systemd 才能识别新的服务:

复制代码
sudo systemctl daemon-reload
3. 启用自启动

使用以下命令将服务设置为自启动:

复制代码
sudo systemctl enable myapp.service
4. 启动服务

如果你希望立即启动该服务,可以使用以下命令:

复制代码
sudo systemctl start myapp.service
5. 检查服务状态

可以使用以下命令检查服务的状态,确保它正在运行:

复制代码
sudo systemctl status myapp.service

6. 日志查看

如果需要查看应用程序的输出或日志信息,可以使用 journalctl 命令:

复制代码
sudo journalctl -u myapp.service

总结

以上步骤创建了一个 Systemd 服务,该服务会在网络启动后自动启动指定的应用程序。通过这种方式,你可以有效管理服务的启动、停止和重启等操作。

相关推荐
我星期八休息1 小时前
网络编程—NAT、代理服务与内网穿透
linux·服务器·网络·网络协议
RisunJan1 小时前
Linux命令-sysctl(运行时修改内核参数)
linux·网络·智能路由器
yunwei371 小时前
eBPF 教程:使用 fsession 追踪慢速 vfs_read 调用
linux·云原生
A_humble_scholar1 小时前
Linux 网络基础(三)下的 HTTP 核心详解:从请求响应到状态管
linux·网络·http
袅沫2 小时前
Nginx中部署多个前端项目——区分路径
服务器·前端
Albart5752 小时前
Docker Desktop最新版安装踩坑全记录(Windows_Mac_Linux)【2026 4.74.0 终版】
linux·windows·macos·docker·环境搭建·踩坑记录
fei_sun2 小时前
UVM中的TLM1.0通信
运维·服务器·uvm
MartinYeung52 小时前
[论文学习]MCPTox:面向真实世界MCP服务器的工具投毒攻击基准测试
运维·服务器·学习
举手2 小时前
Epoll模型
linux·c++·学习
Escalating_xu3 小时前
【Linux】基础 I/O 深度解析:FILE、文件描述符、open/read/write、重定向与缓冲区
java·linux·服务器