开发板无法通过nfs启动根文件系统

LAMP,LNMP、Wsgi、RoR 各类环境搭建。邮件、FTP、DNS、Proxy、威匹恩、Samba、LDAP 、防火墙基础配置

开发板无法通过nfs启动根文件系统

#1  liangziOM » 周一 2月 6日, 2017年 5:06 pm

折腾了一个下午 也问了韦老大 他让我贴一个全的 bootages 内核打印出来的配置信息
因为系统的 minicom 无法显示完整的信息 所以.....
然后我网上搜了一下 看到的大概意思就是 nfs 配置的问题了 (韦老大已经确认内核支持 root 启动 nfs 了)
另外:开发板正常启动的话 可也通过 nfs 挂载到 pc 机上的 一切正常
不过 在 OpenJTAG 模式下启动就不行了
nfs 已经设置为随系统启动
nfs 配置:
代码: 全选
/var/nfs_share  *(rw,sync,no_root_squash,no_subtree_check)
/home/xuan/NFS-Share    *(rw,sync,root_squash,subtree_check)

nfs-yast2.png


具体过程:
启动到 OpenJTAG> 然后设置 bootargs 为
代码: 全选
set bootargs noinitrd root=/dev/nfs nfsroot=192.168.0.124:/home/xuan/NFS-Share/root/fs_qtopia.yaffs2 ip=192.168.0.110:192.168.0.124:192.168.0.1:255.255.255.0::eth0:off init=/linuxrc console=ttySAC0,115200

然后
代码: 全选
save
reset

启动失败 提示信息为
代码: 全选
LSA device list:
  No soundcards found.
TCP cubic registered
NET: Registered protocol family 1
drivers/rtc/hctosys.c: unable to open rtc device (rtc0)
IP-Config: Complete:
      device=eth0, addr=192.168.0.110, mask=255.255.255.0, gw=192.168.0.1,
     host=192.168.0.110, domain=, nis-domain=(none),
     bootserver=192.168.0.124, rootserver=192.168.0.124, rootpath=
Looking up port of RPC 100003/2 on 192.168.0.124
Looking up port of RPC 100005/1 on 192.168.0.124
VFS: Unable to mount root fs via NFS, trying floppy.
VFS: Cannot open root device "nfs" or unknown-block(2,0)
Please append a correct "root=" boot option; here are the available partitions:
1f00        256 mtdblock0 (driver?)
1f01        128 mtdblock1 (driver?)
1f02       2048 mtdblock2 (driver?)
1f03     259712 mtdblock3 (driver?)
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(2,0)


这个系统的 nfs 怎么配置才能让机器在 OpenJTAG> 模式下通过 nfs 启动 pc 上的文件系统呢

=======================================
最后由 liangziOM 编辑于 周五 3月 3日, 2017年 7:05 pm,总共编辑了 2 次
liangziOM
行走
 
帖子: 136
注册: 周日 7月 5日, 2015年 11:03 am
Cash on hand: 228.90
送出感谢: 25
收到感谢: 1

Re: 开发板无法通过nfs启动根文件系统

#2  liangziOM » 周一 2月 6日, 2017年 5:07 pm

之前有过失败的例子 后来修改了启动参数解决了
启动参数:
代码: 全选
mount -t nfs -o nolock,vers=3,tcp 192.168.0.124:/var/nfs_share /mnt
liangziOM
行走
 
帖子: 136
注册: 周日 7月 5日, 2015年 11:03 am
Cash on hand: 228.90
送出感谢: 25
收到感谢: 1

Re: 开发板无法通过nfs启动根文件系统

#3  liangziOM » 周二 2月 7日, 2017年 7:24 pm

set bootargs noinitrd root=/dev/nfs nfsroot=192.168.0.124:/var/nfs_share/fs_qtopia.yaffs2,vers=3,tcp ip=192.168.0.110:192.168.0.124:192.168.0.1:255.255.255.0::eth0:off init=/linuxrc console=ttySAC0 加上 nfs 参数也不行
liangziOM
行走
 
帖子: 136
注册: 周日 7月 5日, 2015年 11:03 am
Cash on hand: 228.90
送出感谢: 25
收到感谢: 1

开发板无法通过nfs启动根文件系统

#4  marguerite » 周二 2月 21日, 2017年 9:07 am

rootdelay 加了吗?会不会是先来 nfs 后来网

https://e2e.ti.com/support/dsp/davinci_ ... 6/t/172454

从我的 iPhone 发送,使用 Tapatalk
头像
marguerite
寨主
 
帖子: 3359
注册: 周六 3月 30日, 2013年 12:50 am
Cash on hand: 746.10
Bank: 6,030.70
送出感谢: 24
收到感谢: 353
勋章: 4
I knew SuSE from Day One! (1) Site Admin (1) developer (1)
1310Pro (1)

Re: 开发板无法通过nfs启动根文件系统

#5  liangziOM » 周三 2月 22日, 2017年 7:44 pm

marguerite 写道:rootdelay 加了吗?会不会是先来 nfs 后来网

https://e2e.ti.com/support/dsp/davinci_ ... 6/t/172454

从我的 iPhone 发送,使用 Tapatalk

加了 不过我加的没有像这个网页里面说的那样多 我再试试~谢啦 :love :love :love
liangziOM
行走
 
帖子: 136
注册: 周日 7月 5日, 2015年 11:03 am
Cash on hand: 228.90
送出感谢: 25
收到感谢: 1

Re: 开发板无法通过nfs启动根文件系统

#6  liangziOM » 周三 2月 22日, 2017年 8:11 pm

