我正在使用 ipmitool 通过 SOL 获取远程控制台输出。这从后台进程中调用。当我在前台调用它时,它会正确地将控制台输出记录到日志文件中。但是在后台调用时,ipmitool 不起作用。知道为什么吗?
问问题
360 次
2 回答
0
ipmitool 将 SOL 数据写入出色的输出(stdout)文件描述符。在后台调用时,ipmitool 无法写入标准输出,因此您看不到控制台日志。
如果要将其作为后台进程运行,则将标准输出重定向到一个文件并尾随该文件。
于 2014-02-19T15:47:27.247 回答
0
我有这个问题。重定向标准输出的解决方案是不够的。这最终起作用了:
tail -f /dev/null --pid="$$" \
| ipmitool -H "$ip" -U "$username" -P "$password" -I lanplus sol activate \
2>> stderr.txt >> stdout.txt &
使用的想法tail -f /dev/null
来自这个答案。那里列出了一些其他解决方案,但我没有尝试过。
--pid="$$"
意味着当父进程被杀死时,这个进程将被杀死,这是我想要的,但可能符合也可能不符合您的需要。您可能需要一些机制来避免tail -f
僵尸。
于 2017-10-24T21:17:37.983 回答