| 在嵌入式Linux系统中,电脑端使用SSH登录和SFTP登录开发板的方式非常常见,这种登录方式比起串口登录方式要好得多,一根网线或者一个WIFI热点就可以进行Linux shell通信或者传输大文件,通常SSH登录和TFTP/SFTP的端口号都是22,而21则是FTP(如vsftpd,电脑端可直接在文件夹地址中输入开发板的地址,以系统文件的方式进行访问,而无需像SFTP那样要通过XShell或者FZ这种第三方软件访问)。 首先是SSH登录方式,这个登录方式需要开发板预先安装并开启SSH服务,在官方的Linux3.1内核的系统中,SSH服务是有安装的,但是却没有运行,使用网上常见的sshd start之类的指令也无法进行访问,后面刷了个Linux4.115内核的fsl-qt5的镜像之后SSH服务就可以正常访问了,访问步骤如下:
 第一,使用网线连接开发板和电脑,注意开发板有两个网口,默认使用CPU左侧靠近音频接口那个网口:
 
   使用命令提示符查询电脑的IP地址:
 
 
  可以看到,这里面我电脑的以太网接口的IP地址为169.254.122.1,即网段为169.254.122.XXX,所以开发板也要设置成同一网段不同主机号的169.254.122.XXX,我这里设置成169.254.122.7:
 
 ifconfig eth0 169.254.122.7
  
 然后就可以使用putty或者XShell等软件进行SSH登录了。注意用户名是root:
 
     搞定了SSH登录,然后就是锁定开发板的静态IP地址了,这样做的好处就是开发板每次上电启动都用固定的IP地址,直接可以进行SSH登录而无需事先用串口设置IP地址。锁定静态IP地址的方法:打开/etc/rc2.d/下的S99rc.local文件,在文件的最开头处添加ifconfig eth0 169.254.122.7:
 
     至于怎么提取这个文件到Window上呢?可以直接在SSH登录窗口里面使用
 
 命令提取出来:sz /etc/rc2.d/S99rc.local
   修改好之后,使用
 
 命令选择修改好的S99rc.local文件覆盖至开发板的目录里面:
   可以用
 
 的命令来检查文件是否成功修改:cat /etc/rc2.d/S99rc.local
   检查文件无误,使用
 
 命令打开文件权限,使得关机或者重启都保留这个IP地址。chmod 777 /etc/rc2.d/S99rc.local
 
 最后是SFTP权限的问题,这个反而是比较简单,直接在Linux系统下寻找sftp_server文件覆盖至开发板的/usr/libexec目录下即可:
 
   为了方便我这里直接共享这个文件出来:
 
  sftp-server.zip
(95.39 KB, 下载次数: 10) 重启之后,便可以使用FZ软件输入开发板的端口号进行SFTP访问了,有提示密钥不匹配的直接覆盖忽略:
 
     
 
 
 |