嵌入式Linux开发环境搭建之八---Ubuntu16.04 tftp环境搭建

简介: 嵌入式Linux开发环境搭建之八---Ubuntu16.04 tftp环境搭建

1、Linux下安装tftp

首先利用命令:dpkg -l | grep tftp,查看tftp是否安装,如果没有安装,则可以按下面步骤进行安装。

1.   1.安装相关软件包:tftpd-hpa(服务端),tftp-hpa(客户端),xinetd
2. 
3.   2.sudo apt-get install tftpd tftp xinetd

2、建立tftp服务文件目录

这个目录用于存放宿主机与目标机之间使用tftp时传递的文件,是可以更改为其他地址的,例如/tftpboot,根据自己需求来设定,并且更改其权限。

1. sudo mkdir /tftpboot
2. sudo chmod 777 /tftpboot

3、建立配置文件

在/etc/xinetd.d/下建立一个配置文件tftp,Linux下的tftp服务是由xinetd(还有openbsd-inetd等其它服务)所设定的,默

认情况下tftp是处于关闭状态,所以要修改tftp的配置文件,开启tftp服务。

sudo vi /etc/xinetd/tftp

在文件中输入以下内容:

1. service tftp 
2. { 
3.     socket_type = dgram
4.     protocol= udp
5.     wait = yes
6.     user = root
7.     server= /usr/sbin/in.tftpd
8.     server_args = -s /tftpboot
9.     disable= no
10.     per_source = 11
11.     cps = 100 2
12.     flags= IPv4 
13. }

4、重新启动服务

sudo/etc/init.d/xinetd restart

然后,使用命令

netstat -au | grep tftp

出现

udp        0      0 ubuntu:tftp             0.0.0.0:*

则说明tftp服务已经开启。  

至此tftp服务已经安装完成了,下面可以对其进行一下测试。

5、本机测试tftp服务器的功能

当前目录~下建立一个测试文件,vim~/test_local.c

并键入内容Thisis a file from local!。保存退出。

在/tftpboot目录下建立一个文件,vim/tftpboot/test_server..c

并键入内容Thisis a file from server!。保存退出。

使用命令ifconfig查看本机ip地址,假设是192.168.1.161

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

1. tftp localhost
2. 
3. tftp>get test_server.c
4. 
5. Received 31 bytes in 0.0 seconds
6. 
7. tftp>quit

通过get命令,可以从/tftpboot下,下载test_server.c文件。这样,就验证了从server端下载文件是成功的。

1. tftp>put test_local
2. 
3. Error code 2: Access violation

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

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

件,且该文件权限允许被覆盖。名在/tftpboot目录中,新建一个test_local.c,并将test_local.c文件设为777。

再次通过tftp上传文件test_local.c

1. tftp>put test_local.c
2. 
3. Sent 30 bytes in 0.0 seconds

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

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

6、由本机向开发板传输文件

利用网线一端连接到开发板的网络接口,另一端连接到PC机的网络接口,然后开发板的IP等设置好.

使用终端SecuereCRT,进入到开发板中,在任意一个目录下,键入命令:

tftp -g -r test_server.c 192.168.1.101

-g:get表示下载,-r:remove,移动。

现在你的开发板已经下载好文件test_server.c。

