TFTP error: 'File not found'

Filippo Mangani picture Filippo Mangani · Jan 12, 2017 · Viewed 13.7k times · Source

I am using minicom on Kali Linux native ( Linux 4.6.0-kali1-amd64 x86_64 ) to install embedded linux on a stm32f746g-Disco.

After setting up the tftp protocol, the ethernet connection with the board , after building the kernel and putting the image in the appropriate folder ( \tftpboot\stm32f7\uImage is the path & name of the image ), I'm starting minicom to comunicate with the board.

The comunication with the board works fine, but the problem is that the board somewhat cannot read the image of the kernel, even if the path is correct:

STM32F746-DISCO> reset                                                          
resetting ...                                                                   


U-Boot 2010.03 (Dec 21 2015 - 04:18:19)                                         

CPU  : STM32F7 (Cortex-M7)                                                      
Freqs: SYSCLK=200MHz,HCLK=200MHz,PCLK1=50MHz,PCLK2=100MHz                       
Board: STM32F746 Discovery Rev 1.A, www.emcraft.com                             
DRAM:   8 MB                                                                    
In:    serial                                                                   
Out:   serial                                                                   
Err:   serial                                                                   
Net:   STM32_MAC                                                                
Hit any key to stop autoboot:  0                                                
Auto-negotiation...completed.                                                   
STM32_MAC: link UP (100/Full)                                                   
Using STM32_MAC device                                                          
TFTP from server 172.17.4.1; our IP address is 172.17.4.206                     
Filename 'stm32f7/uImage'.                                                      
Load address: 0xc0007fc0                                                        
Loading: *                                                                      
TFTP error: 'File not found' (1)                                                
Not retrying...                                                                 
Wrong Image Format for bootm command                                            
ERROR: can't get kernel image! `

The image folder and file is chrooted:

root@DESKTOP-26MQUER:/tftpboot/stm32f7# ls -la
drwxrwxrwx 2 root root    4096 gen 12 16:06 .
drwxrwxrwx 3 root root    4096 gen 10 14:36 ..
-rw-r--r-- 1 root root       0 gen 12 16:06 pippo
-rwxrwxrwx 1 root root 1384352 gen 12 16:02 uImage

the tftp file is this

root@DESKTOP-26MQUER:/tftpboot/stm32f7# cat /etc/xinetd.d/tftp
service tftp
{
protocol    = udp
port        = 69
socket_type = dgram
wait        = yes
user        = root
server      = /usr/sbin/in.tftpd 
server_args = /tftpboot
disable     = no    
}

Please notice that the xinetd service is active. I can't understand the problem, guidance will be appreciated.

Answer

sanmar picture sanmar · Jun 14, 2018

Even though this is an old thread.
In my case it problem was that (CentOS) /usr/lib/systemd/system/tftp.service contained only -s [path to dir] and xinet wasn't using tftp config.
So adding switches from xinet tftp config to tftp.service solve my problem.