您现在的位置是:首页 > 编程 > 

Deepin V2 / 统信UOS 下安装与配置 tftp

2025-07-19 03:16:39
Deepin V2 / 统信UOS 下安装与配置 tftp 几个月前,我将开发系统从 ubuntu 切换到 Deepin,当时写过一篇文章《使用国产操作系统作为开发系统》。几个月下来,没有感觉有什么不适应,Ubuntu 能做的事情,在 Deepin 上都能做。而且有 UOS 应用商店的加持,很多 Windows/Linux 应用程序,可以直接从应用商店安装,不需要自己去配置安装,所以总体感觉比

Deepin V2 / 统信UOS 下安装与配置 tftp

几个月前,我将开发系统从 ubuntu 切换到 Deepin,当时写过一篇文章《使用国产操作系统作为开发系统》。几个月下来,没有感觉有什么不适应,Ubuntu 能做的事情,在 Deepin 上都能做。而且有 UOS 应用商店的加持,很多 Windows/Linux 应用程序,可以直接从应用商店安装,不需要自己去配置安装,所以总体感觉比 Ubuntu 用得更顺手一些。

昨天有个朋友在《统信UOS / Deepin系统任务栏卡死解决方法》这篇文章下留言:

我本来想用deepin v2做工作机的,结果连安装个tftp服务都要烧脑,果断换回Ubuntu 24.04.1了

当时我就回复,安装 tftp 不就是一条命令的事吗?

没想到,打脸了。今天有空,在家尝试了一把,使用熟知的命令:

代码语言:javascript代码运行次数:0运行复制
(base) alex@alex-deepin-os:~$ sudo apt install tftpd-hpa
正在读取软件包列表... 完成
正在分析软件包的依赖关系树... 完成
正在读取状态信息... 完成           
没有可用的软件包 tftpd-hpa,但是它被其它的软件包引用了。
这可能意味着这个缺失的软件包可能已被废弃,
或者只能在其他发布源中到

E: 软件包 tftpd-hpa 没有可安装候选
(base) alex@alex-deepin-os:~$ sudo apt install tftpd
正在读取软件包列表... 完成
正在分析软件包的依赖关系树... 完成
正在读取状态信息... 完成           
E: 无法定位软件包 tftpd
(base) alex@alex-deepin-os:~$ sudo apt install tftp-hpa
正在读取软件包列表... 完成
正在分析软件包的依赖关系树... 完成
正在读取状态信息... 完成           
E: 无法定位软件包 tftp-hpa
(base) alex@alex-deepin-os:~$ sudo apt install tftp
正在读取软件包列表... 完成
正在分析软件包的依赖关系树... 完成
正在读取状态信息... 完成           
E: 无法定位软件包 tftp

Deepin V2 的仓库中确实没有 tftp 相关的包,不是一个安装命令就能搞定的事。

但作为一名程序员,怎么可能止步如此呢?当然是继续出答案啦。

在开始之前,先简单介绍一下 tftp。

TFTP(Trivial File Transfer Protocol,简单文件传输协议)是一种简单的文件传输协议,它很轻量。大众可能更熟悉 FTP 或 SFTP,TFTP 则是程序员用得比较多,比如烧写板子的固件或操作系统。

印象中,Debian 的 packages 中有 tftp 的包,没理由 Deepin 没有。所以,我就去 deepin 的包列表网站去是否有 deb 包。结果一查看,真的有。

但这个包并没有在 Deepin V2 的仓库中,因为 Deepin V2 的官方源如下:

代码语言:javascript代码运行次数:0运行复制
$ cat /etc/apt/sources.list
## Generated by deepin-installer
deb / beige main commercial community
#deb-src / beige main commercial community

为什么 tftp 的包没有放在 Deepin V2 的仓库中?我猜想的原因是 Deepin V2 开始支持 arm、龙芯、RISC-V 架构,但这个包只 build 出 x86 架构的,还没有构建出其它架构的包,所以就没有加入到 Deepin 的源中。

如果你只是在 x86 架构的 Deepin 系统上安装 tftp,接下来就简单了。

第 1 步:安装 tftpd 和 tftp

下载 tftpd-hpa_5.2+20150808-1+b1_amd64.deb、tftp-hpa_5.2+20150808-1+b1_amd64.deb 包,双击安装。

安装之后,检查 tftp 服务是否启动:

代码语言:javascript代码运行次数:0运行复制
(base) alex@alex-deepin-os:~$ sudo systemctl status tftpd-hpa.service
请输入密码:
验证成功
● tftpd-hpa.service - LSB: HPA's tftp server
     Loaded: loaded (/etc/init.d/tftpd-hpa; generated)
     Active: active (running) since Sun 2024-10-20 15:24:27 CST; 2min 2s ago
       Docs: man:systemd-sysv-generator(8)
    Process: 12 ExecStart=/etc/init.d/tftpd-hpa start (code=exited, status=0/SUCCESS)
      Tasks: 1 (limit: 8286)
     Memory: 688.0K (peak: 1.7M)
        CPU: 6ms
     CGroup: /system.slice/tftpd-hpa.service
             └─1246 /usr/sbin/ --listen --user tftp --address 0.0.0.0:69 --secure /srv/tftp

