Difference between revisions of "Network File System configuration"

From ArmadeusWiki
Jump to: navigation, search
m (Introduction)
m (NFS usage on your Armadeus board)
Line 43: Line 43:
  
 
* create a mount point (for example):
 
* create a mount point (for example):
 +
<pre class="apf">
 
  # mkdir -p /mnt/host
 
  # mkdir -p /mnt/host
 +
</pre>
 
* mount it (for example):
 
* mount it (for example):
 +
<pre class="apf">
 
  # mount -t nfs 192.168.0.2:/local/export /mnt/host
 
  # mount -t nfs 192.168.0.2:/local/export /mnt/host
 +
</pre>
 
If 192.168.0.2 is your Host IP address and ''/local/export'' the name of your Host directory you want to mount.
 
If 192.168.0.2 is your Host IP address and ''/local/export'' the name of your Host directory you want to mount.
  
Line 57: Line 61:
 
  192.168.0.2:/local/export /mnt/host nfs hard,intr,rsize=8192,wsize=8192 0 0
 
  192.168.0.2:/local/export /mnt/host nfs hard,intr,rsize=8192,wsize=8192 0 0
 
* check your modification:
 
* check your modification:
 +
<pre class="apf">
 
  # mount /mnt/host
 
  # mount /mnt/host
 +
</pre>
 
* reboot your board
 
* reboot your board
 +
<pre class="apf">
 
  # reboot
 
  # reboot
 +
</pre>
 
* and enjoy the result
 
* and enjoy the result
 +
<pre class="apf">
 
  # df
 
  # df
 
  # ls /mnt/host
 
  # ls /mnt/host
 +
</pre>
 
When you have a problem, verify that the NFS server is running on the host:
 
When you have a problem, verify that the NFS server is running on the host:
[host] $ /etc/init.d/nfs-kernel-server status
+
<pre class="host">
 +
$ /etc/init.d/nfs-kernel-server status
 +
</pre>
 
or
 
or
[host] $ /sbin/service nfs status
+
<pre class="host">
 +
$ /sbin/service nfs status
 +
</pre>
  
 
===Boot from NFS===
 
===Boot from NFS===
Line 72: Line 86:
 
  [ ]$ sudo tar xvf buildroot/binaries/apf9328/apf9328-rootfs.arm.tar -C /local/export
 
  [ ]$ sudo tar xvf buildroot/binaries/apf9328/apf9328-rootfs.arm.tar -C /local/export
 
* on your target, in U-Boot, set the ''rootpath'' envt variable accordingly:
 
* on your target, in U-Boot, set the ''rootpath'' envt variable accordingly:
 +
<pre class="apf">
 
  BIOS> setenv rootpath /local/export
 
  BIOS> setenv rootpath /local/export
 +
</pre>
 
* save it:
 
* save it:
 +
<pre class="apf">
 
  BIOS> saveenv
 
  BIOS> saveenv
 +
</pre>
 
* then boot with:
 
* then boot with:
 +
<pre class="apf">
 
  BIOS> run nfsboot
 
  BIOS> run nfsboot
 +
</pre>
  
 
===Summary of the required Packages:===
 
===Summary of the required Packages:===

Revision as of 23:49, 2 March 2009

Introduction

On this page, you will find usefull informations to configure NFS ( Network File System) on your Host and your Target.

NFS server on your development Host

Installation

  • On Fedora, NFS is part of your distribution so you normally don't need to install it.
  • On Ubuntu/Kubuntu:
$ sudo apt-get install nfs-user-server

or if you prefer:

$ sudo apt-get install nfs-kernel-server

Configuration

/etc/exports

You have to configure the directory where you will store the files you want to share accross the network. For that you have to modify the /etc/exports file (for example):

# Directory for Armadeus:
/local/export     192.168.0.0/255.255.0.0(ro,no_root_squash,sync)

(In that case your Host will authorize all client from the subnet 192.168.*.* to access /local/export in read only mode)

Restart of NFS server

  • On Fedora:
# /sbin/service nfs restart

Next time you boot, you can check your NFS server status with:

# /sbin/service nfs status

and if not started then:

# /sbin/service nfs start
  • On Ubuntu/Kubuntu:
$ sudo /etc/init.d/nfs-user-server restart

or

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

Next time you boot, you can check your NFS server status with: System Settings->System services

  • On OpenSUSE
# /etc/init.d/nfsserver restart

NFS usage on your Armadeus board

Mount the NFS partition manually

  • create a mount point (for example):
 # mkdir -p /mnt/host
  • mount it (for example):
 # mount -t nfs 192.168.0.2:/local/export /mnt/host

If 192.168.0.2 is your Host IP address and /local/export the name of your Host directory you want to mount.

Mount the NFS partition automatically at each boot from FLASH

  • be sure to have the latest available software (>=armadeus2.0 or latest SVN)
  • login to your Armadeus board as root
  • open the /etc/fstab file and add this line:
<host-ip>:/<path-to-shared-folder> /mnt/<path-to-mount-folder> nfs hard,intr,rsize=8192,wsize=8192 0 0

example:

192.168.0.2:/local/export /mnt/host nfs hard,intr,rsize=8192,wsize=8192 0 0
  • check your modification:
 # mount /mnt/host
  • reboot your board
 # reboot
  • and enjoy the result
 # df
 # ls /mnt/host

When you have a problem, verify that the NFS server is running on the host:

 $ /etc/init.d/nfs-kernel-server status

or

 $ /sbin/service nfs status

Boot from NFS

  • on your Host, expand generated rootfs image to your NFS export dir (for example if your NFS export file is /local/export on your Host):
[ ]$ sudo tar xvf buildroot/binaries/apf9328/apf9328-rootfs.arm.tar -C /local/export
  • on your target, in U-Boot, set the rootpath envt variable accordingly:
 BIOS> setenv rootpath /local/export
  • save it:
 BIOS> saveenv
  • then boot with:
 BIOS> run nfsboot

Summary of the required Packages:

  • portmap (buildroot)
  • nfs (busybox)
  • nfs support (Linux, activated by default in Armadeus configuration)

Troubleshooting:

  • 1] If nfsd and mountd daemon are not running on your Host, then you will get a message like:
# mount: RPC: Program not registered

In that case, restart the NFS service on your Host (see above)

  • 2] To successfully mount a NFS drive, portmap daemon should be running on your target, if not system will hang during some minutes when you launch the mount !!

To check if portmap is running, look at the running processes:

# ps faux

If portmap is not listed, then launch it manually:

# /etc/init.d/S14portmap

NFS Server under Windows

For those who want to use the NFS service on Windows, a small and FREE NFS server is available here: http://www.freedownloadscenter.com/Utilities/Misc__Utilities/nfsAxe.html

Links


Other languages:

English Flag.svg English  •  French Flag.svg Français