termux中使用FTP服务
Android版本:10
termux版本:0.94
当我们的手机与电脑或者另一台手机需要互传数据时,不一定需要使用数据线,也可以通过WiFi的方式进行传输,这类软件也有不少,但是现在越来越臃肿、含有广告,并且需要很多权限。这类软件(指快牙这类,不包括ftp相关软件),传输的速度最快也不过10M/s(估计只能开2.4G的热点),如果你的手机支持5G频段的热点,通过FTP传输,那么传输速度还是很给力的,并且只需要支持FTP协议软件的即可。
termux 中是自带轻量级的FTP的,但是这个只能匿名登录,详见官方wiki 。但是对于我们普通的传输数据也足够了。利用下面的命令开启服务(只读)
tcpsvd -vE 0.0.0.0 1024 ftpd /storage/emulated/0/ &
其中 1024 是端口号,你也可以改为其它大于 1024 小于 65535 的数字,/storage/emulated/0 是路径,虽然该路径在termux中无法直接访问(跟用户和权限有关),但是用FTP连接时可以访问。或者使用下面的命令(可读写)
tcpsvd -vE 0.0.0.0 1024 ftpd -w /storage/emulated/0/ &
然后执行
ftp 127.0.0.1 1024
可以查看服务是否启动,接着输入 dir 便可以查看当前文件夹下的文件。我们可以把这条命令写入到一个脚本中,并给它增加可执行的命令,这样就不用每次都输入这么一长串了。新建一个文件(如 ftp.sh )
vim ftp.sh
在里面加入上面的命令,并给予可执行的权限
chmod +x ftp.sh
每次只需要输入下列命令即可开启FTP服务
./ftp.sh
如果要结束这个服务,可以先用
ps -aux | grep tcpsvd
找到进程的PID(或者用top、htop等),然后 kill 掉即可。或者直接关闭termux。
连接也很简单,如果你的浏览器支持FTP协议,那么只需在地址栏输入 ftp://ip:1024 即可访问,ip为开FTP服务的那个。
实际测试:在一台手机上开热点(5G频段),另一台手机连接此热点,测试得到的结果(限于另一台手机存储的读写速度)没达满速,但是也比那些软件强。
如果在这个过程中遇到了其它问题,欢迎在评论区留言,或者Google一下,也欢迎把具体的解决方法留在评论区,以供后来者参考
参考: