1、通过NFS(网络文件系统),实现PC上Ubuntu(虚拟机)与3B板的文件传输。
(1)在Ubuntu上安装NFS服务:
sudo apt-get install nfs-kernel-server
(2)修改/etc/exports,添加类似以下的内容,下面的例子里允许开发板通过 NFS访问 Ubuntu 的/home/sun、 /work 两个目录:
/home/sun *(rw,nohide,insecure,no_subtree_check,async,no_root_squash)
/work *(rw,nohide,insecure,no_subtree_check,async,no_root_squash)
(3)重启 NFS 服务:
sudo /etc/init.d/nfs-kernel-server restart
(4)在开发板上挂载 Ubuntu 的 NFS 文件系统。假设 Ubuntu 的 IP 为: 192.168.1.9,在开发板上可以执行下面的命令挂载 Ubuntu 的/home/sun 目录到开发板的/mnt/nfs 目录(如果不成功,把 vers=2 改为 vers=3 或 vers=4):
mount -t nfs -o nolock,vers=2 192.168.1.9:/home/sun /mnt/nfs
2、在 Windows 和 Ubuntu(虚拟机) 之间传文件
可以用PC端的FileZilla软件,实现与Ubuntu(虚拟机) 之间传文件,填入Ubuntu的IP、用户名、端口号即可。
3、通过SSH,实现PC上Ubuntu(虚拟机)与3B板的文件传输。
(1)Ubuntu上安装openssh;
(2)开发板连上网线,开发板网络与虚拟机网络需要在同一网络下, 分别通过路由器接入;
(3)假设3B板的IP为192.168.1.5,在Ubuntu上传输文件至3B板,在Ubuntu上执行以下命令:
scp testssh root@192.168.1.5:/
# testssh为待传输的文件名
(4)在3B板上传输文件至Ubuntu,在Ubuntu上执行以下命令:
scp root@192.168.1.5:/testssh2 /home
# testssh2为3B板上待传输的文件
(5)使用 OpenSSH 网络登录到开发板文件系统,执行如下命令:
ssh root@192.168.1.5