*ネットブート [#e7d71102]

u-bootの知名度はこの数年で相当あがりましたが,いまだにネットブートというと,tftp+NFSルートの記述多く見られます.u-bootにetherbootからnfsを移植した人間としては悲しい.

tftpのかわりにnfsでカーネルをロードしてくる機能の簡単な使い方を書いておきます.
tftpのかわりにnfsでカーネルをロードする機能の使い方を簡単に書いておきます.

(例)

 MPC8540EVAL => help nfs
 nfs [loadAddress] [host ip addr:bootfilename]
 
 MPC8540EVAL => nfs 200000 192.168.1.8:/exports-ppc/boot/uImage-eval8540
 Speed: 1000, full duplex
 Using TSEC0 device
 File transfer via NFS from server 192.168.1.8; our IP address is 192.168.1.138
 Filename '/exports-ppc/boot/uImage-eval8540'.
 Load address: 0x200000
 Loading: #################################################################
          #################################################################
          #################################################################
          ###################
 done
 Bytes transferred = 1091826 (10a8f2 hex)

u-bootにはdhcp機能も含まれているので,dhcpd.confに

 host eval8540 {
     hardware ethernet XX:XX:XX:XX:XX:XX;
     fixed-address 192.168.1.138;
     server-name "192.168.1.8";
     server-identifier 192.168.1.8;
 
     filename "/exports-ppc/boot/uImage-eval8540";
     option root-path "192.168.1.8:/opt/eldk/ppc_85xx";
 }

等と記述しておくと,

 MPC8540EVAL=> dhcp
 Speed: 1000, full duplex
 BOOTP broadcast 1
 DHCP client bound to address 192.168.1.138

 MPC8540EVAL=> print
 bootargs=root=/dev/ram rw console=ttyS0,115200
 bootcmd=run netboot
 bootdelay=3
 
     :(省略)
 
 bootfile=/exports-ppc/boot/uImage-eval8540
 gatewayip=192.168.1.1
 netmask=255.255.255.0
 rootpath=192.168.1.8:/opt/eldk/ppc_85xx
 ipaddr=192.168.1.138
 serverip=192.168.1.8
 
 Environment size: 1023/8188 bytes

のようにカーネルのロードに必要な情報が得られます.

後はnfsコマンドを実行するだけ.

 MPC8540EVAL=> nfs
 Speed: 1000, full duplex
 Using TSEC0 device
 File transfer via NFS from server 192.168.1.8; our IP address is 192.168.1.138
 Filename '/exports-ppc/boot/uImage-eval8540'.
 Load address: 0x200000
 Loading: #################################################################
          #################################################################
          #################################################################
          ###################
 done
 Bytes transferred = 1091826 (10a8f2 hex)

mkomiya at sonare.jp (mkomiya at sonare.it)

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS