CentOS nohup命令如何在系统启动时自动运行
导读:在 CentOS 系统中,你可以使用 systemd 服务来实现 nohup 命令在系统启动时自动运行。以下是具体步骤: 创建一个 systemd 服务文件: 首先,你需要创建一个新的 systemd 服务文件。假设你的脚本名为 my_...
在 CentOS 系统中,你可以使用 systemd 服务来实现 nohup 命令在系统启动时自动运行。以下是具体步骤:
-
创建一个 systemd 服务文件: 首先,你需要创建一个新的 systemd 服务文件。假设你的脚本名为
my_script.sh,并且位于/home/user/scripts/目录下。sudo nano /etc/systemd/system/my_script.service -
编辑服务文件: 在打开的文件中,添加以下内容:
[Unit] Description=My Script Service After=network.target [Service] ExecStart=/bin/bash -c 'nohup /home/user/scripts/my_script.sh > /dev/null 2> & 1 & ' Restart=always User=user Group=user Environment=PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin [Install] WantedBy=multi-user.target解释:
Description:服务的描述。After:指定服务启动的顺序,这里表示在网络启动后启动。ExecStart:指定要执行的命令,这里使用nohup来运行脚本,并将输出重定向到/dev/null。Restart:指定服务重启策略,always表示总是重启。User和Group:指定运行服务的用户和组。Environment:指定环境变量。WantedBy:指定服务启动的目标。
-
重新加载 systemd 配置: 保存并关闭文件后,重新加载 systemd 配置以使新服务生效。
sudo systemctl daemon-reload -
启用服务: 启用服务,使其在系统启动时自动运行。
sudo systemctl enable my_script.service -
启动服务: 立即启动服务。
sudo systemctl start my_script.service -
检查服务状态: 检查服务的状态以确保它正在运行。
sudo systemctl status my_script.service
通过以上步骤,你的 nohup 命令将在系统启动时自动运行。如果你需要停止或重启服务,可以使用以下命令:
-
停止服务:
sudo systemctl stop my_script.service -
重启服务:
sudo systemctl restart my_script.service
这样,你就可以确保你的脚本在系统启动时自动运行,并且不会因为终端关闭而中断。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: CentOS nohup命令如何在系统启动时自动运行
本文地址: https://pptw.com/jishu/781305.html
