软件版本:VMware10;虚拟机:RedHat6.0
TFTP可以用在交叉开发中,把软件从宿主机下载到目标机中。
1.安装TFTP服务器
我的Linux镜像光盘中有Samba的包,所以直接通过光盘安装了,没有的可以自己下载。
mount /dev/cdrom /mnt/ 挂载光盘
rpm -ivh /mnt/Packages/tftp-server-0.49-7.el6.i686.rpm 安装TFTP server
在这安装TFTP软件包的时候可能会报错:
error: Failed dependencies:
xinetd is needed by tftp-server-0.49-7.el6.i686
意思就是TFTP的软件包需要依赖xinetd软件包,所以要先安装xinetd。
rpm -ivh /mnt/Packages/tftp-server-0.49-7.el6.i686.rpm
2.配置TFTP服务器
vim /etc/xinetd.d/tftp
把 disable 改为 no,表示开启TFTP
把server_args 改为自己想要的目录,这个目录是TFTP服务器的主目录。
3.重启TFTP服务器
service xinetd restart或者/etc/init.d/xinetd restart
4.关闭防火墙和selinux,并且ping自己的主机,测试是否能ping通
service iptables stop
setenforce permissive 关闭Selinux
5.在Windows上启动的客户端。
TFTP客户端工具下载:https://pan.baidu.com/s/1T7Rf7wD40qeUvWsqR8bHQQ
6.测试
在刚才TFTP配置文件里server_args 填写的那个目录下新建一个名叫hello.c的文件
代开客户端
服务器地址:PC的IP
主机:虚拟机的IP
本地文件:把Linux中的文件下载到PC中保存的位置和文件名
远程文件:要下载的文件名。
二.安装TFTP-client
上面是Windows主动的上传或者下载文件,现在介绍Linux主动上传和下载。
(1).安装TFTP-client
rpm -ivh /mnt/Packages/tftp-0.49-7.el6.i686.rpm
我的RPM包在/mnt/Packages目录下,没有的要下载。
(2).接下来就是配置TFTP、重启TFTP、关闭防火墙,在安装TFTP-server时已经配好了。
(3).测试
在window端打开TFTP工具,选择正确的目录
在Linux端使用命令:tftp [-4][-6][-v][-l][-m mode] [host [port]] [-c command] 下载和上传
tftp -4 192.168.1.8 -c get hello.c hello1.c //从192.168.1.8(windows)中下载hello.c到本地取名hello1.c(hello1.c可省略,意思是与下载的名字相同)
tftp -4 192.168.1.8 -c put hello1.c hello2.c //上传
三.busybox种的TFTP
偷个懒,复制了链接:https://blog.csdn.net/gaoguoxin2/article/details/39431355
但是命令中有些可以省略,用默认参数,我一般都是直接用这两个命令来上传和下载:
tftp -gr hello.c 192.168.1.21
tftp -pl hello.c 192.168.1.21