【问题标题】:Boot from NFS server with UBoot使用 UBoot 从 NFS 服务器启动
【发布时间】:2019-09-19 08:05:15
【问题描述】:

我的 NFS 服务器有问题。我基本上必须从 NFS 启动嵌入式处理器。 在 ubuntu 机器上,我只是将文件系统放在 /tftpboot 中, 在 /etc/exports 中添加了这一行:

/tftpboot *(rw,no_root_squash,no_all_squash,sync)

然后我执行了命令:

sudo /usr/sbin/exportfs -av

sudo /etc/init.d/nfs-server restart

但在嵌入式处理器上我收到此错误:

Looking up port of RPC 100003/2 on 192.168.2.11
Looking up port of RPC 100005/1 on 192.168.2.11
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
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(2,0)

尤其是线条

Looking up port of RPC 100003/2 on 192.168.2.11
Looking up port of RPC 100005/1 on 192.168.2.11

让我觉得问题出在 NFS 服务器的配置上,谁能帮帮我?

【问题讨论】:

    标签: nfs


    【解决方案1】:

    我今天在 SUSE Leap 上安装旧的嵌入式设备和 NFS 服务器时遇到了完全相同的问题。 我嗅探了与 Wireshark 的通信,它让我知道出了什么问题。 在我的情况下,问题与 "iptable filter" 和 "NFS 服务器版本"有关:

    1. 配置iptables在NFS服务器端打开NFS相关端口
    2. 我的设备只支持第 2 版 NFS,并且 SUSE NFS 服务器默认配置为支持 v3 和 v4。

    解决1: 你可以查看帖子 Iptables Rules for NFS Server and NFS Client

    sudo iptables -A INPUT -s 172.17.200.26/16 -d 172.17.200.26/16 -p udp -m multiport --dports 10053,111,2049,32769,875,892,20048,950 -m state --state NEW,ESTABLISHED -j ACCEPT 
    sudo iptables -A INPUT -s 172.17.200.26/16 -d 172.17.200.26/16 -p tcp -m multiport --dports 10053,111,2049,32803,875,892,20048,950 -m state --state NEW,ESTABLISHED -j ACCEPT 
    sudo iptables -A OUTPUT -s 172.17.200.26/16 -d 172.17.200.26/16 -p udp -m multiport --sports 10053,111,2049,32769,875,892,20048,950 -m state --state ESTABLISHED -j ACCEPT 
    sudo iptables -A OUTPUT -s 172.17.200.26/16 -d 172.17.200.26/16 -p tcp -m multiport --sports 10053,111,2049,32803,875,892,20048,950 -m state --state ESTABLISHED -j ACCEPT 
    

    解决2可以检查: https://documentation.suse.com/sles/15-SP1/html/SLES-all/cha-nfs.html#sec-nfs-configuring-nfs-server

    通过修改 /etc/sysconfig/nfs 在服务器上启用 NFS 版本 2:

    NFSD_OPTIONS="-V2"
    MOUNTD_OPTIONS="-V2
    

    我希望它可以帮助某人,我在这个问题上浪费了几个小时

    我添加了由于wireshark捕获发现的问题2的截图:

    【讨论】:

      猜你喜欢
      • 2013-07-14
      • 1970-01-01
      • 2021-01-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-07-30
      • 1970-01-01
      相关资源
      最近更新 更多