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

Linux运行命令三种方式对比

三种方式

  1. 临时测试 → nohup
  2. 稳定运行 → supervisor
  3. 系统级守护 → systemd

测试用例/data/test.sh

#!/bin/bash
# /data/test.sh - Linux 简单输出时间的 demo 脚本while true
doecho "$(date '+%Y-%m-%d %H:%M:%S') - 测试脚本运行中..."sleep 1
done

nohub

#执行权限
chmod +x /data/test.sh
#后台运行
nohup /data/test.sh > /data/test.log 2>&1 &
#查看日志
tail -f /data/test.log

image

supervisor

Supervisor 是一个 用 Python 写的守护进程管理工具,主要功能是:

• 启动、停止、重启进程
• 保证进程崩溃后自动重启
• 集中管理日志
• 提供命令行或网页界面监控进程状态

简单理解:它就是一个 “程序保姆/管家”,专门看着你写的程序,一旦程序挂了,它就把程序重新叫起来。

安装supervisor

sudo apt install supervisor      # Debian/Ubuntu
sudo yum install supervisor      # CentOS

配置

创建 /etc/supervisor/conf.d/test.conf

[program:test]
command=/bin/bash /data/test.sh
autostart=true
autorestart=true
stderr_logfile=/var/log/test.err.log
stdout_logfile=/var/log/test.out.log

启动

sudo supervisorctl reread
sudo supervisorctl update
sudo supervisorctl start test

系统级守护进程(systemd)

创建 systemd 服务文件

路径: /etc/systemd/system/test_demo.service

[Unit]
Description=Test Demo Script
After=network.target[Service]
# 要执行的脚本路径
ExecStart=/data/test.sh# 让 systemd 负责重启
Restart=always
RestartSec=3# 运行用户(可改成你的业务账号)
User=root# 输出日志位置
StandardOutput=append:/data/test.log
StandardError=append:/data/test_err.log[Install]
WantedBy=multi-user.target

加载并启动服务

# 重新加载 systemd 配置
systemctl daemon-reload# 启动服务
systemctl start test_demo# 设置开机自启
systemctl enable test_demo# 查看运行状态
systemctl status test_demo

image

http://www.jsqmd.com/news/23972/

相关文章:

  • P14322 「ALFR Round 11」E 空崎ヒナ 题解 (markdown)
  • 详细介绍:论文阅读 (1) :Control Flow Management in Modern GPUs
  • 公众号排版2025年权威推荐:揭秘有一云AI编辑器为何高效?
  • P14322 「ALFR Round 11」E 空崎ヒナ 题解
  • [题解]P7074 [CSP-J 2020] 方格取数
  • 昨天线下赛的复盘
  • 10 27
  • 同余最短路学习报告
  • 打包exe出错了:
  • 19 lambda表达式的简化过程
  • 详细介绍:Redis多租户资源隔离方案:基于ACL的权限控制与管理
  • 二分查找边界
  • 求解 LCA 的三种方法及其比较
  • 策略模式优化if-else
  • 捐赠
  • 学习笔记:重链剖分
  • P3232 [HNOI2013] 游走
  • FRP 后端无法获取请求者IP解决方案
  • 正睿 2025 NOIP 20连测 Day9
  • 计算几何初步:CCW 与判断两线段的相交性
  • 如何选择合适的团队共享网盘?坚果云、亿方云等15款产品横向测评
  • 软件工程学习日志2025.10.27
  • 深入解析:TCP/IP 四层模型协作流程详解
  • Windows全版本激活教程(仅供测试)
  • 基本概念2
  • 20251027周一日记
  • 【通讯协议】IIC
  • Robot Queries
  • 10月27日
  • 特殊的数字签名