了解更全面的学习嵌入式Linux的方法,可以看我之前写的文章:
如何学习嵌入式Linux:
https://blog.csdn.net/thisway_diy/article/details/106101091
开发板和 Ubuntu 之间网络互通之后,就可以在两者之间传输文件了。
开发板通过 NFS 挂载 Ubuntu 的目录
开发板上不一定安装有 FTP 服务、SSH 等服务,所以不一定能使用 FTP 等工具登录开发板。
但是开发板的系统一般都自带 mount 命令,并且支持 NFS 文件系统。所以可以在开发板上执行 mount 命
令挂载 Ubuntu 的某个目录。这样就可以在开发板和 Ubuntu 之间传文件了。
开发板使用 NFS 挂载 Ubuntu 的前提是:Ubuntu 中已经安装了 NFS 服务,并且在/etc/exports 中配置了某个目录供挂载。
在 Ubuntu 上安装、配置 NFS 服务
如果你使用的是我们提供的 Ubuntu,那么已经安装好了 NFS 服务。
如果你的 Ubuntu 未安装 NFS 服务,那么在确保 Ubuntu 可以上网的前提下,执行以下命令:
代码语言:javascript复制sudo apt-get install nfs-kernel-server
然后,还得修改/etc/exports,添加类似以下的内容,下面的例子里允许开发板通过 NFS 访问 Ubuntu的/home/book 目录:
代码语言:javascript复制/home/book *(rw,nohide,insecure,no_subtree_check,async,no_root_squash)
最后,重启 NFS 服务,在 Ubuntu 上执行以下命令:
代码语言:javascript复制sudo /etc/init.d/nfs-kernel-server restart
可以在 Ubuntu 上通过 NFS 挂载自己,验证一下 NFS 可用:
代码语言:javascript复制sudo mount -t nfs -o nolock,vers=3 127.0.0.1:/home/book /mnt
ls /mnt
在开发板上挂载 Ubuntu 的 NFS 文件系统
确保开发板可以 ping 通 Ubuntu 后,就可以通过 NFS 挂载 Ubuntu 中的某个目录。
哪些目录呢?请查看 Ubutnu 的/etc/exports 文件。
假设 Ubuntu 的 IP 为:192.168.1.100,在开发板上可以执行下面的命令挂载 Ubuntu 的/home/book 目录到开发板的/mnt 目录:
代码语言:javascript复制mount -t nfs -o nolock,vers=2 192.168.1.100:/home/book /mnt
代码语言:javascript复制// 如果不成功,就把 vers=2 改为 vers=3 或 vers=4
mount -t nfs -o nolock,vers=3 192.168.1.100:/home/book /mnt
如果一切正常,你可以在 Ubuntu 上把文件放到/home/book 目录中,在开发板上可以从/mnt 目录中访问该文件。