nfs方式启动rootfs配置过程[通俗易懂]

nfs方式启动rootfs配置过程[通俗易懂]这里使用nfs主要是做rootfs挂载。开发板中运行kernel做nfs客户端,宿主机中运行nfs服务。在宿主机的nfs服务器中导出文件夹形式的rootfs目录,在客户端中去挂载这个文件夹形式的rootfs进而去启动系统。

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用


前提:宿主机配置好了nfs服务

这里使用nfs主要是做rootfs挂载。开发板中运行kernel做nfs客户端,宿主机中运行nfs服务。在宿主机的nfs服务器中导出文件夹形式的rootfs目录,在客户端中去挂载这个文件夹形式的rootfs进而去启动系统。


步骤1:设置nfs启动方式的bootargs

在uboot命令行修改bootargs的参数:setenv bootargs root=/dev/nfs nfsroot=192.168.1.141:/work/rootfs/rootfs ip=192.168.1.10:192.168.1.141:192.168.1.1:255.255.255.0::eth0:off  init=/linuxrc console=ttySAC2,115200 

其中:

root=/dev/nfs并非真的设备,而是一个告诉内核要通过网络取得根文件系统。

nfsroot=<server-ip>:<root-dir>

    参数nfsroot这个参数告诉内核以哪一台机器的哪个目录以及哪个网络文件系统选项作为根文件系统使用。
    <server-ip>  指定网络文件系统服务端的IP地址。如果没有指定定,则使用nfsaddrs变量指定的值。 
    <root-dir>    服务端上要作为根文件系统要挂载的目录名称。


nfsaddrs=<my-ip>:<serv-ip>:<gw-ip>:<netmask>:<name>:<dev>:<auto>

    参数nfsaddrs设定网络通讯所需的各种网络接口地址。
    如果没有给定这个参数,则内核核会试着使用反向地址解析协议或是启动协议(BOOTP)以找出这些参数。
    <my-ip>      客户端的IP地址。 
    <serv-ip>    网络文件系统服务端的IP地址。
    <gw-ip>      网关(gateway)的IP地址。
    <netmask> 本地网络的网络掩码。如果为空白,则掩码由客户端的IP地址导出。
    <name>      客户端的名称。如果空白,则使用客户端IP地址的ASCII标记值。 
    <dev>         要使用的网络设备名称。如果你只有一个设备,那么你可以不管它。 
    <auto>        用以作为自动配置的方法。

init=/linuxrc 指定初始化文件

console=ttySAC2,115200 控制台选择


步骤2:设置内核支持nfs启动rootfs

在menuconfig中配置以下选项:

1、配置网络部分,主要是使能CONFIG_IP_PNP以在2中能够看到Root file system on NFS选项
Networking support 
Networking options 
[*]TCP/IP networking
[*]IP: kernel level autoconfiguration
[*] IP: DHCP support
[*] IP: BOOTP support

2、配置开启nfs服务
File systems  —>
Network File Systems  —>
<*> NFS client support 
[*] NFS client support for NFS version 3                                  
[*] NFS client support for the NFSv3 ACL protocol extension 
[*] NFS client support for NFS version 4 (EXPERIMENTAL) 
[*] NFS client support for NFSv4.1 (DEVELOPER ONLY) 
[*] Root file system on NFS  



版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/188947.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 如何删除LDSGameMaster

    如何删除LDSGameMaster如何删除LDSGameMaster背景介绍方法一方法二背景介绍最近不小心下载安装了鲁大师,卸载之后,C盘中仍有一个名为LDSGameMaster的文件夹。虽然很小,之后18M,但是一定要删除掉,否则心里很不舒服。方法一百度告诉我,解决这个问题很简单。这个文件夹中有个uninstall,运行之后就没有了。但我没有发现我的文件夹中有这么一个东西。这个方法不提。方法二删除之后,提示:操作无法…

  • vmware虚拟机安装ubuntu16.04安装教程(怎样安装ubuntu安装教程)

    前言为什么要安装ubuntu16.04版本了,因为这个版本比较稳定,而且运行也是很不错的,如果有小伙伴想要搭建一个渗透的环境,或者一个pwn的环境,ubuntu是值得一选的。VMware安装ubuntu比较简单,但是为了防止多点一个,或者少点一个选项导致在之后的使用中出错,这里就写一遍关于ubuntu的安装。环境准备物理机:windows10家庭版VMware:VMware®…

  • python的lambda表达式详细讲解

    python的lambda表达式详细讲解前言:Lambda表达式是一个匿名函数,Lambda表达式基于数学中的λ演算得名,直接对应于其中的lambda抽象,是一个匿名函数,即没有函数名的函数。Lambda表达式可以表示闭包。缺点:只有一个运算式,不适用于复杂的计算。不够直观,难于理解,增加了维护成本python的lambda可以和java中的stream流一样,可以将lambda函数作为参数传递给其他函数比如说结合map、filter、sorted、reduce等一些Python内置函数使用接下来我们用代码来演示一下lambda(1)简单用法

    2022年10月17日
  • laravel5 数据库配置(MySQL)

    laravel5 数据库配置(MySQL)

  • siamfc-pytorch代码讲解(二):train&siamfc「建议收藏」

    siamfc-pytorch代码讲解(二):train&siamfc「建议收藏」siamfc-pytorch代码讲解(二):train&siamfc一、train.py二、siamfc.py2.1SiamFCTransforms2.2Pair2.3train_step下一篇这是第二篇的siamfc-pytorch代码讲解,主要顺着程序流讲解代码,上一篇讲解在这里:siamfc-pytorch代码讲解(一):backbone&headshowme…

  • 大数据处理的基本流程是什么?[通俗易懂]

    写在前面本文隶属于专栏《100个问题搞定大数据理论体系》,该专栏为笔者原创,引用请注明来源,不足和错误之处请在评论区帮忙指出,谢谢!本专栏目录结构和文献引用请见100个问题搞定大数据理论体系解答大数据处理流程主要分为3步:1.数据抽取和集成2.数据分析3.数据解释补充1.数据抽取与集成由于大数据处理的数据来源类型丰富,利用多个数据库来接收来自客户端的数据,包括企业内部数据库、互联网数据和物联网数据,所以需要从数据中提取关系和实体,经过关联和聚合等操作,按照统一定义的格式对数据

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号