在ubuntu上执行下列操作:
sudo apt-get install nfs-kernel-server
sudo apt-get install portmap
可能会报:
selecting 'rpcbind' instead of 'portmap'
这个没问题,rpcbind也可以,并且rpcbind默认安装后就启动了,后面不用再启动了。
sudo vi /etc/exports
最后一行写入:
/home/deviser/share *(rw,sync,no_root_squash)
sudo exportfs -arv
*:允许所有的网段访问,也可以使用具体的IP
rw:挂载此目录的客户端对该共享目录具有可读可写权限
sync:资料同步写入内存和硬盘
no_root_squash:root用户具有对根目录的完全管理访问权限
no_subtree_check:不检查父目录的权限
sudo service nfs-kernel-server restart
或
sudo /etc/init.d/nfs-kernel-server restart
查看状态:
systemctl status nfs-server.service
//查看是否挂载成功
showmount -e
在arm上执行下列操作:
mount -t nfs -o nolock 192.168.100.219:/home/deviser/share /home/root/
值得注意的是挂在期间,/home/root内原来的文件都不存在,存在的文件是/home/deviser/share/中的内容,此时在任意一侧创建文件,在另一侧均能显示。
挂载后可以用命令查看挂载情况:
df -h
如果想要取消挂载,在arm上执行:
umount /home/root/
原来的文档也会恢复。
mount -t nfs -o nolock 192.168.100.219:/home/deviser/rootfs /home/root/
在编译一个驱动之前应该执行1_2-8,也就是
make mrproper
make 100ask_imx6ull_defconfig
make zImage
make dtbs
make modules
编译后前两个拷贝到开发版的/boot/下
第三个放到/lib/下,然后重启板子。
在编译一个驱动时,这个驱动基于内核源码目录编译,那么这个内核必须是编译过的。
驱动程序有两种处理,静态方式是之间编进内核,这样需要改动时还得重新编译内核。
动态方式是基于编译好的内核源码编译,然后用把.ko文件拷到板子上任意路径,然后modprobe xxx.ko