温馨提示×

linux nohup日志怎么找路径

小樊
39
2026-10-21 01:22:00
栏目: 智能运维

在 Linux 中,使用 nohup 启动程序时,日志路径通常取决于你是怎么写命令的。下面分情况说明怎么找:


1️⃣ 最常见情况:nohup command &

如果你是这样启动的:

nohup python app.py &

✅ 默认日志路径:

当前目录下的 nohup.out

查看路径:

ls -l nohup.out
pwd

查看内容:

tail -f nohup.out

2️⃣ 手动指定了日志文件

如果你这样写的:

nohup python app.py > app.log 2>&1 &

✅ 日志就在你指定的文件:

app.log

查看:

tail -f app.log

3️⃣ 不知道日志写哪了?用进程反查

方法一:通过 ps + lsof

ps -ef | grep 程序名

假设 PID 是 12345:

lsof -p 12345 | grep -E 'txt|log|out'

或看标准输出:

ls -l /proc/12345/fd/1
ls -l /proc/12345/fd/2

fd/1 = 标准输出(日志常在这里)
fd/2 = 标准错误


4️⃣ 使用 nohup 但没看到 nohup.out

可能原因:

  • 你在 非交互 shell
  • 输出被重定向到 /dev/null
  • 程序自己写了日志

检查:

find ~ -name nohup.out 2>/dev/null

5️⃣ systemd 启动的(不是 nohup)

如果你其实是:

systemctl start xxx

那日志不在 nohup.out,而在:

journalctl -u xxx -f

✅ 总结速查表

启动方式 日志位置
nohup cmd & ./nohup.out
nohup cmd > log 2>&1 & log
不知道 /proc/PID/fd/1
systemd journalctl

如果你愿意,可以把你具体启动命令或程序名发出来,我可以直接帮你定位日志路径。

0 踩