在Debian环境下,使用nohup命令可以让你在后台运行程序,即使关闭终端或者断开SSH连接,程序也会继续运行
打开终端。
使用cd命令切换到包含你想要运行的程序的目录。
使用nohup命令启动程序。例如,如果你想要在后台运行名为my_service的程序,可以使用以下命令:
nohup ./my_service & 这里的&符号表示将程序放入后台运行。
nohup命令会将程序的输出重定向到一个名为nohup.out的文件中。如果你想要将输出重定向到其他文件,可以使用以下命令:nohup ./my_service > my_output.log & 这将把程序的输出保存到my_output.log文件中。
logrotate工具。首先,创建一个名为logrotate.conf的配置文件:sudo nano /etc/logrotate.d/my_service 然后,添加以下内容:
/path/to/my_output.log { size 100k rotate 5 compress missingok notifempty create 0640 root root } 这里的size 100k表示当日志文件达到100KB时,将触发日志轮转。rotate 5表示保留5个轮转日志。compress表示压缩旧日志文件。missingok表示如果日志文件不存在,不会报错。notifempty表示如果日志文件为空,不进行轮转。create 0640 root root表示创建新的日志文件,权限为0640,属主为root,属组为root。
保存并关闭配置文件。
使用logrotate命令手动触发日志轮转:
sudo logrotate /etc/logrotate.d/my_service 现在,你已经成功使用nohup在Debian环境下管理后台服务。程序将在后台运行,即使关闭终端或者断开SSH连接,程序也会继续运行。同时,输出文件会被保存并定期轮转。