很长时间没有写文章了,正好遇到了这个问题,看见网上几乎没有答案,当然,也有可能是太简单的关系。
起因
在使用Linux的过程中,出现SSH可以连接,但FTP死活连接不上的情况,使用mebaXterm连接FTP,提示Error EEISocketClientError:Connecticut error 10061
,开发板提示nf_conntrack: automatic helper assignment is deprecated and it will be removed soon. Use the iptables CT target to attach helpers instead.
经过
遇到这种情况后,因为软件着急用,所以告诉他可以用scp上传文件,然后我继续调Linux驱动和优化rootfs等工作,直到这些工作都告一段落后才有空来解决这个问题。
-
本来一直以为是我把某些服务删了导致的ftp服务没打开,但是还原了所有我删除的服务之后依然未解决问题,所以首先排除是服务被删的问题。
-
然后通过搜索引擎搜索
Error EEISocketClientError:Connecticut error 10061
这个错误,得到一个答案:原因在于目标机器没有开启,无法建立socket连接。
-
于是通过搜索引擎搜索
nf_conntrack: automatic helper assignment is deprecated and it will be removed soon. Use the iptables CT target to attach helpers instead.
,按照【链接】中的方法均试过,无果。 -
于是通过查询定位,终于在/etc/rcS.d中找到vsftpd.sh这个服务(前面还有Sxx表示运行顺序),运行,没反应。
-
查看其执行了什么内容,发现它只是运行了vsftpd,于是用
ps -e | grep vsftpd
查询程序是否运行,发现没有运行。
-
那接下来就直接手动运行vsftpd,提示
500 OOPS: config file not owned by correct user, or not a file
,那这样问题就很明显了:config文件归属不对。
-
vsftpd的config文件为 etc/vsftpd.conf ,只需要把它改为所属用户改为root即可:
chown root:root /etc/vsftpd.conf
,再次执行/usr/sbin/vsftpd &
,无报错,MobaXterm也可以使用FTP连接,问题解决。
最后
- 遇到问题不要盲目的去处理,先还原上一次正常状态,再尝试,如果退回所做的操作之后依然存在该问题,那这个问题就不是你后边的步骤导致的,继续向前推。
- 善于使用搜索引擎解决问题,大部分问题都能在别人那儿得到答案。
- 要注意运行log(我就是在这步走了弯路),出错了之后直接复制log到搜索引擎,自己没看具体内容,在那儿看了很多博客之类的资料,都没有找到一样的,后来实在没办法了才仔细看log信息,发现问题是如此简单……