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文件

传输成功

相关推荐
敲上瘾几秒前
企业开发工具git的使用:从入门到高效团队协作
linux·git·gitee·github·开发工具
时光飞逝的日子7 分钟前
Ubuntu搭建TFTP服务器的方法
linux·ubuntu·tftp
code monkey.12 分钟前
【寻找Linux的奥秘】第六章:环境变量
linux·操作系统·环境变量
✿ ༺ ོIT技术༻2 小时前
Linux:网络层的重要协议或技术
linux·服务器·网络
付出不多3 小时前
linux——mysql高可用
linux·运维·mysql
C-DHEnry9 小时前
Linux概述:从内核到开源生态
linux
蟑螂恶霸9 小时前
解决ubuntu20中tracker占用过多cpu,引起的风扇狂转
linux·运维·ubuntu
rzsh12349 小时前
[ linux-系统 ] 进程地址空间
linux
广药门徒9 小时前
STM32简易计算机设计
stm32·单片机·嵌入式硬件
1024小神9 小时前
tauri2项目使用sidcar嵌入可执行文件并使用命令行调用
linux·运维·服务器