我的问题是当我通过 TFTP 将内核映像下载到 Econa 处理器板(Econa 是基于 ARM 的处理器)时,重试次数超出,如下所示
CNS3000 # tftp 0x4000000 bootpImage.cns3420.uclibc
MAC PORT 0 : Initialize bcm53115M
MAC PORT 2 : Initialize RTL8211
TFTP from server 192.168.0.219; our IP address is 192.168.0.112
Filename 'bootpImage.cns3420.uclibc'.
Load address: 0x4000000
Loading: T T T T T T T T T T
Retry count exceeded; starting again
以下是可以帮助您找到此错误原因的要点。
Ping 响应正常
CNS3000 # ping 192.168.0.219 MAC PORT 0 : Initialize bcm53115M MAC PORT 2 : Initialize RTL8211 host 192.168.0.219 is alive
当我尝试验证 TFTP 是否正在运行时,我尝试如下所示。似乎 TFTP 服务器正在工作。我放了一个小文件
/tftpboot
:# echo "Hello, embedded world" > /tftpboot/hello.txt"
然后我做了本地主机
# tftp localhost tftp> get hello.txt Received 23 bytes in 0.1 seconds tftp> quit
请注意,我的机器上没有防火墙或 SELinux。
请验证这些文件的位置是否正常。我已将内核映像文件
bootpImage.cns3420.uclibc
放在/tftpbootTFTP
服务文件中,位于/etc/xinetd.d/tftp
.我的 TFTP 服务文件是:
service tftp { socket_type =dgram protocol=udp wait=yes user=root server=/usr/sbin/in.tftpd server_args=-s /tftpboot -b 512 disable=no per_source=11 cps=100 2 flags=ipv4 }
printenv
U-boot 中的响应是:CNS3000 # printenv bootargs=root=/dev/mtdblock0 mem=256M console=ttyS0 baudrate=38400 ethaddr=00:53:43:4F:54:54 netmask=255.255.0.0 tftp_bsize=512 udp_frag_size=512 mmc_init=mmcinit loading=fatload mmc 0 0x4000000 bootpimage-82511 running=go 0x4000000 bootcmd=run mmc_init;run loading;run running serverip=192.168.0.219 ipaddr=192.168.0.112 bootdelay=5 port=1 bootfile=/tftpboot/bootpImage.cns3420.uclibcl stdin=serial stdout=serial stderr=serial verify=n
环境尺寸:
437/4092 bytes
问候瓦卡斯