我在 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/