我尝试在 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 服务器!