当前位置: 首页 > news >正文

开发板Linux系统挂载nfs文件系统

一、概述

      开发板Linux系统挂载nfs文件系统,可以让我们做以下事情:

            1. 通过挂载Ubuntu上的目录,不用传输Ubuntu上交叉编译好的程序,直接在开发板上运行;

            2. 开发板Linux系统从nfs文件系统启动,不用烧写Flash就能测试“所制作的Linux根文件系统”是否有缺陷。

      下面就来实现开发板Linux系统挂载nfs文件系统。

      测试环境: Ubuntu12.04 + TQ2440开发板

二、开发板Linux系统挂载Ubuntu的nfs文件系统

1、Ubuntu安装nfs服务器

#sudo apt-get install nfs-kernel-server

2、构建nfs待共享的目录

      例如我这里共享的root_nfs目录,并把需要共享的文件放到这个目录里。我这里把开发板Linux系统的根文件系统放到这个目录。

#cd /opt/EmbedSky/
#mkdir root_nfs

3、修改nfs服务器配置文件

      /etc/exports是nfs服务器的配置文件,描述共享的目录权限

#sudo vi /etc/exports

      插入内容:

/opt/EmbedSky/root_nfs *(rw,sync,no_root_squash)

     -/opt/EmbedSky/root_nfs             nfs服务器共享的目录

     -“*”                                              所有的客户机都可以挂载此目录
     -“rw”                                            表示挂载此目录的客户机对该目录有读写的权限
     -“no_root_squash”                      允许挂载此目录的客户机享有该主机的root身份

4、Ubuntu启动nfs服务器服务

#sudo /etc/init.d/nfs-kernel-server start

      如果不启动nfs服务,即使开发板的客户端连接,也挂载不成功。

5、在Ubuntu下测试nfs服务是否成功

#cd /opt/EmbedSky
#mkdir test_nfs
#mount -t nfs 172.20.16.17:/opt/EmbedSky/root_nfs  /opt/EmbedSky/test_nfs

      我在/opt/EmbedSky目录下建立了一个目录test_nfs,把共享的目录root_nfs挂载到这个目录。

      172.20.16.17是我虚拟机Ubuntu设置的IP地址。

       测试结果可以看到在test_nfs目录下出现了root_nfs目录下内容。

6、开发板Linux系统挂载nfs文件系统      

#mount -t nfs 172.20.16.17:/opt/EmbedSky/root_nfs  /mnt -o nolock

      再做此步骤之前,需要确保开发板Linux系统与虚拟机Ubuntu系统IP(172.20.16.17)在同一网段,我的开发板Linux系统IP设置为“172.20.16.16”。

      通过以上操作,就可以看到在开发板Linux系统的/mnt目录下出现了虚拟机Ubuntu系统共享的/opt/EmbedSky/root_nfs目录下内容。

三、开发板Linux系统从nfs文件系统启动

      需要说明的是开发板Linux系统从nfs文件系统启动,指的仅仅只是“根文件系统部分”启动过程,开发板Linux系统的u-boot和Linux内核部分都是从Flash启动的。

1、在Ubuntu下构建共享的nfs根文件系统

image

2、确保Ubuntu启动nfs服务器服务

3、在u-boot命令模式下修改启动参数

image

4、保存参数到Flash

5、重新启动Linux系统

     可以看到已经成功挂载NFS文件系统

image

 

  参考资料:

                   Ubuntu启动nfs方法

                   《天嵌科技出品-Linux移植之Step By Step_V4.5_20100605》

 
http://www.jsqmd.com/news/135565/

相关文章:

  • LLM Weekly(2025.12.15-12.21)
  • 基于ARMCortex-M4F内核的MSP432MCU开发实践【2.6】
  • 基于SpringBoot+Vue的企业固定资产管理系统设计与实现
  • 验证回文串,x的平方根(左右指针)
  • ant design pro不安装第三方库,如何实现多标签页面(带源码)
  • 实用指南:Java Spring Boot结合Elasticsearch高性能搜索服务设计与实战经验分享:广州电商商品智能搜索落地
  • 【课程设计/毕业设计】基于SpringBoot的救援指挥系统基于springboot的户外救援系统【附源码、数据库、万字文档】
  • 基于Springboot+Vue的社区老年医疗服务系统设计与实现
  • 《深度学习》CUDA安装配置、pytorch库、torchvision库、torchaudio库安装
  • WiseAgent智能体框架实战之CrewAI篇(四) - 优化智能体的问答能力与记忆系统
  • 建议收藏!2025最新论文降AI率保姆级攻略,学生党必看。
  • Hadoop - 资源调度器YARN和计算引擎MapReduce/Tez/Spark之间是什么关系?
  • 【计算机毕业设计案例】基于Springboot+Vue党员教育和管理系统基于springboot的高校党员信息管理系统(程序+文档+讲解+定制)
  • 基于深度学习的蘑菇种类识别系统的设计与实现(源代码+文档+PPT+调试+讲解)
  • Anthropic 开源 Bloom:基于 LLM 的自动化行为评估框架
  • 超越RLVR陷阱:从设计“奖励契约”到构建“AI宪法”的架构思想
  • Linux:awk升级到5.0.3最新版本(源码编译升级方式)
  • 基于深度学习的淘宝用户购物可视化与行为预测系统设计(源代码+文档+PPT+调试+讲解)
  • 2025最新!10个AI论文网站测评:本科生写论文救星大公开
  • ModelEngine AI Agent通过Nexent 是一个开源智能体SDK和平台打造全能搜索助手
  • 计算机Java毕设实战-基于springBool+Vue小吃美食分享平台的设计与实现【完整源码+LW+部署说明+演示视频,全bao一条龙等】
  • 长亭推出工程级AI开发平台MonkeyCode,开启AI工程级开发新模式
  • 【计算机毕业设计案例】vue和springboot框架开发的户外救援系统基于springboot的户外救援系统(程序+文档+讲解+定制)
  • 基于深度学习的图书推荐系统(源代码+文档+PPT+调试+讲解)
  • 6-10 WPS JS宏 映射应用
  • 完整教程:学算法总换设备?Hello-Algo+cpolar 让学习进度随身带
  • 敏捷咨询:从落地到深耕的全流程赋能之路
  • XML DOM
  • 基于SpringBoot的社区诊所在线挂号与排队应用系统毕业设计项目源码
  • Redis 集群模式Redis Cluster