Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

First, install all the necessary packages:

Code Block
languagebash
sudo apt-get install xinetd tftpd tftp -y

Uncompress the rootfilesystem into a folder: (check the files name when you are creating the soft link, the uImage name may change, and change devel with your username)

Code Block
languagebash
mkdir /home/devel/rootfs-target-folder
sudo tar -xvjf core-image-minimal.tar.gz -C /home/devel/rootfs-target-folder
cd /home/devel
ln -s rootfs-target-folder rootfs

Next, create a configuration file:

Code Block
languagebash
sudo nano /etc/xinetd.d/tftp

Put the following content into the file (change devel with your username)

Code Block
languagebash
service tftp
{
protocol = udp
port = 69
socket_type = dgram
wait = yes
user = nobody
server = /usr/sbin/in.tftpd
server_args = home/devel/rootfs/boot -s
disable = no
}

and start the TFTP service:

Code Block
languagebash
sudo service xinetd restart

Set up the NFS

...

Install the following packages:

Code Block
languagebash
sudo apt-get install nfs-kernel-server portmap

and edit the file

Code Block
languagebash
sudo nano /etc/exports

Write this into the file (change devel with your username)

Code Block
languagebash
/home/devel/rootfs *(rw,sync,no_root_squash,no_subtree_check)

and execute

Code Block
languagebash
sudo exportfs -a

Check the bootserver IP address

Start the module

...

Stop the autoboot

Code Block
languagebash
setenv nfsroot '/home/devel/rootfs'
setenv serverip '10.11.x.y' # IP address of the bootserver
setenv netargs 'setenv bootargs console=${console},${baudrate} root=/dev/nfs ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp video=mxcfb0:dev=${vid_dev0}'
saveenv

If you want to boot a different rootfs, you can create another folder to uncompress the rootfs there, remove the soft link /home/devel/rootfs and create a new one pointing to the folder you want