embedded-linux - TFTP 错误 : 'File not found'

标签 embedded-linux tftp

我在 Kali Linux native ( Linux 4.6.0-kali1-amd64 x86_64 ) 上使用 minicom 在 stm32f746g-Disco 上安装嵌入式 linux。

设置tftp协议(protocol)后,与板子的以太网连接 ,在构建内核并将图像放入适当的文件夹后(\tftpboot\stm32f7\uImage 是图像的路径和名称),我开始使用 minicom 与开发板进行通信。

与开发板的通信正常,但问题是即使路径正确,开发板也无法读取内核镜像:

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! `

图像文件夹和文件已chroot:

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

tftp文件是这个

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    
}

请注意xinetd 服务是活跃的。 我不明白这个问题,指导将不胜感激。

最佳答案

即使这是一个旧线程。
在我的例子中,问题是 (CentOS) /usr/lib/systemd/system/tftp.service 仅包含 - s [path to dir]xinet 没有使用 tftp config
所以从 xinet tftp config tftp.service 解决了我的问题。

关于embedded-linux - TFTP 错误 : 'File not found' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41616266/

相关文章:

c - TFTP 中的超时和重新传输问题

c - 我如何使用 SIGALRM 中止我的服务器连接?

linux - Tftp 命令实现在本地环形缓冲区中获取远程数据

Cmake 将库添加到自定义 gcc 编译器

c - ioremap - 无法处理虚拟地址 XXXXXXXX 处的内核分页请求

linux - 使用 nfs rootfs 读取 tty 时出现问题

python - (Python/TFTP-Server)如何监听(尚未)现有的IP地址(RNDIS)?

c - 我如何处理与硬件更改相关的给定情况

c - 为什么我的小 C 循环不能正确打印到帧缓冲区,但它的展开版本可以?