Ubuntu(20.04) nfs挂载步骤

客户端 与服务端的区别:一般指带显示ubnutu系统(假设你的ros小车主机不带显示,需要另一个设备把它的文件给挂载上来,以便查找文件。这时你的ros小车主机就是服务端,你的ubuntu笔记本就是客户端)

第一次使用需要下载相关的功能包,这里的步骤就是第一次使用情况下进行的操作:

服务端操作

1、安装 NFS 服务端:sudo apt-get install nfs-kernel-server

2、添加 NFS 共享目录(要挂载的文件夹):sudo vim /etc/exports

2.1在文末添加以下指令后保存退出,这个指令前面是要挂载的文件路径,*表示允许任何网段 IP 的系统访问该 NFS 目录。(一般全部挂载的话,可以把/home/wheeltec/wheeltec_rebot替换为/home/用户名    即可)

/home/wheeltec/wheeltec_rebot *(rw,sync,no_root_squash)

3、给挂载的目录设置权限以及修改文件用户:

sudo chmod -R 777 /home/wheeltec/wheeltec_robot

因为“wheeltec_robot”文件夹有子文件夹,在命令中添加“-R”是说明命令的作用域包括该文件夹和其包括的全部子文件夹。

4、启动 NFS:
第一次开启 NFS 时,需要先启动 NFS 再重启 NFS。

sudo /etc/init.d/nfs-kernel-server start        //启动 NFS 服务

sudo /etc/init.d/nfs-kernel-server restart     //重启 NFS 服务

接下来检查服务端有没有配置、开启成功:

出现  Restarting nfs-kernel-server (via systemctl): nfs-kernel-server.service. 即开启成功。

5、挂载 NFS:

注意:已经挂载成功之后,如果更换了被挂载的文件夹,则

①需要执行sudo vim /etc/exports  重新修改路径

②然后卸载原有挂载点sudo umount /mnt 

③重新执行挂载sudo mount -t nfs -o nolock 192.168.0.100:/home/wheeltec /mnt)
将本地的/home/wheeltec/wheeltec_robot 路径挂载到本地/mnt 路径下,
“192.168.0.100”是服务端的 IP 地址。

sudo mount -t nfs -o nolock 192.168.0.100:/home/wheeltec/wheeltec_robot /mnt

挂载完成后可通过  df -h  查看是否挂载成功

看最后一行  表示成功。

NFS 客户端配置

        挂载是在客户端实现的,因为客户端无法直接查看小车工作空间中的文件,需要通过 NFS 把服务端的文件挂载到客户端后,客户端才可以查看和编辑服务端的文件。NFS 客户端只需要安装即可自动配置完成。
1、安装 NFS 客户端:sudo apt-get install nfs-common

2、NFS 挂载使用:sudo mount -t nfs 192.168.0.100:/home/wheeltec/wheeltec_robot /mnt

全部设置成功后,点击客户端的  文件--->其他位置--->选择计算机进入系统根目录,找到mnt

-------------------------------------------------------------------------------------------------------------------

                                                                                                             参考轮趣科技文档

### Ubuntu 20.04 挂载失败解决方案 在处理 Ubuntu 20.04 自动挂载 NFS 失败的问题时,可以从以下几个方面入手分析并解决问题: #### 1. **检查网络服务状态** 确保 `network.target` 已经启动并且网络连接正常。可以通过以下命令验证网络服务的状态: ```bash systemctl status network.target ``` 如果发现网络未完全初始化,则可能需要调整 `[Unit]` 的依赖项顺序[^4]。 #### 2. **修改挂载配置文件** 当前的挂载脚本可能存在参数不匹配的情况。尝试优化 `/etc/systemd/system/nfs.mount` 文件中的内容,例如增加超时选项或更改挂载方式。以下是改进后的示例配置: ```ini [Unit] Description=NFS Mount Service After=network-online.target remote-fs-pre.target Wants=network-online.target [Service] Type=oneshot RemainAfterExit=true ExecStartPre=-/bin/rm -f /etc/share_dir/.nfs.lock ExecStart=/usr/bin/mount.nfs -o rw,hard,intr,rsize=8192,wsize=8192,timeo=600,retrans=2,proto=tcp,nolock,noatime 10.21.132.32:/NAS/CAPFS/data /etc/share_dir ExecStop=/bin/umount -l /etc/share_dir Restart=on-failure RestartSec=10 [Install] WantedBy=multi-user.target ``` 上述配置增加了更详细的挂载选项以及错误重试机制,有助于提高挂载的成功率。 #### 3. **确认服务器端共享目录权限** 有时挂载失败的原因在于远程 NFS 服务器上的共享目录权限不足或者防火墙阻止了访问请求。可以在服务器上运行以下命令来测试导出路径是否可用: ```bash showmount -e 10.21.132.32 ``` 同时检查是否有针对客户端 IP 地址的相关限制规则存在于 `/etc/exports` 文件中。 #### 4. **启用调试日志功能** 为了进一步定位问题所在位置,开启 systemd 日志记录可以帮助收集更多诊断信息。编辑 `/etc/systemd/journald.conf` 并设置合适的存储级别后重启 journald 服务即可实现此目的: ```bash sudo nano /etc/systemd/journald.conf # 修改 Storage 和 MaxLevelStore 参数至持久化模式及较低等级 Storage=persistent MaxLevelStore=debug sudo systemctl restart systemd-journald.service ``` 完成以上步骤之后再次尝试重新加载单元和服务以查看效果变化情况。 ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值