• ubuntu下配置tftp服务以及开发板中通过tftp下载文件


    配置tftp服务的步骤:
    1、安装相关软件包:tftpd(服务端),tftp(客户端),xinetd
    sudo apt-get install tftpd tftp xinetd

    2、建立配置文件(蓝色的目录是可以更改为其他地址的,例如/home/user/tftpboot)
    在/etc/xinetd.d/下建立一个配置文件tftp
    sudo vi tftp
    在文件中输入以下内容:
    service tftp
    {
    socket_type = dgram
    protocol = udp
    wait = yes
    user = root
    server = /usr/sbin/in.tftpd
    server_args = -s /tftpboot
    disable = no
    per_source = 11
    cps = 100 2
    flags = IPv4
    }
    保存退出

    3、建立tftp服务文件目录(上传文件与下载文件的位置),并且更改其权限
    sudo mkdir /tftpboot

    sudu chmod 777 /tftpboot

    4、重新启动服务
    sudo /etc/init.d/xinetd restart
    至此tftp服务已经安装完成了,下面可以对其进行一下测试。


    5. 当前目录~下建立一个测试文件test_local,内容为:

    This is a file from local!

    在/tftpboot目录下建立一个文件test_server,内容为:

    This is a file from server!


    改变用户到root,在~目录运行tftp,

    $tftp 192.168.1.161 (本机的ip地址)

    或tftp localhost

    tftp> get test_server
    Received 31 bytes in 0.0 seconds
    tftp> quit
    $

    通过get命令,可以从/tftpboot下,下载test_server文件。

    这样,就验证了从server端下载文件是成功的。


    tftp> put test_local
    Error code 2: Access violation

    试图通过put命令,把当前目录下的test_local文件,通过tftp上传到它的服务文件目录/tftpboot。

    经查找该错误信息,发现是因为这样的规定:tftp默认只允许下载文件,要上传文件,必须是服务器中已存在同名的文件,且该文件权限允许被覆盖。

    在/tftpboot目录中,touch test_local,并将test_local文件设为777。

    再次通过tftp上传文件test_local

    tftp> put test_local
    Sent 30 bytes in 0.0 seconds

    这样,就验证了从本地向server端上传文件是成功的。

    这样就验证了tftp服务配置的正确性。当文件上传与下载结束后,可以通过quit命令退出。



  • 相关阅读:
    python加速包numba并行计算多线程
    idea Exception in thread "http-apr-8080-exec-2" java.lang.OutOfMemoryError: PermGen space
    centos6.5 导入matplotlib报错 No module named '_tkinter
    pythonTensorFlow实现yolov3训练自己的目标检测探测自定义数据集
    ajax post请求json数据在spring-controller解析
    python keras YOLOv3实现目标检测
    mybatis 插入语句name no find
    python调用百度语音识别接口实时识别
    idea ssm框架搭建
    OpenCVSSDpython目标探测对象检测
  • 原文地址:https://www.cnblogs.com/java20130726/p/3218620.html
Copyright © 2020-2023  润新知