All of lore.kernel.org
 help / color / mirror / Atom feed
From: Marc Leeman <marc.leeman@gmail.com>
To: zhonglei@rcs-9000.com, linuxppc-dev@ozlabs.org
Subject: Re: problem on netdevice
Date: Thu, 25 Nov 2004 12:19:24 +0100	[thread overview]
Message-ID: <1f729c4804112503197e843ddb@mail.gmail.com> (raw)
In-Reply-To: <200411251657.AA31129806@RCS-9000.COM>

[-- Attachment #1: Type: text/plain, Size: 711 bytes --]

Make certain that your DHCP server is set up correctly (see the attached file).

For the kernel config; make certain you have the following enabled:
[mleeman@gemini linux-2.4.28]$ cat config.nfs |grep NFS
CONFIG_NFS_FS=y
CONFIG_ROOT_NFS=y
[mleeman@gemini linux-2.4.28]$ cat config.nfs |grep ROOT
CONFIG_ROOT_NFS=y
[mleeman@gemini linux-2.4.28]$ cat config.nfs |grep AUTO
CONFIG_AUTOFS4_FS=y
[mleeman@gemini linux-2.4.28]$ cat config.nfs |grep BOOTP  
CONFIG_IP_PNP_BOOTP=y

Yours is not going to be bootp, but something similar with DHCP (same
goes with the att. file).

P.S. reply to the list too

-- 
ash nazg durbatulûk, ash nazg gimbatul,
ash nazg thrakatulûk agh burzum-ishi krimpatul

[-- Attachment #2: NFSSystem.txt --]
[-- Type: text/plain, Size: 5563 bytes --]


   Barco home TWiki > Firmware > FirmwareDocumentation > NFSSystem TWiki webs:
   Firmware | Software | Servers
   Firmware . { Changes | Index | Search | Go ________________ }

   Loading a cramfs is time consuming and during a testing/debugging/development cycle, if this is done quite often. Therefore
   a NFS filesystem, where changes can be done on the fly, is more useful. The boards are configured to use BOOTP for booting.
   In the following, the basic modifications are described to configure a GNU/Linux server to serve as a bootp server.

   First of all, a number of services need to be installed on the serving machine (gemini in this example):
     * a NFS server
     * a DHCP server

   On a GNU/Debian system, the following packages need to be installed:
[mleeman@gemini mleeman]$ dpkg -l |grep nfs
ii  nfs-common     1.0-2woody1    NFS support files common to client and serve
ii  nfs-kernel-ser 1.0-2woody1    Kernel NFS server support
[mleeman@gemini mleeman]$ dpkg -l |grep dhcp
ii  dhcp           2.0pl5-19      DHCP server for automatic IP address assignment

   Other distributions should have similarly named packages.

   The main configuration for this is done in a number of files:
     * /etc/exports contains the files of your files on the server which are exported over NetworkFileSystem (NFS). In this
       case, this will be the root filesystem for our embedded board.
     * /etc/dhcpd.conf contains the configuration of the DHCP server. You have to make certain that you are the only DHCP
       server in your netrange. If you do not, a lot of unpleasantness can occuur since your server will reply with DHCPNACK on
       requests for the official DHCP server.

   Extract a root filesystem tarball (or something similar) to your homedir (or a predetermined location). A free and general
   purpose PPC root filesystem can be found in ELDK (http://www.denx.de/ELDK/).
[mleeman@gemini mleeman]$ mkdir targets
[mleeman@gemini mleeman]$ tar xvfz target.scn.tar.gz -C targets/

   With the current BARCO builds, you can also use the CompressedFileSystem backup to create your NFS root FS:
# mkdir fs; cd fs
# bzcat ../target-2.0.0.10.cpio.bz2 | cpio -vi

   Do not forget to copy your stream.cfg file, which basically re-confirms your IP address to ppcserver into the
   /root/ppcstream directory.

   Secondly, add the following entry in the exports file, indicating that you want to export without any condition:
/home/mleeman/targets/target.scn.01 *(rw,no_root_squash,no_all_squash)

   Finally, restart the NFS server:
[mleeman@gemini mleeman]$ sudo /etc/init.d/nfs-kernel-server restart

   We're halfway through. We now need to link this NFS filesystem to the MAC address of our board. This is done by adding the
   following in the /etc/dhcpd.conf file:
# global configuration options
# allow bootp packages
allow bootp;
# the first subnet we listen to
subnet 150.158.231.0 netmask 255.255.255.0 {
  # options for the subnet in question
  option routers 150.158.231.1;
  default-lease-time 1209600;
  max-lease-time 31557600;
  # for each board, add the following configuration block.
  # It is best that you use different root FS directories
  # for each board.
  group {
    host scnhost01 {
      # MAC address
      hardware ethernet 00:d0:b7:85:f9:28;
      # The fixed address we will assign to the board
      fixed-address 150.158.231.20;
      # hm. not relevant here, is the kernel, which we load in FLASH
      filename "image";
      # our root FS that will be passed to the board
      option root-path "/home/mleeman/targets/target.scn.01";
    }
  }
}

   We now need to restart the dhcp server:
[mleeman@gemini mleeman]$ sudo /etc/init.d/dhcpd restart

   If you do not know the MAC address, and it is not indicated on the board in some way, just let the target boot (loaded with
   an NFS kernel of course) and watch the messages of the dhcp server, it will display the the MAC address (but will not pass a
   root FS).

[mleeman@gemini mleeman]$ sudo tail -f /var/log/messages

   and search for something like the following passing:
Apr  9 07:53:22 gemini dhcpd: BOOTREQUEST from 00:04:a5:00:05:19 via eth0
Apr  9 07:53:22 gemini dhcpd: No applicable record for BOOTP host 00:04:a5:00:05:19 via eth0

   More detailed information will be see in
sudo tail -f /var/log/syslog

Jul 13 15:57:08 gemini dhcpd: BOOTREQUEST from 00:04:a5:04:05:0c via eth0
Jul 13 15:57:08 gemini dhcpd: BOOTREPLY for 150.158.231.121 to hydra_stream_dmar (00:04:a5:04:05:0c) via eth0
Jul 13 15:57:13 gemini rpc.mountd: authenticated mount request from 150.158.231.121:800 for /home/dmartens/targets/target.01 (/home/d
martens/targets/target.01)

   In this case 00:04:a5:00:05:19 is our MAC address.

   More details about the kernel parameters are found in the attached file.

   -- MarcLeeman - 17 Jun 2004

   Attachment: Action: Size:        Date:           Who:                      Comment:
   nfsroot.txt action  8020  21 Jun 2004 - 10:00 MarcLeeman Kernel Documentation (2.6.7) about an nfsroot

   Topic NFSSystem . { Edit | Attach | Ref-By | Printable | Diffs | r1.9 | > | r1.8 | > | r1.7 | More }

   Revision r1.9 - 13 Jul 2004 - 14:00 GMT - MarcLeeman
   Parents: WebHome > FirmwareDocumentation Copyright © 1999-2003 by the contributing authors. All material on this
   collaboration platform is the property of the contributing authors.
   Ideas, requests, problems regarding TWiki? Send feedback.

       reply	other threads:[~2004-11-25 11:19 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <200411251657.AA31129806@RCS-9000.COM>
2004-11-25 11:19 ` Marc Leeman [this message]
     [not found] <200411251511.AA20840738@RCS-9000.COM>
2004-11-25  7:37 ` problem on netdevice Marc Leeman
2004-11-25  2:42 zhonglei
2004-11-25  6:21 ` Marc Leeman
2004-11-25  6:23   ` Marc Leeman

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1f729c4804112503197e843ddb@mail.gmail.com \
    --to=marc.leeman@gmail.com \
    --cc=linuxppc-dev@ozlabs.org \
    --cc=zhonglei@rcs-9000.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.