Debian Setup TFTP/NFS: Difference between revisions

From Variscite Wiki
(Add INIT_RELEASE_PARAM)
(Section 1.1. On the Host: Align formatting to Yocto Setup TFTP/NFS)
Line 6: Line 6:


== On the Host  ==
== On the Host  ==
 
Prepare the rootfs folder:
Make sure you installed NFS server:  
$ sudo apt-get install nfs-kernel-server
  $ cd {{#var:BUILD_FOLDER}}
  $ cd {{#var:BUILD_FOLDER}}
  $ mkdir -p ~/rootfs_debian_nfs
  $ mkdir -p ~/rootfs_debian_nfs
Line 14: Line 12:
  $ sudo tar xvf {{#var:BUILD_FOLDER}}/output/rootfs.tar.gz -C .
  $ sudo tar xvf {{#var:BUILD_FOLDER}}/output/rootfs.tar.gz -C .


<pre>
Make sure the NFS server is installed:
$ sudo gedit /etc/exports
$ sudo apt-get install nfs-kernel-server
</pre>


Add the following line (change <uname> to the name of user):


Edit /etc/exports. E.g.
$ sudo gedit /etc/exports
...and add the following line to it (replace <uname> with the actual username):
  /home/<uname>/rootfs_debian_nfs    *(rw,sync,no_root_squash,no_all_squash,no_subtree_check)  
  /home/<uname>/rootfs_debian_nfs    *(rw,sync,no_root_squash,no_all_squash,no_subtree_check)  


exit &amp; save
 
<pre>$ sudo /etc/init.d/nfs-kernel-server restart</pre>
Restart the NFS server:
Make sure you installed TFTP server:  
$ sudo /etc/init.d/nfs-kernel-server restart
 
Make sure the TFTP server is installed:
  $ sudo apt-get install xinetd tftpd tftp
  $ sudo apt-get install xinetd tftpd tftp
Verify the following:
Verify the following:
  $ ls /usr/sbin/in.tftpd
  $ ls /usr/sbin/in.tftpd

Revision as of 17:52, 10 March 2023

Warning: This page is designed to be used with a 'release' URL parameter.

This page is using the default release RELEASE_BUSTER_V1.0_DART-MX8M-MINI.
To view this page for a specific Variscite SoM and software release, please follow these steps:

  1. Visit variwiki.com
  2. Select your SoM
  3. Select the software release
DART-MX8M-MINI - Debian Setup TFTP/NFS

Running Debian rootfs on Variscite board using TFTP & NFS

On the Host

Prepare the rootfs folder:

$ cd ~/var_mx8mm_dart_debian_buster
$ mkdir -p ~/rootfs_debian_nfs
$ cd ~/rootfs_debian_nfs
$ sudo tar xvf ~/var_mx8mm_dart_debian_buster/output/rootfs.tar.gz -C .

Make sure the NFS server is installed:

$ sudo apt-get install nfs-kernel-server


Edit /etc/exports. E.g.

$ sudo gedit /etc/exports

...and add the following line to it (replace <uname> with the actual username):

/home/<uname>/rootfs_debian_nfs    *(rw,sync,no_root_squash,no_all_squash,no_subtree_check) 


Restart the NFS server:

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

Make sure the TFTP server is installed:

$ sudo apt-get install xinetd tftpd tftp

Verify the following:

$ ls /usr/sbin/in.tftpd
$ sudo gedit /etc/xinetd.d/tftp
service tftp
{
	protocol = udp
	port = 69
	socket_type = dgram
	wait = yes
	user = nobody
	server = /usr/sbin/in.tftpd
	server_args = /tftpboot
	disable = no
}

and run:

$ sudo mkdir /tftpboot
$ sudo chmod -R 777 /tftpboot
$ sudo /etc/init.d/xinetd restart
$ cd ~/var_mx8mm_dart_debian_buster


$ sudo cp -a output/*.dtb /tftpboot
$ sudo cp -a output/Image.gz /tftpboot
Default kernel configuration should be modified to compile Ethernet driver into kernel image instead compiling it as a loadable module.

Follow our kernel compilation guide Build kernel from source code
Run "make menuconfig", go to "Device Drivers → Network device support → Ethernet driver support → Freescale devices → FEC ethernet controller" and press y.

Compile the kernel and copy arch/arm64/boot/Image.gz to /tftpboot

On the Target

Make sure you have a serial connection to the target.

Reset and hold the space bar. This will bring you to U-Boot command line.

=> setenv serverip 192.168.1.188 (change 192.168.1.188 to server IP based on your network configuration)
=> setenv nfsroot /home/<uname>/rootfs_debian_nfs (change <uname> to the name of user)
=> setenv bootcmd run netboot
=> saveenv 

You are all set. Connect Ethernet cable, power cycle the DART-MX8M-MINI and it should boot over NFS.