Setting up NFS

=IT OS2008= This chapter shows an example of how to set up your N800/N810 as an NFS client.

These instructions are valid for IT OS2008, which was released in November 2007.

The prerequisites are:

you must be able to access the device as root. repository.maemo.org is in your apt sources list.

The first requirement can be fulfilled in a number of ways (RD mode, becomeroot or openssh server). My favorite is the ssh approach, since then I can utilize my PC's keyboard for entering all the commands.

The second is achieved by adding repository.maemo.org / chinook / free non-free to the Application manager catalogue or by editing /etc/apt/sources.list accordingly.

During this process we're going to need to install a few extra packages and load some kernel modules. Once we're done, your device will be ready to do NFS mounts.

The following packages will be needed; rx-34-kernel-modules-extra, nfs-common and portmap.

rx-34-kernel-modules-extra contains the necessary kernel modules nfs-common contains other tools portmap contains the protocol port number conversion server that is needed for NFS. This is a log of how I performed the install:

$ ssh  -l root root@'s password:

BusyBox v1.6.1 (2007-09-27 18:08:59 EEST) Built-in shell (ash) Enter 'help' for a list of built-in commands.

Nokia-N810:~# apt-get install rx-34-kernel-modules-extra Nokia-N810:~# apt-get install portmap Nokia-N810:~# apt-get install nfs-common

Nokia-N810:/lib/modules/2.6.21-omap1/extra# insmod sunrpc.ko Nokia-N810:/lib/modules/2.6.21-omap1/extra# insmod lockd.ko Nokia-N810:/lib/modules/2.6.21-omap1/extra# insmod nfs.ko
 * 1) Now it's time to load the kernel modules. The order is important:

Nokia-N810:~# mkdir /mnt/mountpoint Nokia-N810:~# mount -t nfs :/some/directory /mnt/mountpoint
 * 1) The device is ready, now just mount your NFS partition:

That should do it! For the mount to work, your NFS host needs to be configured correctly and that's out of the scope of this wiki page. Just be wary of the user id mappings etc. if you want to use the mountpoint as a non-root user.

=IT OS2007= This chapter shows an example of how to set up your N800 as an NFS client.

These instructions are valid for the IT OS 2007 (version 4.2007.26-8), which was released in June 2007 for the N800 device.

The prerequisites are:

you must be able to access the device as root. repository.maemo.org is in your apt sources list.

The first requirement can be fulfilled in a number of ways (RD mode, becomeroot or openssh server). My favorite is the ssh approach, since then I can utilize my PC's keyboard for entering all the commands.

The second is achieved by adding repository.maemo.org / bora / free non-free to the Application manager catalogue or by editing /etc/apt/sources.list accordingly.

During this process we're going to need to install a few extra packages and load some kernel modules. Once we're done, your device will be ready to mount NFS partitions from another computer.

The following packages will be needed; portmap, rx-34-kernel-nfs-modules, nfs-common. However, nfs-common is currently broken and it needs to be installed by hand instead of apt-get or the application manager.

portmap contains the protocol port number conversion server that is needed for NFS. rx-34-kernel-nfs-modules contains the necessary kernel modules nfs-common contains other tools This is a recording of how I installed the packages and kernel modules:

$ ssh  -l root root@'s password:

BusyBox v1.4.1 (2007-03-12 19:00:25 EET) Built-in shell (ash) Enter 'help' for a list of built-in commands.

Nokia-N800-26:~# apt-get install rx-34-kernel-nfs-modules Nokia-N800-26:~# apt-get install portmap

Nokia-N800-26:~# apt-get install wget
 * 1) I'm installing wget just to get the nfs-common binary package to bypass
 * 2) the dependency problems with it

Nokia-N800-26:~# wget http://repository.maemo.org/pool/bora/free/binary/nfs-common_1.0.6-3.1sdk1_armel.deb Nokia-N800-26:~# ls -l -rw-r--r--   1 root     root        60744 Jul  4 12:30 nfs-common_1.0.6-3.1sdk1_armel.deb

Nokia-N800-26:~# dpkg -x nfs-common_1.0.6-3.1sdk1_armel.deb nfstmp
 * 1) Unpack the deb file to a temporary directory

Nokia-N800-26:~# cd nfstmp Nokia-N800-26:~/nfstmp# ls -l drwxr-xr-x   4 root     root            0 Aug 31 13:39 etc drwxr-xr-x   2 root     root            0 Aug 31 13:39 sbin drwxr-xr-x   4 root     root            0 Aug 31 13:39 usr drwxr-xr-x   3 root     root            0 Aug 31 13:39 var

Nokia-N800-26:~/nfstmp# rm -rf usr/share/man/ usr/share/doc/
 * 1) Remove documentation to save some space on the device

Nokia-N800-26:~/nfstmp# cp -r etc sbin usr var / Nokia-N800-26:~/nfstmp# cd /lib/modules/current/ Nokia-N800-26:/lib/modules/current# ls -l -rw-r--r--   1 root     root         5922 Dec  5  2006 exportfs.ko -rw-r--r--    1 root     root        72921 Dec  5  2006 lockd.ko -rw-r--r--    1 root     root       263290 Dec  5  2006 nfs.ko -rw-r--r--    1 root     root       109606 Dec  5  2006 nfsd.ko -rw-r--r--    1 root     root       153963 Dec  5  2006 sunrpc.ko
 * 1) Copy the rest of the directories to root

Nokia-N800-26:/lib/modules/current# insmod sunrpc.ko Nokia-N800-26:/lib/modules/current# insmod lockd.ko Nokia-N800-26:/lib/modules/current# insmod nfs.ko
 * 1) Now it's time to load the kernel modules. The order is important:

Nokia-N800-26:~# mkdir /mnt/mountpoint Nokia-N800-26:~# mount -t nfs :/some/directory /mnt/mountpoint
 * 1) The device is ready, now just mount your NFS partition:

That should do it! For the mount to work, your NFS host needs to be configured correctly and that's out of the scope of this wiki page. Just be wary of the user id mappings etc. if you want to use the mountpoint as a non-root user.

=IT OS2006= For the 770 / maemo 2.x see HowToNFS 06.