不使用 syslogd 调试 sftp 服务器

不使用 syslogd 调试 sftp 服务器

我尝试在 uclinux 上运行 dropbear ssh 服务器和 openSSH sftp 服务器。我需要调试 sftp 服务器程序,因为 ls 命令总是返回空目录(文件传输正常工作)!

在此步骤中,我使用“dropbear -F -E”而不是使用 inetd。

我的平台上没有 syslogd,并且我无法使用简单的 printf 进行调试,因为 dropbear 使用“sh -c”和“execv”函数调用 sftp-server。

(当我直接运行“sftp-server -e”时,printf 输出和日志工作正常,但没有 ssh 服务器,sftp-server 就无法工作)

任何人都可以帮助我如何查看 printf 输出或有关调试 sftp 服务器的其他建议。

更新:

当我运行时:/root#/usr/libexec/sftp-server -e -l VERBOSE>>/mnt/test2.txt

test2.txt文件是空的:(

谢谢

答案1

我通过使用 fprintf 将日志写入文本文件成功调试 sftp 服务器!

相关内容