TFTP error: ‘Permission denied‘ (0)

项目场景:

环境:ubuntu 5.4.150 开发板:s3c2440

在u-boot中,通过tftp传输uImage文件失败。


问题描述

cpp 复制代码
SMDK2410 # tftp 0x30008000 uImage
dm9000 i/o: 0x20000000, id: 0x90000a46 
DM9000: running in 16 bit mode
MAC: 00:0c:29:4d:e4:f4
could not establish link
Using dm9000 device
TFTP from server 192.168.1.3; our IP address is 192.168.1.100
Filename 'uImage'.
Load address: 0x30008000
Loading: *
TFTP error: 'Permission denied' (0)
Starting again

dm9000 i/o: 0x20000000, id: 0x90000a46 
DM9000: running in 16 bit mode
MAC: 00:0c:29:4d:e4:f4
could not establish link

原因分析:

报错内容为:tftp 权限不足,无法建立网络连接

推测是由于uImage的文件权限或者是tftpboot目录不允许tftp进行读写操作。uImage是我从资料中复制的,而不是系统生成的,uImage的权限可能并不是系统默认的0666.而tftpboot目录没有这个问题。因此,应修改uImage的文件权限。


解决方案:

使用ll命令查看uImage的文件权限

可以看到uImage的文件权限为仅文件拥有者具有读写权限,文件拥有者为linux。

使用ll命令查看tftpboot的目录权限

可以看到tftpboot的目录权限为用户,组用户和其它用户具有读写权限。没有问题

使用chmod命令修改uImage的文件权限

可以看到uImage的文件权限为用户,组用户和其它用户具有读写权限。

重新使用tftp传输uImage文件

传输成功

相关推荐
orion5720 小时前
Missing Semester Class1:course overview and introduction of shell
linux
用户120487221611 天前
Linux驱动编译与加载
linux·嵌入式
用户805533698031 天前
Input 子系统架构:Core、Handler、Driver 三层是怎么协作的
linux·嵌入式
用户805533698031 天前
RK-Forge外设系列开篇 - 把板子从「能启动」变成「能用」:Ethernet/SPI/MMC 三个纯接线外设
linux·github·嵌入式
七歌杜金房2 天前
我终于又有了自己的 Linux 电脑
linux·debian·mac
tntxia3 天前
linux curl命令详解_curl详解
linux
扛枪的书生3 天前
Linux 网络管理器用法速查
linux
顺风尿一寸3 天前
Java Socket 内核之旅:从 SocketChannel.read() 到 tcp_recvmsg 与 epoll 的完整调用链路
linux
XIAOHEZIcode3 天前
Ubuntu 终端美化全栈指南:Bash 到 Kitty 踩坑实录
linux·ubuntu·命令行
唐青枫3 天前
别再只会用 cron:Linux systemd Timer 定时任务实战详解
linux