还是不行~
正常启动是这样的:
代码: 全选
   OpenJTAG> print                                                                 
   bootargs=noinitrd root=/dev/mtdblock3 init=/linuxrc console=ttySAC0             
   bootcmd=nand read.jffs2 0x30007FC0 kernel; bootm 0x30007FC0                     
   bootdelay=2                                                                     
   baudrate=115200                                                                 
   ethaddr=08:00:3e:26:0a:5b                                                       
   ipaddr=192.168.7.17                                                             
   serverip=192.168.7.11                                                           
   netmask=255.255.255.0                                                           
   stdin=serial                                                                   
   stdout=serial                                                                   
   stderr=serial                                                                   
   mtdids=nand0=nandflash0                                                         
   mtdparts=mtdparts=nandflash0:256k@0(bootloader),128k(params),2m(kernel),-(root)
   partition=nand0,0                                                               
   mtddevnum=0                                                                     
   mtddevname=bootloader                                                           
                                                               
   Environment size: 443/131068 bytes   
   

然后我设置 ip 为同一个网段
代码: 全选
   set ipaddr 192.168.0.110
   set serverip 192.168.0.124

然后我再设置启动参数:
代码: 全选
set bootargs noinitrd root=/dev/nfs nfsroot=192.168.0.124:/var/nfs_share/uImage-4.4.1,rootdelay=15,vers=3,tcp ip=192.168.0.110:192.168.0.124:192.168.0.1:255.255.255.0::eth0:off init=/linuxrc console=ttySAC0

启动就这样了:
代码: 全选
   drivers/rtc/hctosys.c: unable to open rtc device (rtc0)                         
   IP-Config: Complete:                                                           
      device=eth0, addr=192.168.0.110, mask=255.255.255.0, gw=192.168.0.1,     
      host=192.168.0.110, domain=, nis-domain=(none),                           
      bootserver=192.168.0.124, rootserver=192.168.0.124, rootpath=             
   Root-NFS: unknown option: rootdelay=15                                         
   Looking up port of RPC 100003/2 on 192.168.0.124                               
   Looking up port of RPC 100005/1 on 192.168.0.124                               
   nfs: server 192.168.0.124 not responding, timed out                             
   VFS: Unable to mount root fs via NFS, trying floppy.                           
   VFS: Cannot open root device "nfs" or unknown-block(2,0)                       
   Please append a correct "root=" boot option; here are the available partitions:
   1f00        256 mtdblock0 (driver?)                                             
   1f01        128 mtdblock1 (driver?)                                             
   1f02       2048 mtdblock2 (driver?)                                             
   1f03     259712 mtdblock3 (driver?)                                             
   Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(2,0)

到这里走不动了 。。。。。。
改天我自己再查一下内核的启动参数看看 root 模式的 nfs 是不是 y
liangziOM
行走
 
帖子: 136
注册: 周日 7月 5日, 2015年 11:03 am
Cash on hand: 228.90
送出感谢: 25
收到感谢: 1

Re: 开发板无法通过nfs启动根文件系统

#7  liangziOM » 周四 3月 9日, 2017年 7:27 pm

我看了一下中文手册里面是这么说的:
代码: 全选
 
https://www.suse.com/zh-cn/documentation/sles-12/book_sle_admin/data/sec_basicnet_manconf.html?view=print
提示:NFS 用作根文件系统
在通过网络以 NFS 共享形式装入根分区的 (无磁盘) 系统中, 配置可供访问 NFS 共享的网络设备
时需保持谨慎。
关闭或重引导系统时, 默认的处理顺序是关闭网络连接, 然后卸载根分区。对于 NFS 根分区, 这种
顺序会产生问题, 因为在尚未激活与 NFS 共享的网络连接的情况下, 根分区无法完全卸载。为防止
系统停用相关的网络设备, 请按第 16.4.1.2.5 节 “激活网络设备”中所述打开网络设备配置选项卡,
然后在设备激活窗格中选择通过 NFSroot。

16.4.1.2.5
 激活网络设备
如果使用结合 wicked 的方法, 便可以将设备配置为在引导期间、连接电缆时或检测到网卡时启动、以手
动方式启动或永不启动设备。要更改设备启动, 请如下继续操作:
1. 在 YaST 的系统 网络设置中, 于已检测到的网卡列表中选择一个网卡, 然后单击编辑。
 使用 YaST 配置网卡
2. 在常规选项卡中, 从设备激活选择所希望的项。
选择在引导时可在系统引导时启动设备。使用在电缆连接时将对任何现有物理连接监视接口。使
用在热插拔时, 可在接口可用时对其进行设置。这与在引导时选项很相似, 唯一区别是如果引导时
接口不存在, 将不会发生错误。选择手动可通过 ifup 手动控制接口。选择从不将不启动设备。通
过 NFSroot 与在引导时相似, 区别是使用 systemctl stop wicked.service 命令不会关闭接
口 ; 如果 wicked 处于活动状态, 则 network 服务还会处理 wicked 服务。如果您使用 NFS 或
iSCSI 根文件系统, 则选择此选项。
3. 要激活该配置, 请确认设置。
提示:NFS 用作根文件系统
在通过网络以 NFS 共享形式装入根分区的 (无磁盘) 系统中, 配置可供访问 NFS 共享的网络设备
时需保持谨慎。

这意思只能配置 wicked 了 刚才配置了一下 还是不行 估计那个细节没设置吧
挂不上估计就是这里的原因了
而且一旦配置了 wicked 任务栏都没有图标了 立马感觉心里没底了 :sweat 无线网络也得自己整 我去~~~~头大!!! :question
liangziOM
行走
 
帖子: 136
注册: 周日 7月 5日, 2015年 11:03 am
Cash on hand: 228.90
送出感谢: 25
收到感谢: 1


回到 服务器基础

在线用户

正在浏览此版面的用户:没有注册用户 和 1 位游客