10月 20 15:24:27 alex-deepin-os systemd[1]: Starting tftpd-hpa.service - LSB: HPA's tftp server...
10月 20 15:24:27 alex-deepin-os tftpd-hpa[12]: Starting HPA's tftpd: .
10月 20 15:24:27 alex-deepin-os systemd[1]: Started tftpd-hpa.service - LSB: HPA's tftp server.

第 2 步:配置 TFTP 服务器

安装完成后,需要配置位于 /etc/default/tftpd-hpa 的 TFTP 服务器主配置文件。

sudo vi /etc/default/tftpd-hpa 在编辑器中,修改 TFTP_DIRECTORY 的值,指定 tftp 服务器存放文件的目录,比如指定为 /var/lib/tftpboot:

代码语言:javascript代码运行次数:0运行复制
TFTP_USERAME="tftp"
TFTP_DIRECTORY="/var/lib/tftpboot"
TFTP_ADDRESS="0.0.0.0:69"
TFTP_OPTIOS="--secure"
第 步:创建 tftp 文件目录

配置完成后,创建共享目录并设置允许用户访问所需的权限。

代码语言:javascript代码运行次数:0运行复制
sudo mkdir -p /var/lib/tftpboot
sudo chown -R nobody:nogroup /var/lib/tftpboot
sudo chmod -R 777 /var/lib/tftpboot

为了避免权限问题,这里给了完全的读写权限。在实际工作中,可能只是用作固件下载,可以给只读权限,这个取决于需求。

然后重启 tftp 服务器:

代码语言:javascript代码运行次数:0运行复制
sudo systemctl restart tftpd-hpa
第 4 步:测试 tftp 服务

前面安装的 tftp-hpa_5.2+20150808-1+b1_amd64.deb 实际上是 tftp 的客户端。所以,可以在命令行中使用 tftp 命令连接到服务器,后面跟服务器的 IP 地址:

代码语言:javascript代码运行次数:0运行复制
tftp 192.168..202

连接成功后显示 tftp> 提示符。可以输入 tftp 命令,比如 status、get、put 等。

代码语言:javascript代码运行次数:0运行复制
(base) alex@alex-deepin-os:~/Downloads$ tftp 192.168..202
tftp> status
Connected to 192.168..202.
Mode: netascii Verbose: off Tracing: off Literal: off
Rexmt-interval: 5 seconds, Max-timeout: 25 seconds

下载文件用 get 命令,比如:

代码语言:javascript代码运行次数:0运行复制
tftp> get tecmint.info
Error code 1: File not found
tftp> get 2.png
tftp>

上传文件使用 put 命令:

代码语言:javascript代码运行次数:0运行复制
tftp> put 

tftp 设计得相当简单,没有很大的提示。如果你在烧写固件中碰到错误,可以尝试一下将配置文件中的

TFTP_OPTIOS="--secure"

改成空试试。

小结

由于 Deepin V2 仓库中没有包含 tftp 相关包,所以在安装上会有点小麻烦。但这点小麻烦在程序员眼里不知一提。在下载了安装包后,后面的安装配置就相当简单。

Deepin V2 仓库中没有 tftp 的包,可能是由于缺少多架构支持,加上 tftp 确实比较使用的人很少,所以没有包含在官方仓库中。希望在后面的更新中可以包含进来。

本文参与 腾讯云自媒体同步曝光计划,分享自。原始发表:2024-10-20,如有侵权请联系 cloudcommunity@tencent 删除服务器架构配置权限Deepin

#感谢您对电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格的认可,转载请说明来源于"电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格

本文地址:http://www.dnpztj.cn/biancheng/1133440.html

相关标签:无
上传时间: 2025-07-18 22:33:58
留言与评论(共有 18 条评论)
本站网友 镇痫片
10分钟前 发表
24
本站网友 南岳二手房
28分钟前 发表
25 seconds 下载文件用 get 命令
本站网友 赖氏经典语法
28分钟前 发表
所以在安装上会有点小麻烦
本站网友 越秀外国语学院
24分钟前 发表
HPA's tftp server... 10月 20 15
本站网友 招安是什么意思
14分钟前 发表
RISC-V 架构
本站网友 mp3分割器
25分钟前 发表
loaded (/etc/init.d/tftpd-hpa; generated) Active
本站网友 不差钱2
14分钟前 发表
Ubuntu 能做的事情
本站网友 什么是邮箱地址
3分钟前 发表
man
本站网友 苏州泉屋百货
30分钟前 发表
~$ sudo apt install tftpd-hpa 正在读取软件包列表... 完成 正在分析软件包的依赖关系树... 完成 正在读取状态信息... 完成 没有可用的软件包 tftpd-hpa
本站网友 华硕触摸板驱动
27分钟前 发表
可以直接从应用商店安装
本站网友 万科房地产有限公司
11分钟前 发表
代码语言:javascript代码运行次数:0运行复制(base) alex@alex-deepin-os
本站网友 大连船舶
26分钟前 发表
还没有构建出其它架构的包
本站网友 达州楼盘
27分钟前 发表
这个取决于需求
本站网友 怀化妇科
6分钟前 发表
这个取决于需求
本站网友 皇冠报价
7分钟前 发表
可以在命令行中使用 tftp 命令连接到服务器
本站网友 递归查询
14分钟前 发表
没有很大的提示
本站网友 角都怎么死的
16分钟前 发表
检查 tftp 服务是否启动:代码语言:javascript代码运行次数:0运行复制(base) alex@alex-deepin-os