设置嵌入式Linux开发板的NFS(网络文件系统)服务,开机自动挂载NFS服务

最新博客链接

NFS简介


网络文件系统 (NFS,Network File System) 是一种将远程主机上的分区(目录)经网络挂载到本地系统的一种机制,通过对网络文件系统的支持,用户可以在本地系统上像操作本地分区一样来远程操作主机的共享分区(目录)

在嵌入式Linux 的开发过程中,开发者需要在Linux 服务器上进行所有的软件开发,交叉编译后,可以通过建立NFS,把Linux 服务器上的特定分区共享到待调试的嵌入式目标系统上,就可以直接在嵌入式目标系统上操作Linux 服务器,同时可以在线对程序进行调试和修改,大大的方便了软件的开发。因此,NFS 的是嵌入式Linux 开发的一个重要的组成部分。

嵌入式Linux 的NFS 开发环境的实现包括两个方面:一是Linux服务器端的NFS 服务器支持;二是嵌入式目标系统的NFS客户端的支持。因此,NFS 开发环境的建立需要配置linux 服务器端和嵌入式目标系统端。

开发环境


开发主机开发板
发行版本Deepin GNU/Linux 15.11Freescale i.MX Release Distro 4.1.15-2.1.0
内核版本4.15.0-304.1.15-2.1.0-00171-g7a6e9c2dea71

设置主机和开发板在同一网段(192.168.0.0/24),主机(192.168.0.1),开发板(192.168.0.2)

主机设置


1.设置主机静态IP地址

1.1. 添加有线连接

项目
IP192.168.0.1
子网掩码255.255.255.0

2. 主机开启NFS服务

2.1. 安装NFS服务

sudo apt-get install nfs-kernel-server

2.2. 查看用户ID

id

id命令
记录UID和GID

2.3. 配置NFS配置文件

添加内容到/etc/exports文件末尾

/home/tsanfer/share
192.168.0.0/24(rw,sync,all_squash,anonuid=1000,anongid=1000,no_subtree_check)
  • /home/tsanfer/share:要共享的开发主机目录
  • 192.168.0.0/24:配置谁可以访问,其中的/24 是掩码
  • rw: 表示客户机的权限,rw 表示可读写
  • sync:资料同步写入到内存与硬盘中。
  • anonuid=1000:将客户机上的用户映射成指定的本地用户 ID 的用户
  • anongid=998: 将客户机上的用户映射成属于指定的本地用户组 ID
  • no_subtree_check:不检查子目录权限,默认配置

2.4. 创建共享目录/home/tsanfer/share

2.5. 更新 exports 配置

sudo exportfs -arv
  • -a:全部 mount 或 umount 文件/etc/exports 中的内容。
  • -r:重新 mount 文件/etc/exports 中的共享内容。
  • -u:umount 目录。
  • -v:在 exportfs 的时候,将详细的信息输出到屏幕上。

更新 exports 配置

2.6. 查看 NFS 共享情况

showmount -e

查看 NFS 共享情况

开发板设置


1.开发板设置静态IP地址

1.1. 临时设置静态IP地址

ifconfig eth0 192.168.0.2

1.2. 开机自动设置静态IP地址

添加内容到/etc/init.d/rc文件末尾

ifconfig eth0 192.168.0.2

重新启动后即可生效更改

1.3. 查看IP地址

ifconfig

查看IP地址

2. 开发板挂载NFS服务

2.1. 创建挂载点目录

/home/root/share

2.2. 挂载 NFS 文件系统

2.2.1. 临时挂载

mount -o vers=4 192.168.0.1:/home/tsanfer/share /home/root/share
  • -o vers=4:表示使用 NFS 文件系统第 4 版本
  • 192.168.0.1:目标主机的 IP 地址
  • /home/tsanfer/share:远端的主机共享目录。
  • /home/root/share:本地挂载点,即要把远端共享的目录映射到本地(开发板)的哪个目录

2.2.2. 开机自动挂载

添加内容到/etc/init.d/rc文件末尾

