我正在使用 imx6 设备,我需要大小超过 imx 的空内存的库。我在我的桌面上创建了一个 nfs 服务器 (/var/nfs/usr),我想让 imx 设备不使用它自己的 /usr 文件,而是在我的桌面上使用 nfs 服务器的 /usr 文件。然后,我为需要在我的 Imx 设备上运行的必要库提供了巨大的内存。
可能吗?如果是,请指导我。
PS:请用更好的英语编辑我的问题。
根据我的知识,如果您要使用 NFS,则必须将整个根文件系统放在 NFS 上。或者,您可以将您的库放入 SD 卡并从那里加载。另一种选择是将整个根文件系统从设备闪存移动到 SD。所有这些启动方法都在 iMX6 Linux 用户指南中进行了描述。
您要做的是设置 TFTP/NFS 引导。
将您的 rootfs 提取到主机上的某个位置
sudo tar -xvf /dir/of/rootfs.tar.bz2 ~/nfs-rootfs
nfs-kernel-server
通过 systemd (systemctl)安装和启用:
sudo apt-get install nfs-kernel-server
systemctl enable nfs-kernel-server
systemctl start nfs-kernel-server
编辑您的/etc/exports
文件(使用您喜欢的编辑器):
sudo vi /etc/exports
将以下行添加到文件/home/user/nfs-rootfs *(rw,no_root_squash,async)
中,退出并保存文件。
更新对导出文件所做更改的 nfs-server:
sudo exportfs -a
安装 TFTP 服务器,启用并启动:
sudo apt-get install tftpd-hpa
systemctl enable tftpd-hpa
systemctl start tftpd-hpa
查看或修改 TFTP 服务器在/etc/default/tftpd-hpa
. 它看起来应该是这样的:
# /etc/default/tftpd-hpa
TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/home/user/tftpboot"
TFTP_ADDRESS=":69"
TFTP_OPTIONS="--secure"
根据需要修改防火墙设置以启用主机和 imx6 设备之间的连接。
将设备树 (.dtb) 和引导加载程序(uImage 或 zImage)放入 TFTP 文件夹。
确保您有串行连接到您的 imx6 设备。对您的引导加载程序环境进行修改,以便您的设备能够进行网络引导。
可以在此处找到 TFTP/NFS 引导指南:http ://www.variwiki.com/index.php?title=Yocto_Setup_TFTP/NFS