Tuesday, 28 December 2010

devkit8000,android,NFS boot

NFS boot

  • Follow the steps to boot the board using NFS
  1. Setup host machine as NFS server (optional)
    • If you want to setup a new NFS server, do this step

    • Add one line in /etc/exports:
      /nfsroot  *(rw,no_root_squash,sync)
    • Then restart NFS server
      $ sudo /etc/init.d/nfs-kernel-server restart
  2. Build Kernel for NFS boot
    • make sure your kernel enable these options for NFS boot:
      [*] Networking support  --->
      Networking options --->
      [*] IP: kernel level autoconfiguration
      [*] IP: DHCP support

      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)
      [*] Root file system on NFS
    • Build kernel:
  3. Copy kernel to the TFTP server's root
    • We also have a TFTP server on the test machine, the TFTP server's root path is: /mydroid/tftpboot
    • Put kernel file to the TFTP server's root path
    • uImage is the name of the kernel file you just built out

  4. Prepare the rootfs
    • Put the files to the NFS root path
    • Use android for example, we build the file system first, then do the commands:
  5. Set the boot parameters to kernel for the frist time, before it run 'autoboot'
    • serverip is the IP address of your NFS server
    • for example, our NFS server ip here is 10.126.34.43
  6. Boot
    • Just restart the board
    • The same as normal boot, Enjoy!

No comments:

Post a Comment