在RK3568开发板嵌入式开发中,配置NFS服务是实现与Ubuntu虚拟机之间文件共享的常用方法
安装NFS服务器端软件
在Ubuntu虚拟机上执行以下命令安装NFS服务器:
sudo apt update
sudo apt install nfs-kernel-server
创建共享目录并设置权限
创建一个共享目录并配置适当权限:
sudo mkdir -p /home/nfs
sudo chmod 777 /home/nfs
配置NFS导出选项
编辑/etc/exports文件添加共享规则:
/home/nfs *(rw,sync,no_root_squash,no_subtree_check)
对于特定网段和用户映射配置:
/home/nfs 192.168.1.0/24(rw,sync,all_squash,anonuid=1000,anongid=1000,no_subtree_check)
应用NFS配置
使配置生效并重启服务:
sudo exportfs -arv
sudo systemctl restart nfs-kernel-server
sudo systemctl enable nfs-kernel-server
配置防火墙规则
允许特定网段访问NFS服务:
sudo ufw allow from 192.168.1.0/24 to any port nfs
安装NFS客户端工具
在RK3568开发板上安装客户端:
sudo apt update
sudo apt install nfs-common
挂载NFS共享
创建挂载点并进行挂载:
sudo mkdir -p /mnt/nfs
sudo mount -t nfs -o nolock,vers=3,tcp 192.168.1.100:/home/nfs /mnt/nfs
设置开机自动挂载
编辑/etc/fstab添加自动挂载配置:
192.168.1.100:/home/nfs /mnt/nfs nfs auto,nofail,noatime,nolock,intr,tcp,vers=3,actimeo=1800 0 0
网络连通性验证
确保设备和虚拟机在同一网络:
ifconfig # 或 ip addr
ping <目标IP>
权限与配置检查
检查NFS服务器配置:
showmount -e
检查防火墙设置和服务状态:
sudo ufw status
sudo systemctl status nfs-kernel-server
