阡陌 发表于 2024-2-16 11:57:44

ARM 开发板使用 NFS 挂载 Ubuntu 文件夹


采用 NFS 实现远程挂载,ARM 开发板可以直接运行主机上的程序,而不需要下载到开发板上。

1、查看开发板 Linux 内核是否支持 NFS

执行 `cat /proc/filesystems`, 若有一行为 `nodev   nfs` 则开发板 Linux 内核支持 NFS,反之需要配置内核;也可以使用动态模块的形式编译。



2、主机安装 nfs 服务

```
sudo apt-get install nfs-kernel-server
```

配置 nfs 输出目录:

```
vim /etc/exports

在该文件中添加一行:
/home/user *(rw,sync,no_root_squash)# 根据实际情况修改 /home/user 为想要的路径就行了
```

1. \* 表示任意 IP 地址的主机,如果是 192.168.1.100,就表示只允许 192.168.1.100 挂载。

2. rw: 可擦写的权限 ,ro: 只读的权限。

3. sync: 资料同步写入到内存与硬盘当中 ;async: 资料会先暂存于内存当中,而非直接写入硬盘。

4. no_root_squash:登入 NFS 主机使用分享目录的使用者,如果是 root 的话,那么对于这个分享的目录来说,他就具有 root 的权限!root_squash:在登入 NFS 主机使用分享之目录的使用者如果是 root 时,那么这个使用者的权限将被压缩成为匿名使用者,通常他的 UID 与 GID 都会变成 nobody 那个系统账号的身份。

主机启动NFS服务:

```
sudo service nfs start
或者
sudo service nfs-kernel-server restart
```



3、在开发板上挂载主机上的文件夹

```
mkdir /mnt/nfs
mount -t nfs -o nolock 172.16.9.93:/home/matt /mnt/nfs
```

172.16.9.93 是主机 IP,/home/user/test 是主机共享目录,/mnt 表示将该共享目录挂载到 ARM 开发板 /mnt 目录下。

错误:

> mount: wrong fs type, bad option, bad superblock on...

解决方法:

```
sudo apt-get install nfs-common
```


页: [1]
查看完整版本: ARM 开发板使用 NFS 挂载 Ubuntu 文件夹