bootargs环境变量解析

bootargs保存着uboot传递给Linux内核的参数,

1、根文件系统本地存取

console=ttymxc0,115200 root=/dev/mmcblk1p2 rootwait rw

1.1 console:用来设置Linux终端(控制台)

ttymxc0,表示串口;115200,设置波特率

1.2 root:设置根文件系统的位置

mmcblk1p2,表示mmc设备1的分区2
rootwait,表示等待mmc设备初始化完成后再挂载
rw,表示根文件系统是可读可写的,缺省代表只读

2、将根文件系统通过NFS挂载

root=/dev/nfs nfsroot=[<server-ip>:]<root-dir>[,<nfs-options>] ip=<client-ip>:<server-ip>:<gwip>:<netmask>:<hostname>:<device>:<autoconf>:<dns0-ip>:<dns1-ip>

<server-ip>:服务器 IP 地址,也就是存放根文件系统主机的 IP 地址,那就是 Ubuntu 的 IP地址,比如我的 Ubuntu 主机 IP 地址为 192.168.1.250。
<root-dir>: 根文件系统的存放路径,比如我的就是/home/mk-linux/nfs/rootfs。
<nfs-options>: NFS 的其他可选选项,一般不设置。
<client-ip>: 客户端 IP 地址,也就是我们开发板的 IP 地址, Linux 内核启动以后就会使用 此 IP 地址来配置开发板。
<server-ip>: 服务器 IP 地址。
<gw-ip>: 网关地址,比如 192.168.1.1。
<netmask>:子网掩码, 255.255.255.0。
<hostname>:客户机的名字,一般不设置,此值可以空着。
<device>: 设备名,也就是网卡名,一般是 eth0, eth1….,正点原子的 I.MX6U-ALPHA 开 发板的 ENET2 为 eth0, ENET1 为 eth1。如果你的电脑只有一个网卡,那么基本只能是 eth0。 这里我们使用 ENET2,所以网卡名就是 eth0。
<autoconf>: 自动配置,一般不使用,所以设置为 off。
<dns0-ip>: DNS0 服务器 IP 地址,不使用。
<dns1-ip>: DNS1 服务器 IP 地址,不使用。
根据上面的格式 bootargs 环境变量的 root 值如下:

root=/dev/nfs rw nfsroot=192.168.1.250:/home/zuozhongkai/linux/nfs/rootfs ip=192.168.1.251: 192.168.1.250:192.168.1.1:255.255.255.0::eth0:off
原文地址:https://www.cnblogs.com/Mike2019/p/12890930.html