当我通过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"
然后我做了localhost
# 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
响应是:
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
此致 Waqas
答案 0 :(得分:0)
加载:T T T T T T T T T T
意味着根本没有转移;这可能是由错误的界面设置引起的,即 u-boot配置为100Mbit全双工,您尝试通过半双工或10Mbit(或某些混合)进行连接。另一点是MTU大小,应该是1500(u-boot无法处理数据包碎片)
提示windows / vmware用户:
来自u-boot的tftp超时是由windows ip-forwarding引起的。1)如果您有家庭网络:切换它。 2)您正在运行路由和远程访问服务:关闭服务 3)检查注册表的ip转发:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\IPEnableRouter
将值设置为0(可能重启)