相关文章
|
10月前
|
Ubuntu Linux UED
Ubuntu和Debian系统与Hat Linux系列的使用比较
所以,如果你想搞一个家用服务器,或者是个人使用,喜欢新鲜事物,那Ubuntu可能是你的最好选择。如果你需要一个在商业环境中经受住考验的系统,那Fedora或CentOS可能更符合你的口味。不过记住,CentOS现在是CentOS Stream,中途换马了,所以如果你是稳定性的极端追求者,可能得考虑一下这一变化。而Debian,则适合那些对稳定性需求极高,不太追求软件版本新旧的用户。
350 26
|
10月前
|
Ubuntu 搜索推荐 Linux
Ubuntu/Debian Hat系Linux的便捷操作指南
总的来说,虽然Ubuntu/Debian和Red Hat系列在操作方法上有所不同,但基本概念类似。掌握了包管理和服务管理,可以应对大多数常见的系统管理任务。同时,这两个系统都有丰富的在线资源可以查询,不管你在任务中遇到什么困难,搜索引擎都能帮你找到答案。这些基本技能能让你在Linux的世界里更加自如。
306 26
|
10月前
|
Ubuntu Linux Shell
Linux环境下VSCode快速安装终极指南:debian/ubuntu/linux平台通用
以上就是在Linux环境下安装VSCode的终极指南,抛开繁复的专业词汇,以平易近人的文字、形象生动的比喻让你轻松学会这一过程。别忘了,你的小伙伴VSCode已经在应用菜单里等你了!
2925 23
|
Ubuntu 安全 Linux
Linux错误排查:解决Ubuntu 20.4执行sudo apt-get update时出现的libnettle.so.6错误。
很有可能在你得到解决方案时,你也学到了不少Linux修复技巧。祝你处理计算机问题时顺利如麻!永远记得,各种问题总是像老鼠一样从意想不到的地方冒出来。但记住,不管它们跑到哪里,最终都逃不过你的捕鼠器。盖起你的计算机,拾起你的代码,大步向前!
416 28
|
Ubuntu 安全 Linux
Linux错误排查:解决Ubuntu 20.4执行sudo apt-get update时出现的libnettle.so.6错误。
很有可能在你得到解决方案时,你也学到了不少Linux修复技巧。祝你处理计算机问题时顺利如麻!永远记得,各种问题总是像老鼠一样从意想不到的地方冒出来。但记住,不管它们跑到哪里,最终都逃不过你的捕鼠器。盖起你的计算机,拾起你的代码,大步向前!
395 18
|
缓存 Ubuntu Linux
Linux中yum、rpm、apt-get、wget的区别,yum、rpm、apt-get常用命令,CentOS、Ubuntu中安装wget
通过本文,我们详细了解了 `yum`、`rpm`、`apt-get`和 `wget`的区别、常用命令以及在CentOS和Ubuntu中安装 `wget`的方法。`yum`和 `apt-get`是高层次的包管理器,分别用于RPM系和Debian系发行版,能够自动解决依赖问题;而 `rpm`是低层次的包管理工具,适合处理单个包;`wget`则是一个功能强大的下载工具,适用于各种下载任务。在实际使用中,根据系统类型和任务需求选择合适的工具,可以大大提高工作效率和系统管理的便利性。
1604 25
|
Ubuntu Linux 开发者
Ubuntu20.04搭建嵌入式linux网络加载内核、设备树和根文件系统
使用上述U-Boot命令配置并启动嵌入式设备。如果配置正确,设备将通过TFTP加载内核和设备树,并通过NFS挂载根文件系统。
779 15
|
存储 监控 Linux
嵌入式Linux系统编程 — 5.3 times、clock函数获取进程时间
在嵌入式Linux系统编程中,`times`和 `clock`函数是获取进程时间的两个重要工具。`times`函数提供了更详细的进程和子进程时间信息,而 `clock`函数则提供了更简单的处理器时间获取方法。根据具体需求选择合适的函数,可以更有效地进行性能分析和资源管理。通过本文的介绍,希望能帮助您更好地理解和使用这两个函数,提高嵌入式系统编程的效率和效果。
699 13
|
负载均衡 Ubuntu 应用服务中间件
nginx修改网站默认根目录及发布(linux、centos、ubuntu)openEuler软件源repo站点
通过合理配置 Nginx,我们可以高效地管理和发布软件源,为用户提供稳定可靠的服务。
1850 13
|
Linux 开发工具 数据安全/隐私保护
嵌入式Linux开发环境搭建之十---阿里云服务器购买及Linux开发环境搭建
嵌入式Linux开发环境搭建之十---阿里云服务器购买及Linux开发环境搭建
364 0
下一篇
开通oss服务