mount -o vers=4 192.168.0.1:/home/tsanfer/share /home/root/share

重新启动后即可生效更改

测试

  • 开发板进行操作:
touch /home/root/share/test_file 

开发板查看结果
开发板查看结果

  • 主机查看结果:主机查看结果
  • 5
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: 嵌入式 Linux 开发板是一种微型计算机,它可以在物理设备中嵌入,并通过 Linux 操作系统与其他设备进行通信。这些设备通常是非常小巧,可以在各种应用场景中使用,如工业控制、家庭自动化、智能家居等。 嵌入式 Linux 开发板通常具有以下特点: 1. 小巧:它们通常很小,可以方便地安装在物理设备中。 2. 可编程:它们可以通过编程语言(如 C、Python 等)进行开发。 3. 多功能:它们可以支持多种功能,如网络通信、存储数据、显示图像等。 4. 可扩展:它们可以通过外部设备扩展功能,如接入传感器、摄像头等。 如果您对嵌入式 Linux 开发板感兴趣,可以考虑使用 Raspberry Pi、BeagleBone Black 等流行的开发板。 ### 回答2: 嵌入式Linux开发板是指搭载嵌入式Linux操作系统的开发板,通常采用ARM架构的处理器。它可以为嵌入式系统提供完整的Linux环境,包括Linux内核、文件系统以及常用的Linux工具,方便开发人员进行应用程序的开发。 嵌入式Linux开发板具有以下特点: 一、低功耗和高性能:嵌入式Linux开发板使用ARM架构的处理器,具有低功耗和高性能的特点,满足低功耗和高性能的应用需求。 二、丰富的接口和扩展性:嵌入式Linux开发板具有丰富的接口和扩展性,可通过外置扩展板或接口扩展模块满足不同应用场景下的需求。 三、可裁剪性:嵌入式Linux开发板可以根据实际需求进行裁剪,去除不必要的组件和功能,从而减少系统资源的占用,提高系统运行效率。 四、稳定可靠:由于使用Linux操作系统,嵌入式Linux开发板具有非常稳定可靠的特点,可保证系统长时间稳定运行。 嵌入式Linux开发板广泛应用于智能家居、智能医疗、智慧交通、物联 网等领域,成为嵌入式系统开发的主流选择。但是,嵌入式Linux开发板也具有一定的开发门槛,需要开发人员掌握一定的Linux操作系统和嵌入式系统开发经验,才能更好地发挥其功能和优势。 ### 回答3: 嵌入式Linux开发板是一种集成了Linux操作系统和硬件平台的开发板。这种开发板通常是由嵌入式系统厂商或者开发者自行设计的,其主要用途是针对特定的应用场景进行开发和调试,比如智能家居、工业控制、医疗设备等。嵌入式Linux开发板具有以下特点: 1. 硬件平台:嵌入式Linux开发板通常是采用一款微处理器为核心,搭配一些外设如存储器、网络、输入输出接口等组成的系统。硬件平台的选择通常需要根据应用场景的需求、想要实现的功能以及成本等因素进行权衡。 2. Linux系统:嵌入式Linux开发板搭载的是简化版本的Linux操作系统,由于资源受限,会使用一些轻量级的系统,如busybox等。这些系统通常会定制化,去掉一些不必要的部分,从而减小系统运行所需的资源开销,并且加快系统启动、响应等速度。 3. 开发环境:嵌入式Linux开发板的开发环境也是非常重要的一部分。通常有两种方式,一种是通过交叉编译的方式,在主机上编译运行嵌入式系统程序;另一种是通过板载编译方式,直接在开发板上编译运行程序。一般来说,板载编译的方式速度较慢,但对于嵌入式开发板的测试和调试非常方便。 总之,嵌入式Linux开发板嵌入式系统开发的一种重要方式,通过这种方式可以快速构建出自己所需的某种特定应用系统。当然,开发过程中也要考虑到硬件和系统控制等相关方面的问题,以使用更加安全稳定的系统运行设备。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值