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.
next parent 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.