分类: 嵌入式
2010-10-13 21:09:52
这段时间在弄三星的2410的移植,用到了tftp,我用的是ubuntu9.04,在网上看到了很多文章,但是发现很多文章讲的都很模糊,或者根本就是 错的,只好自己琢磨,走了很多弯路,费牛劲终于弄出来了,为了避免同行和我一样走弯路,特把我的一些总结贴出来和大家共享,有什么不对的地方希望大家指 正,大家有什么问题也可以一起探讨一下。
ubuntu 下tftp 设置方法:
1:sudo apt-get install tftp tftpd openbsd-inetd
特别指出很多文章里用的是netkit-inetd,但是实际下载时发现
这个软件是下不到的,特改用openbsd-inetd,实验效果不错。
2:在根目录下创建文件夹 tftpboot
cd /
sudo mkdir tftpboot 建立文件夹
sudo chmod 777 tftpboot 更改文件夹权限
3: sudo gedit /etc/inetd.conf 修改成如下样子
tftp dgram udp wait nobody /usr/sbin/tcpd
/usr/sbin/in.tftpd /tftpboot
4: sudo gedit /etc/xinetd.d/tftp 修改成如下样子(如果没有tftp文件就创建它)
service tftp
{
disable =no
socket_type =dgram
protocol =udp
wait =yes
user =root
server =/usr/sbin/in.tftpd
server_args =-s /tftpboot -c
source = 11
cps = 100 2
}
5: sudo gedit /etc/default/tftpd-hpa 修改成如下样子(如果没有tftpd-hpa文件就创建它)
RUN_DAEMON="no"
OPTIONS="-s /tftpboot -c -p -U tftpd"
6:sudo /etc/init.d/openbsd-inetd reload
sudo in.tftpd -l /tftpboot
7: 在tftpboot文件夹下新建测试文件 aaa
cd /tftpboot
sudo touch aaa
sudo chmod 777 aaa
9: 开始测试tftp服务
cd /home
tftp 192.168.1.111
get /tftpboot/aaa
如果没有出现错误代码且在home目录下出现aaa文件则证明tftp
服务建立成功
注意: 1:如果出现permission denied 错误 则是操作者权限不够,
需要提升权限
su root
输入密码后就可以正常进行tftp传输操作了
2:如果出现Access violation错误 则是文件权限没有解开,
将要操作的文件操作权限全解开就可以了
chmod 777 文件名