centos

CentOS如何启动后台进程

小樊
37
2025-09-18 00:15:02
栏目: 智能运维

在 CentOS 系统中,启动后台进程通常有以下几种方法:

  1. 使用 & 符号: 在命令行中,你可以在命令的末尾添加 & 符号,将进程放入后台运行。例如:

    python my_script.py &
    
  2. 使用 nohup 命令: nohup(no hang-up)命令可以让进程忽略挂起信号,即使关闭终端,进程也会继续运行。例如:

    nohup python my_script.py &
    

    这将在后台启动 my_script.py,并将输出重定向到名为 nohup.out 的文件。

  3. 使用 screentmux 工具: screentmux 是终端复用器,可以让你在一个终端窗口中运行多个会话。这些工具允许你启动一个后台会话,并在需要时重新连接。例如,使用 screen

    screen -S mysession
    python my_script.py
    

    Ctrl + A 然后按 D 键,将会话分离并返回到正常终端。要重新连接会话,请运行:

    screen -r mysession
    
  4. 使用 systemd 服务: 对于需要在系统启动时自动运行的后台进程,你可以创建一个 systemd 服务。首先,创建一个服务文件,例如 /etc/systemd/system/my_service.service,并添加以下内容:

    [Unit]
    Description=My custom service
    
    [Service]
    ExecStart=/usr/bin/python /path/to/my_script.py
    Restart=always
    
    [Install]
    WantedBy=multi-user.target
    

    然后,运行以下命令启用和启动服务:

    sudo systemctl enable my_service.service
    sudo systemctl start my_service.service
    

    要检查服务状态,请运行:

    sudo systemctl status my_service.service
    

根据你的需求选择合适的方法来启动后台进程。

0
看了该问题的人还看了