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  



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

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

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 面试题jmeter怎么做性能测试_web测试面试题

    面试题jmeter怎么做性能测试_web测试面试题面试中遇到的问题:1.如何使用Jmeter进行并发测试2.如何设置并发量为10003.如果http请求每个都不一样,如何配置4.如何设置sessionID一、安装配置1.在Terminal中输入命令:ruby-e”$(curl-fsSLhttps://raw.githubusercontent.com/Homebrew/install/master/…

    2022年9月30日
    3
  • 联想笔记本电脑键盘亮了屏幕不亮_联想电脑键盘灯亮屏幕黑屏

    联想笔记本电脑键盘亮了屏幕不亮_联想电脑键盘灯亮屏幕黑屏联想笔记本电脑一直是笔记本电脑行业里的大品牌,非常的受人们欢迎。但是它在使用时也会遇到很多问题,例如联想笔记本电脑开机键亮但是黑屏怎么办?联想笔记本电脑键盘失灵怎么办?所以在联想笔记本选购之前需要了解清楚需要故障时怎么解决。一、联想笔记本电脑开机键亮但是黑屏1、若遇到联想笔记本电脑开机键亮但是黑屏的情况,可以拆卸掉笔记本背面的电池,只用电源适配器连接电脑,尝试开机一次,如果开机正常,就是电池接触不…

    2022年9月20日
    2
  • 汇编学习 step by step[通俗易懂]

    汇编学习 step by step[通俗易懂]转自:http://hi.baidu.com/hkbyest16位汇编对于一个汇编初学者,首先必看的就是王爽老师的这本《汇编语言》,虽然它不是很完整,虽然它有一些错漏,虽然它需要一些前置知识(详见书籍前言部分,前言一定要仔细看!),但是王爽老师独特的教学理念构造了这本循序渐进的书,我们从中可以抛开对汇编语言的畏惧心态,一步一步的深入进去,更可喜的是在这本书里我们可以学到宝贵的底层编程意识和

    2022年10月13日
    1
  • django使用celery_Django unchained

    django使用celery_Django unchained前言环境celery==5.0.2在安装完celery后,运行celery会报以下错误ModuleNotFoundError:Nomodulenamed'click._bashc

    2022年8月7日
    6
  • saga分布式事务_本地事务和分布式事务

    saga分布式事务_本地事务和分布式事务在分布式系统中一次操作需要由多个服务协同完成,这种由不同的服务之间通过网络协同完成的事务称为分布式事务。本文详解介绍七种常见分布式事务的原理以及优缺点和适用场景(2PC、3PC、TCC、Saga、本地事务表、MQ事务消息、最大努力通知)

    2022年9月13日
    2
  • tqdm模块[通俗易懂]

    tqdm模块[通俗易懂]tqdm是Python进度条库。tqdm库下面有2个类我们经常使用:1.2.可以在Python长循环中添加一个进度提示信息用法:tqdm(iterator)trange(i)是

    2022年8月6日
    7

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

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