在使用 scp
命令将文件传输至 OpenWrt 时遇到以下报错:
传输报错
ash: /usr/libexec/sftp-server: not found
默认 OpenWrt 使用的是精简版 ssh 客户端 Dropbear,不包含 sftp 协议所需组件,因此会报错。
解决方法
使用 Legacy 协议
在 OpenSSH 8.7+ 版本,默认使用 sftp 协议,添加 -O
参数可以指定使用老的兼容模式传输文件:
scp -O targetFile root@192.168.1.1:/tmp/
使用标准 sftp
安装所需要的依赖:
opkg update
opkg install openssh-sftp-server
其他兼容方式
可以选择使用非内置的传输方法,比如 rsync
opkg update
opkg install rsync
附录
参考链接
本文由 柒 创作,采用 知识共享署名4.0
国际许可协议进行许可。
转载本站文章前请注明出处,文章作者保留所有权限。
最后编辑时间: 2025-07-30 15:33 PM