智能摘要 AI
作者在更新OpenClash内核时,发现无法通过在线方式更新,遂尝试使用FTP功能但遇到问题。由于OpenWrt默认不带SFTP服务,需手动安装。首先检查并确认`/etc/ssh/sshd_config`中是否已配置SFTP,若无则需安装`openssh-sftp-server`,具体命令为`opkg update`与`opkg install openssh-sftp-server`。安装后重启Dropbear服务,运行`/etc/init.d/dropbear restart`。完成上述步骤后,重新连接SSH并尝试SFTP即可解决问题。
引言
最近在解决 OpenClash 内核更新的问题时,我遇到了一些困难。由于无法通过在线方式直接更新,我开始搜索本地上传文件更新的解决方案。在这个过程中,我尝试使用 FTP 功能,但却遇到了一些问题,下面是我遇到的情况:
cannot read properties of null (reading 'readdir')这说明 OpenWrt 并没有自带 SFTP 服务,需要手动安装。
安装SFTP服务
针对这个问题,我们可以通过以下步骤在 OpenWrt 上安装 SFTP 服务:
首先,我们需要了解 OpenWrt 使用的是 Dropbear 作为 SSH 管理软件包。这是一个相对轻量级的软件包,主要用于嵌入式系统和小型设备,因此并不包含 OpenSSH 的全部功能集。
检查是否存在SFTP功能
我们可以通过以下命令来检查是否已经存在 SFTP 功能:
cat /etc/ssh/sshd_config | grep sftp如果不存在,会出现如下报错:
cat: can't open '/etc/ssh/sshd_config': No such file or directory安装SFTP服务
接下来,我们可以通过以下命令来安装 SFTP 服务:
opkg update
opkg install openssh-sftp-server重启服务
安装完成后,我们需要重启服务:
/etc/init.d/dropbear restart然后,重新连接 SSH,再次尝试使用 SFTP,一切应该正常了。





评论 (0)