普通视图

发现新文章,点击刷新页面。

Minecraft 生存服务器来啦「1.21.8 版」

作者 Teacher Du
2026年1月2日 00:00

杜老师在家用机上搭建了一个 Minecraft 游戏平台,配置为 16H32G 内存,500M 的带宽,预估支持 30 人同时在线。如果您喜欢玩我的世界,又感觉自己玩没有意思,欢迎加入我们平台,大家一起 play 一起 happy!

注意事项

  1. 本服务端仅支持 Java 版 Minecraft,内置常用插件,身份验证、领地、家设置等;

  2. 服务端目前支持 1.21.8 版本,如果您已有客户端,只需进入多人游戏,输入杜老师服务器的地址 mc.dusays.com 即可「如果连接失败可加上端口 mc.dusays.com:25565」

  3. 我们将平台设置为生存模式,容易难度,重生保留物品,并开启了防爆模式;

  4. 游戏无 GM 直接干预,没有任何隐藏收费项目;

  5. 我们本着共同游戏更多快乐原则,谢绝恶意玩家进入,请不要破坏他人的劳动成果,谢谢;

  6. 本游戏服长期有效,只要有一个人在线,游戏服就不会关闭,同时每周进行数据备份;

  7. 如有任何问题,可在评论区内留言,杜老师都会积极帮大家解决;

  8. 最终解释权归杜老师说所有。欢迎加 QQ 群 454279233。

1.21.8 客户端

如果您没有客户端,可下载杜老师整合的客户端:

下载地址

游戏截图

游戏主城截图:

生存村庄界面:

模组版本

2026 年 01 月 20 日更新:

功能名称版本
IAItemsAdder4.0.15
MOTDminimotd-bukkit2.1.2
NPCCitizens2.0.40-b3959
扩展PurpurExtras1.37.0
TABTABv5.4.0
世界保护worldguard-bukkit7.0.14-dist
全息图DecentHolograms2.9.9
全球市场PlayerAuctions1.32.1
创世神worldedit-bukkit7.3.17
前置CMILib1.5.7.4
前置nightcore2.11.0
前置ProtocolLib5.4.1-SNAPSHOT-aa4fab1
前置Vault1.7.3-b131
变量PlaceholderAPI2.11.7
基础CMI9.8.4.4
多世界Multiverse-Core4.3.1
快捷键xShiftFCommand1.0.0
抽奖ExcellentCrates6.6.1
插件管理PlugManX3.0.1
权限LuckPerms-Bukkit5.5.16
正版验证PremiumVerify1.0.8
每日任务ODailyQuests3.0.1
每日回收UltimateShop3.12.5
点券PlayerPoints3.3.3
玩家地标PlayerWarp2.2.1-free
登录AuthMe5.6.0
登录标题AuthMeTitles2.6.6
离线皮肤SkinsRestorer15.9.3
称号PlayerTitle4.11.2-free
签到LiteSignIn1.8.9.0
箱子商店QuickShop-Hikari6.2.0.10
经济XConomy-Bukkit2.26.3
菜单DeluxeMenus1.14.1-Release
随机传送BetterRTP3.6.13
领地Residence6.0.1.2

DEB 和 RPM 有什么区别

作者 Teacher Du
2025年12月3日 00:00

在 Linux 系统中,软件的安装和管理通常依赖于软件包(Package),而 .deb 和 .rpm 是两种最主流的软件包格式。它们分别服务于不同的 Linux 发行版生态系统,不仅文件后缀不同,所使用的工具链、依赖管理方式、系统集成方式等方面也各有特点。本文将从多个角度对这两种格式进行深入解析。

基础定义

格式全称主要用途
.debDebian Binary Package用于 Debian 及其衍生系统
.rpmRPM Package Manager用于 Red Hat 等及其衍生系统

软件包管理工具的不同

操作.deb 系列.rpm 系列
低层包管理器dpkgrpm
高层包管理器apt、apt-get、gdebiyum、dnf、zypper
自动解决依赖apt 系列具备强大的自动依赖解决能力yum / dnf 支持自动依赖解析
安装命令示例sudo apt install ./xxx.deb ; sudo dpkg -i xxx.debsudo yum install xxx.rpm ; sudo rpm -ivh xxx.rpm

软件包内部结构差异

尽管 .deb 和 .rpm 都包含软件的可执行文件、元信息、安装脚本等,但它们的打包方式和控制文件结构并不相同:

1
2
3
4
5
6
7
8
9
10
11
.deb 软件包结构:
.deb 文件实际上是一个 ar 档案,包含:
├── control.tar.gz → 控制信息(如版本、依赖、脚本)
├── data.tar.gz → 软件内容(实际文件)
├── debian-binary → 版本信息(固定为2.0)
.rpm 软件包结构:
.rpm 文件是经过 CPIO 和 RPM 格式封装的结构,包含:
├── 包描述信息(名称、版本、架构等)
├── 安装/卸载脚本(%pre、%post、%preun、%postun)
├── 文件列表及路径
├── 安装数据(通过 CPIO 解包)

平台兼容性

.deb 和 .rpm 是彼此不兼容的,不同包管理器和元数据结构使它们无法直接在非原生系统中使用。但可以通过跨格式转换工具实现临时兼容;

注意:转换后的包可能在目标系统中运行异常,特别是涉及依赖项或系统级服务时。

系统集成差异

.deb 系列操作系统默认使用 systemd 或 sysvinit 管理服务,依赖包也多以 .deb 分发。

.rpm 系统通常更加倾向于企业级应用部署,具备更强的 SELinux、Firewalld 集成与限制管理。

此外,.rpm 包更早支持数字签名验证(GPG 签名),而 .deb 也已在 apt 中引入类似机制。

使用场景与生态对比

项目.deb 系列(如 Ubuntu、麒麟桌面、统信桌面).rpm 系列(如 openEuler、麒麟服务器、统信服务器)
使用人群个人用户、国产桌面操作系统用户居多企业级、服务器、运维自动化场景多见
系统更新频率快,偏向社区活跃发展稳定,重视长期支持(LTS)版本
支持工具apt, dpkgyum, dnf, rpm, zypper

ima 任务模式邀请码分享

作者 Teacher Du
2025年11月27日 00:00

在当今快节奏的工作中,高效的信息处理与内容创作工具越来越受到人们的青睐。腾讯推出的 ima,是一款以知识库为核心,面向学习与办公场景的 AI 智能工作台,致力于帮助用户提升信息获取效率并大幅提高内容创作的效率与质量。

ima 工作台简介

高效获取信息:无论是全网搜索还是基于个人知识库,ima 都能快速定位精准答案;

智能解读内容:支持对文档、网页、图片、音视频等多种格式内容进行 AI 解读与总结;

便捷知识沉淀:可将公众号文章、网页、笔记、文档等一键加入个人或共享知识库,形成自己的知识体系;

辅助内容创作:提供 AI 写作、扩写、缩写、翻译、脑图生成等能力,助力用户高效产出高质量内容。

任务模式

智能任务生成

用户仅需输入主题描述,或通过 @ 指定个人/共享知识库,ima 就能基于你的需求与知识储备,智能生成结构化内容,如行业报告、项目总结、分析文档等。

支持生成 播客音频内容,可选择对谈人数、音色,模拟真实对话场景,适用于知识分享、培训、访谈类内容创作。

结构化输出

生成的报告自带 目录导航,目录条目与报告内容层级一一对应,点击即可快速跳转,便于阅读与分享。

播客内容支持 音频下载,便于后续传播与再加工。

个性化延续

系统会自动记录用户上次使用的音色与对谈人数设置,下次使用时无需重复配置,提升连续创作体验。

任务模式体验申请机制

任务模式目前为邀请制体验功能,并非所有用户默认开放。用户需要通过申请获得体验资格,体验期内每日有使用次数限制(通常为每日 5 次,次数每日重置)。

邀请分享

由于任务模式目前处于 逐步开放体验阶段,并非所有用户默认可用,因此官方设置了 邀请码分享机制,以便于感兴趣的用户通过官方渠道或已体验用户获取试用资格。

若你想体验 ima 任务模式,可按如下步骤申请:

第一步:确保你的 ima 客户端为最新版本

手机端(iOS/Android/鸿蒙)或电脑端(Windows/Mac)的 ima 版本需 升级至 2.0 或更高版本。

第二步:进入任务模式入口

在 ima 对话界面中,切换至「任务模式」(通常在模式选择区或功能入口中可以找到)。

第三步:点击“申请体验”

在任务模式页面,会有 “申请体验”按钮,点击后提交申请。

第四步:等待官方审核与邀请码发放

任务模式体验资格将 根据申请顺序分批发放,通过审核后,你将在 ima 端内收到 站内信通知,内含你的 体验资格及可能的邀请码(如有)。

第五步:开始使用

获得体验资格后,每个账号 每日最多可体验 5 次任务模式功能,系统可能会根据实际运营情况调整使用次数。

本站分享

杜老师获取了 3 个 任务模式体验资格,可通过如下方式使用:

  1. 在本站评论去留言,留下邮箱接收;

  2. 本站在看到留言后,会尽快发送邀请码到你的邮箱;

  3. 收到邀请码后,可在 ima 端内使用 “邀请码” 功能,输入邀请码即可获取体验资格。

  4. 目前剩余一个邀请码,最终解释权归杜老师说所有。

Temp Mail 兼具隐私和便捷性的最佳临时电子邮件服务

作者 Teacher Du
2025年11月21日 00:00

您是否曾经需要一个快捷的电子邮件地址?比如注册游戏或网站?这时 Temp Mail 就能派上用场了!它能为您提供一个可在短时间内使用的临时电子邮件地址。

什么是临时邮件?

使用临时邮箱,您可以创建一个有效期仅为 24 小时的电子邮件地址。这意味着您无需使用真实邮箱即可注册网站或 Facebook、Twitter 等社交媒体。它非常适合保持您的收件箱整洁!

有了临时邮箱后,您就可以立即阅读收到的邮件。超级简单方便!

因此,如果您想尝试一下,只需访问 Temp Mail 并立即获取您的临时电子邮件地址!

在深入探讨最佳实践之前,让我们先来了解一下临时邮箱的各种术语。常见的名称包括一次性邮箱地址、一次性邮箱地址、10分钟邮箱地址和一次性邮箱地址。其他术语,例如虚假邮箱地址、匿名邮箱账户和别名邮箱地址,则强调了其隐私功能。此外,临时邮件和自毁邮箱地址则强调了其保护您的主邮箱免受垃圾邮件侵害的用途。这些术语都体现了增强安全性和有效管理通信的目标,并且可以互换使用。

主要特点和优势

  • 临时电子邮件地址

使用临时邮箱地址是明智之举。它能确保您真实邮箱的安全。您可以随时创建新邮箱。这样,您就可以避免收到垃圾邮件和不需要的邮件。

  • 轻松注册网站和社交媒体

使用临时邮箱注册网站和社交媒体非常方便。您只需输入临时邮箱地址即可。无需分享您的真实邮箱地址。这可以确保您的信息安全。

  • 隐私保护

您的隐私至关重要。使用临时邮箱,您的个人数据安全无虞。所有邮件将在一小时后删除。您也可以随时删除临时邮箱。这意味着没有人可以追踪您。

有关我们如何保护您的隐私的更多详细信息,请查看我们的隐私政策

使用临时邮箱是保障网络安全的好方法。立即试用!

临时邮件的理想用户

您是否曾经想在线注册某些服务,但又不想使用真实邮箱?这时,临时邮箱 就派上用场了!它非常适合那些想要保持邮箱整洁的用户。

以下是 Temp Mail 的一些理想用户:

  • 想要尝试新服务但又不想泄露个人电子邮件的人。
  • 需要注册在线资源但又想避免垃圾邮件的学生。
  • 任何重视隐私并希望保证信息安全的人。

使用临时邮件很简单,并且可以帮助您在线保持安全!

临时邮件的优点和缺点

你听说过临时邮箱吗?它是一款很酷的工具,可以为你提供一个临时的电子邮件地址。但它真的有用吗?让我们来一探究竟!

优势缺点
保护您的隐私可能会被某些网站屏蔽
便于使用电子邮件可能很快就会过期
无需注册与常规电子邮件相比功能有限

总而言之,临时邮箱有其优缺点。它在保护隐私方面做得很好,但可能并非万能。您觉得呢?

临时邮件适合您吗?

您是否曾经需要邮箱地址,但又不想使用真实邮箱?这时,Temp Mail 就派上用场了!它能为您提供一个临时邮箱地址。您可以用它来注册网站或获取验证码。但它真的适合您吗?如果您想保障网络安全并避免垃圾邮件,那么答案是肯定的!但请记住,它不适用于发送重要邮件。

使用临时电子邮件的最佳实践

临时邮箱服务对于管理在线隐私和沟通至关重要。随着垃圾邮件和数据泄露事件的增多,临时邮箱提供了一种保护个人信息的实用方法。本指南概述了有效使用临时邮箱的最佳实践,帮助您在享受其优势的同时,确保在线活动的安全性和便捷性。

1.使用临时邮件满足临时需求

临时邮箱非常适合短期用途,例如订阅新闻简报、查看一次性优惠或注册您不完全信任的网站。请避免使用临时邮箱进行长期或重要的通信,因为收件箱通常会在短时间后被删除。

2.避免使用临时邮件发送敏感信息

虽然临时邮箱可以保护您的主邮箱免受垃圾邮件的侵扰,但它并非用于处理敏感信息。请避免使用临时邮箱进行金融交易、个人通信或任何涉及敏感数据的活动。

3.定期清除浏览器缓存

使用临时邮箱时,建议定期清除浏览器缓存和 Cookie。这有助于保护您的隐私,并确保不会留下任何可能被利用的残留数据。

4.保持临时邮件匿名

临时邮箱的主要优势之一是匿名性。请勿将您的临时邮箱地址与您的主邮箱或任何个人信息关联。这有助于保障您的身份安全并保护您的在线活动隐私。

5.谨慎使用链接和附件

与普通电子邮件一样,请谨慎处理临时邮箱收件箱中收到的任何链接或附件。这些链接或附件可能包含恶意软件或钓鱼攻击。请仅与来自可信来源的内容进行互动。

6.使用临时邮箱进行多次注册

如果您需要在一个平台上注册多个帐户,临时邮箱会是一个很有用的工具。它可以让您快速轻松地创建多个地址,从而帮助您管理多个帐户,而不会使主收件箱变得杂乱无章。

推荐的临时邮箱网站

Dockerd 日志太多?磁盘爆了?一篇教您搞定容器日志问题

作者 Teacher Du
2025年11月15日 00:00

Docker 重度使用者们,您了解过 Docker 日志吗?如何查找、减少以及管理日志,从而有效节省磁盘空间!今天分享一下如何处理 Docker 日志的问题。

日志好坑

Docker 默认使用的是 json-file 日志驱动。日志会一直写,没有限制、没有轮转、没有清理!日志默认位置:

1
/var/lib/docker/containers/<container-id>/<container-id>-json.log

当您发现它时,可能已经:

1
2
3
4
IO 等待时间长
占了几十个 G
吃满磁盘
服务挂了

处理问题

主要通过日志轮询方式处理,下面介绍两种方式设置日志轮询。在运行容器时设置轮转策略:

1
2
3
4
5
6
docker run -d \
--name myapp \
--log-driver json-file \
--log-opt max-size=10m \
--log-opt max-file=3 \
myapp:latest

参数解释:

参数解释
max-size=10m单日志文件最大 10MB
max-file=3最多保留 3 个轮转文件,容器总日志控制在 30MB 内

修改 Docker 的配置,该配置适用于所有容器,编辑 Docker 配置文件/etc/docker/daemon.json:

1
2
3
4
5
6
7
{
"log-driver": "json-file",
"log-opts": {
"max-size": "10m",
"max-file": "5"
}
}

重启下 Docker 服务,注意只对之后创建的容器生效!

1
systemctl restart docker

日志清理

正运行的容器,可以这样快速清理日志「生产环境慎用」

1
echo "" > $(docker inspect --format='{{.LogPath}}' <container-id>)

或者更稳一点:

命令解释
docker stop停掉容器
docker rm删除容器

禁用日志输出,这个操作慎用,有可能到影响应用运行,而且不方便后续的排查:

1
docker run --log-driver=none <container-id>

日志快速清理,仅推荐在磁盘告急临时使用:

1
find /var/lib/docker/containers -name *-json.log -exec truncate -s 0 {} \;

实战建议

根据不同的场景推荐配置值:

场景配置值一配置值二
开发环境max-size=5mmax-file=3
测试环境max-size=10mmax-file=5
生产环境max-size=50mmax-file=10

最佳实践:

1
2
3
用 json-file+max-size+max-file
修改 daemon.json 设置全局默认值
旧的容器要么清理日志,要么重启带有轮转参数

二手手机值得买吗?数码爱好者的省钱换机经验

作者 Teacher Du
2025年11月9日 00:00

作为一名资深的数码爱好者,杜老师有个坚持多年的习惯:每年小米新品旗舰发布,必定第一时间入手尝鲜,再把手上的旧机挂出去二手转出。本以为这样能“以旧补新”降低成本,可算下来每年差价依然不菲,长期累积竟是一笔不小开支。期间杜老师也接触很多二手平台,但感觉不靠谱。直到杜老师接触了某转平台,才算真正找到了兼顾体验与性价比的二手换机方案。

背景

对数码迷来说,新机的吸引力不言而喻。小米每一代旗舰的性能升级、影像优化、系统创新,都会让杜老师忍不住想第一时间上手体验。

以前更换手机,都是新品一到手就会把旧机挂在个人闲置渠道,不仅要反复的沟通议价,还要担心买家挑剔成色、质疑质量,最后往往只能低价成交。

更关键的,即便算上旧机残值,每年换小米新机的净支出仍要两千多,长期下来成本压力越发明显。

期间杜老师也接触很多二手平台,但感觉不靠谱。很多商家会把二手机器进行翻新,外观上看不到任何使用痕迹,但电池健康度极低,运行主流 APP 都卡顿不堪,体验极差。

平台

后来身边的朋友推荐杜老师试试某转,说是平台能解决二手交易的信任难题,价格也更实在。抱着试试看的心态,杜老师第一次在某转上入手了一台 95 新的小米旗舰机型。

下单前杜老师特意研究了平台的官方验机服务,发现每一台手机都会经过 20 道外观检测和 55 道功能检测,从屏幕的显示、电池的健康到核心硬件性能都有详细报告,连边框的细微划痕、电池循环次数都标注得一清二楚,完全杜绝了暗病机、翻新机的隐患。

体验

在收到手机后,实际体验比预期更惊喜。机身的成色几乎和新机无异,仅在边角有极难察觉的使用痕迹,电池健康度保持在百分之 90 以上,日常使用一天一充完全够用,运行主流 APP 和大型游戏都流畅无卡顿,和新机的体验差距极小。

而价格仅为新机首发价的一半多,直接省下一千多元,这笔钱足够再入手一副无线耳机,大幅降低换机成本。

其实很多人对二手手机的顾虑本质上是担心质量没保障、交易会有风险。但正规平台标准化服务,早已解决这些痛点。

某转不仅有专业验机和一年质保服务,还支持七天无理由退换,让二手交易变得和购买新机一样省心。

总结

对杜老师这种每年都想追新的数码爱好者来说,用某转入手上一代旗舰,既能以低成本享受高端体验,又可以把旧机通过平台高价转出,形成低成本循环换机的闭环。

现在杜老师早已放弃新机必买全新的执念。毕竟手机更新迭代速度飞快,旗舰机型性能冗余足够支撑两年使用,二手的准新机的性价比无疑更高。

某转上官方验机报告和质保服务,让杜老师彻底打消对二手手机的顾虑,每年换小米机型的成本直接降低了近一半。

回到最初问题:二手手机值得买吗?答案因人而异,但是对追求性价比的数码爱好者来说,选对平台至关重要。像某转这样的正规平台,用标准化服务抹平二手交易的信息差,让二手手机既能省钱又省心。

最近总觉得脑子不够用?杜老师的脑力不足自救实录

作者 Teacher Du
2025年11月3日 00:00

不知道有没有朋友和杜老师一样,最近这段时间总是被脑力不足的状态困扰。以前处理工作、规划生活都会游刃有余,现在却频繁陷入反应慢半拍、记不住事的窘境,连原本轻松日常都变得有些吃力。今天就来好好聊聊这种状态,也分享下杜老师为了改善它做的那些尝试。

具体表现

先说说杜老师感受到的脑力不足具体表现,真的是渗透在生活和工作的方方面面。工作上最明显的就是专注力严重下降。

以前能安安稳稳连续处理两三个小时任务,现在坐下来不到半小时,思绪就会不受控制飘走,一会儿想起没晾的衣服,一会儿纠结晚上吃什么,哪怕强行把注意力拉回来效率也大打折扣。

除了工作,日常里脑子短路也特别频繁。和朋友聊天有时候想表达一个简单的观点,话到嘴边却突然卡壳了,想不出合适的词语;甚至有时候会对着手机屏幕发呆,忘了自己打开手机要做什么。

更关键的,这种状态还伴随着明显的疲惫感,不是身上的累,而是脑子转不动的疲惫,哪怕休息了一会儿,也很难恢复到以前精力充沛状态。

调整作息

当意识到问题越来越严重后,杜老师开始主动尝试各种办法来改善,毕竟总不能一直陷在这种低效又焦虑的状态里。

首先从作息上入手,杜老师发现之前经常熬夜刷手机,凌晨一两点才睡觉,早上得早起赶通勤,睡眠不足肯定是脑力下降的重要原因。

于是杜老师给自己定了强制休息规则,晚上 11 点之前必须放下手机,哪怕睡不着也躺在床上闭目养神,尽量保证 8 小时的睡眠。

刚开始执行的时候特别艰难,总忍不住想刷会儿视频,但坚持了一周左右,明显感觉早上起床后脑子没那么昏沉,专注力也稍微好了一点。

饮食运动

其次是调整饮食和运动习惯。以前杜老师早上赶时间,经常不吃早饭,中午也会随便点份外卖应付,晚上又喜欢吃重油重盐大餐。

查了一些资料发现,大脑运转需要充足营养,比如蛋白质以及维生素 B 族这些,不合理的饮食会直接影响到脑力。

所以现在杜老师会提前准备好第二天早餐,比如鸡蛋、牛奶、全麦面包,中午尽量选择清淡的家常菜,晚上少吃油腻食物,偶尔还会吃点坚果、蓝莓补充营养。

同时,杜老师还加入轻度运动,每天下班回家后散步 20 分钟,运动的时候可以让大脑彻底放松,也能促进血液循环,对于改善脑力很有帮助。

改善效果

另外,杜老师还调整了工作和学习节奏,不再追求长时间高强度,而是采用分段工作方式。每工作 40 分钟,就起身活动 5 分钟,伸个懒腰或者看看窗外绿植,让大脑短暂的休息。

同时,杜老师还养成了随时记笔记习惯,不管工作任务、待办事项,还是突然想到点子,都立刻记在手机备忘录,避免因为记忆力差而遗漏重要的事情。

除此之外,杜老师还减少不必要的信息摄入,以前刷手机会漫无目的地刷各种视频、新闻,现在会刻意的控制时间,只看一些有价值的内容,避免大脑被碎片化信息过度消耗。

现在坚持了差不多半个多月,能明显感觉到状态慢慢好转。专注力比之前强了,工作效率也有提升,日常里脑子短路的次数也减少了很多。

如果您也正经历类似的状态,不妨试试杜老师的这些办法,慢慢找回大脑活力。

最后也想问问大家,你们有没有遇到过脑力不足情况?又有哪些改善的技巧呢?欢迎在评论区和杜老师交流~

一站式操作系统 ISO 下载平台

作者 Teacher Du
2025年10月28日 00:00

找到一个安全、便捷且资源丰富且下载速度较快的操作系统 ISO 文件下载平台显得尤为重要。很多小伙伴习惯使用 MSDN,但又不喜欢其登录机制,这里杜老师推荐 OS.click,一款专注于为用户提供实用、高效的系统下载服务的网站。

丰富的资源库

OS.click 拥有海量操作系统 ISO 文件可供下载,涵盖了当下主流的两大操作系统阵营。

在 Windows 系统方面,无论是较为经典的 Windows 8.1,还是广泛运用于个人和企业的 Windows 10,以及最新的 Windows 11,都有完整且经过精心挑选整理的版本提供给用户。

无论您是想要体验全新的系统功能,还是需要回退到熟悉的旧版本进行系统恢复,甚至是搭建特定的测试环境,OS.click 都能满足您不同的需求。

对于 Linux 系统爱好者和开发者来说,这里同样是一座宝藏。Ubuntu 作为 Linux 系统中广受欢迎的发行版之一,以其用户友好的界面和强大的社区支持,吸引了众多用户。

在 OS.click 上,可以轻松获取到各个稳定版本的 Ubuntu ISO,方便用户快速搭建开发环境、进行系统测试或者部署服务器等操作。

而 Debian 作为 Linux 世界中以稳定性和安全性著称的系统,同样在 OS.click 上有丰富的资源,无论是用于个人桌面电脑还是企业级服务器的系统安装,都能在这里找到合适的 Debian ISO 版本。

快速便捷下载体验

网站名称中的 “lightning fast” 绝非夸大其词。

OS.click 通过先进的服务器技术和优化的网络架构,确保用户能够以极快的速度下载所需的 ISO 文件。

这意味着用户无需长时间等待,即可快速获取系统安装文件,大大提高了工作效率和使用体验。

无论您是处于家庭网络环境下,还是在企业内部网络中,OS.click 都能凭借其强大的网络资源和智能的流量分配机制,为用户提供智能、稳定且高速的下载通道,让用户能够迅速开始系统的安装或升级过程。

简洁直观用户界面

OS.click 的界面设计简洁明了,易于操作。

对于那些不熟悉技术或者对网络下载流程不太熟悉的新手用户来说,也能轻松上手。

在网站的首页,清晰地展示了可下载的各类操作系统 ISO 文件的列表,用户只需通过简单的点击操作,即可进入相应的下载页面。

没有繁琐的注册流程,也没有复杂的广告干扰,用户可以专注于寻找自己需要的系统文件并立即开始下载,节省了宝贵的时间和精力。

安全可靠下载保障

在互联网上下载软件或文件,安全性始终是用户最关心的问题之一。

OS.click 深知这一点,因此致力于为用户提供能够安全可靠的下载服务。

网站对所有的 ISO 文件都进行了严格的审核和筛选,确保这些文件没有携带恶意软件、病毒或者其他安全风险。

用户在 OS.click 上下载的系统文件,可以放心地用于安装和使用,大大降低了因下载到不安全文件而可能导致的系统故障、数据泄露等风险。

灵活多样应用场景

OS.click 的服务适用于多种场景。

例如,当用户的电脑出现系统故障,需要重装系统时,只需访问 OS.click,找到对应的系统 ISO 文件进行下载,然后通过简单的步骤制作启动盘,就能顺利完成系统的重新安装。

对于那些想要尝试不同操作系统以寻找更适合自己的系统环境的用户来说,OS.click 提供的丰富资源也为其提供了极大的便利性。

此外,对于企业 IT 管理人员而言,在企业内部进行批量的系统安装或者升级时,OS.click 快速稳定的下载服务能够有效提高工作效率,节省大量的时间和人力成本。

社区互动支持

OS.click 并不仅仅是一个单纯的下载平台,它还拥有活跃的用户社区。在这里,用户可以交流使用心得、分享经验技巧、寻求技术支持等。

对于在系统安装或使用过程中遇到的问题,用户可以在社区中提出咨询,其他同好或者经验丰富的用户会积极地提供帮助和解决方案。

这种良好的社区互动氛围,不仅增强了用户的使用体验,还促进了用户之间的知识共享和技术交流,有利于整个用户群体的技术水平提升。

在众多的操作系统 ISO 文件下载平台中,OS.click 凭借其丰富的资源、快速的下载速度、简洁友好的界面、安全保障以及多样化的应用场景,成为了众多用户在系统安装和升级过程中的首选。

无论是个人用户还是企业用户,无论是新手还是技术老手,OS.click 都能为他们提供满意的服务,助力他们在数字化世界的探索和工作中更加顺利高效。

如果您也在寻找一个可靠的系统 ISO 下载平台,不妨试试 OS.click,相信它不会让您失望。

MinIO 社区版 Web 管理界面被删事件全解析

作者 Teacher Du
2025年10月22日 00:00

开源项目一直是软件开发领域的重要组成部分,众多开发者依赖开源项目推动着技术快速发展。然而,近期 MinIO 社区版的一次更新却引发轩然大波,其删除 11 万行代码,原本功能完备的 Web 管理界面大幅精简,这举动不仅让用户措手不及,也引发了社区对于开源项目商业化的深度思考。

Web 管理界面的阉割

2025 年 5 月 24 日,MinIO 发布了版本更新,以简化控制台为由,删除 114736 行代码,导致 Web 管理界面的核心管理功能几乎全部丧失,仅保留基础的对象浏览功能。被移除的功能涵盖用户账户管理、访问策略配置、存储桶管理工具以及系统配置等核心管理功能。

这一变化意味用户无法再通过 Web 界面执行诸如创建用户账户、设置访问密钥、管理存储桶策略等管理员级别的操作,所有管理任务被强制转移到 mc 命令行工具。

官方解释与社区的质疑

MinIO 联合创始人表示,维护社区版和商业版的双套图形界面成本过高,涉及设计、用户体验、前后端开发以及安全测试等多个方面,对社区版而言负担沉重。

因此,官方建议需要图形化管理的用户转向商业产品或改用命令行工具。

然而,开源社区普遍认为这是商业利益驱动决策,认为 MinIO 在没有提前通知的情况下,强制推动商业化是一种特洛伊木马式更新。

社区用户对官方的解释并不买账,认为 Web 控制台的资源占用低,维护成本有限,官方理由难以令人信服。

社区反应与应对的措施

面对 MinIO 社区版 Web 管理界面被删事件,社区迅速做出反应。一方面启动了名为 OpenMaxIO 的分支项目,试图恢复被移除的功能;另一方面,SeaweedFS/Garage 等替代方案也获得更多的关注。

部分社区成员在 GitHub 上对相关的 PR 进行质疑,认为更新后 Web 管理界面只剩下烦人的弹窗,迫使用户只能使用命令行管理 MinIO。然而,MinIO 官方却锁定了该 PR 的讨论并限制其发言权限,引发了社区的不满。

其影响与反思

此次事件对 MinIO 社区版的用户体验和项目生态造成了显著影响。对于非技术用户及中小团队来说,Web 管理界面删除无疑提高了操作门槛,增加适配成本。

从更深的层次来看,这一事件暴露开源项目在商业化道路上的两难选择。开源项目需要在商业利益与开源精神之间找到平衡,否则可能自毁长城。MinIO 此次更新被部分用户视为一种阳谋,通过削弱社区版功能来引导用户转向付费版本,这种短视的策略可能会损害社区信任,导致用户流失。

开源项目的未来不应是商业利益附庸,而应是技术与协作共生。MinIO 下一步决策将决定其在对象存储领域的地位,也关系到其开源生态稳定与发展。对于用户而言,此事件是一记警钟,提醒大家在采用开源基础设施时,应该提前做好应对方案,关注项目的未来发展和授权策略变化,避免陷入类似困境。

最后杜老师提醒使用 Docker 部署 MinIO 的用户,如需要使用 Web 管理页面,可以部署标签为 minio/minio:RELEASE.2025-04-22T22-12-26Z,该版本为具有 Web 管理页面的最后版本。

如何使用 PHP 脚本筛选去不图床已到期用户邮箱

作者 Teacher Du
2025年10月16日 00:00

因为图床程序暂不支持套餐到期通知,需要杜老师定期统计到期的用户,再通过邮箱发通知。每次统计时操作较麻烦,为了方便统计用户,尝试用 PHP 编写一个页面,可以筛选去不图床到期用户邮箱。

公告

去不图床会在用户的容量套餐到期后,发送邮件通知「请确保注册邮箱可用性」

通知内容包含数据到期时间「一般为容量到期后七天」如 5 月 24 日到期的用户,我们会保留数据到 5 月 31 日。

超过保留期限的数据会从数据库清除,但数据依然会保留在备份节点中。

为了方便用户从备份节点中恢复数据,去不图床定期「每半小时」同步至 OneDrive,需要的小伙伴可以访问 共享链接 获取备份数据,页面密码为 7bu.top

脚本

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
<?php
// 数据库配置
$host = 'localhost'; // 数据库主机
$username = 'your_username'; // 数据库用户名
$password = 'your_password'; // 数据库密码
$database = 'your_database'; // 数据库名称

// 创建数据库连接
$conn = new mysqli($host, $username, $password, $database);

// 检查连接是否成功
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}

// 执行查询
$sql = "SELECT * FROM `users` WHERE `capacity` = 0.00 AND `size` != 0.0000";
$result = $conn->query($sql);

// 检查是否有结果返回
if ($result->num_rows > 0) {
// 打开文件准备写入
$file = fopen("1.txt", "w");

// 写入表头
$headers = [];
while ($fieldinfo = $result->fetch_field()) {
$headers[] = $fieldinfo->name;
}
fwrite($file, implode("\t", $headers) . "\n");

// 写入每一行数据
while ($row = $result->fetch_assoc()) {
fwrite($file, implode("\t", $row) . "\n");
}

// 关闭文件句柄
fclose($file);

echo "数据已成功写入 1.txt";
} else {
echo "没有匹配的记录";
}

// 关闭数据库连接
$conn->close();
?>

注意:以上是一个完整 PHP 脚本,用于连接 MySQL 数据库、执行 SQL 查询并将结果写入到 1.txt 文件中。

使用说明

  1. 将上述的代码保存为一个.php 文件如 export_users.php

  2. 替换脚本中的数据库信息 your_username/your_password/your_database 为您自己的实际数据库凭证;

  3. 确保运行该脚本的服务器支持 PHP 并且可以访问 MySQL 数据库;

  4. 当通过浏览器或命令行访问这个 PHP 页面时,它会执行查询并将结果写入到当前目录下的 1.txt 文件。

输出示例

1
2
3
4
email
123123123@qq.com
456456456@qq.com
789789789@qq.com

注意:确保 PHP 环境有权限写入目标文件「如 1.txt

Focalboard 开源项目管理的有力工具

作者 Teacher Du
2025年10月10日 00:00

在当今数字化协作时代,高效的项目管理工具对于团队的成功至关重要。Focalboard 作为一款开源的项目管理软件,正在逐渐崭露头角,受到了众多团队和个人青睐。

简介

Focalboard 是由 Mattermost 开发的功能强大开源项目管理和协作工具,能够以看板形式灵活地组织任务,创建详细笔记,并方便地共享文件。它支持创建各种类型的笔记页面,记录数字、链接、文字等多种类型的信息,且内置多种模板供用户直接套用编辑:

Focalboard 具有以下的特点:一是开源免费,数据自行托管,用户可将其部署在自己本地服务器上,确保数据安全可靠;二是支持多种平台,包括 Windows/macOS/Linux/iOS 和 Android 等,方便用户随时随地接入项目;三是具备丰富功能,如拖放卡、进出口板、按状态或着截止日期等过滤板和任务,以及支持多人协作、文件共享、团队和直接消息等;四是界面简洁易用,操作便捷,易于上手:

安装

使用 Docker 安装 Focalboard。

输入命令 docker run -it -p 80:8000 mattermost/focalboard 后,等待安装完成。安装成功后在浏览器输入 localhost:8000 即可进入 Focalboard 的登录界面。

或直接下载安装包安装。

可前往 Focalboard 官方网站,下载适用于不同操作系统的个人桌面版安装包,按照提示完成安装。

使用

在 Focalboard 的欢迎屏幕上,用户可选择创建新的团队并设置团队名称。

进入团队页面,点击创建看板按钮,根据需要选择看板类型,例如项目任务、内容日历、公司目标与 OKR、路线图等模板创建看板,也可创建空白看板自行设计。

还可设置看板名称、描述以及背景色等信息。

在看板上,通过点击添加卡片按钮来创建新任务卡片。

可以在卡片中输入任务描述,并为卡片添加标签、截止日期、优先级等属性,以便更好对任务进行分类和管理。

同时,可以将任务卡片分配给团队中的不同成员,明确责任分工。

团队成员可在看板上实时查看和编辑任务卡片,共同推进项目进度。

在卡片添加评论和讨论,提及队友以引起他们的注意,分享想法意见,实现高效协作沟通。

此外,还可以通过 Focalboard 的团队和直接消息功能,进一步加强团队成员之间的交流。

Focalboard 还支持文件共享,用户可以在任务卡片中上传相关文件,方便团队的成员查阅和下载。

可对看板进行筛选、分组、排序,快速找到所需的任务和信息。

还能查看历史记录、备份快照等等,确保数据安全性和可恢复性。

总结

Focalboard 作为一款开源的项目管理工具,凭借其丰富的功能、简洁易用的操作界面及数据自托管等优势,为个人和团队提供一个高效、可靠的项目管理和协作平台。

无论小型团队还是大型企业,都可利用 Focalboard 来规划项目、分配任务、跟踪进度并实现顺畅的协作,从而提高工作效率和项目成功率。

NodePass 开源的隧道工具重新定义内网穿透

作者 Teacher Du
2025年10月4日 00:00

NodePass 是一个开源网络隧道工具,其基于 Go 语言开发,目标是让两台机器之间的通信变得简单又安全。想象一下,您有一台内网 Web 服务器,想让远在千里之外同事访问,NodePass 就能搭一座隐形的桥,把数据安全送过去。

简介

它的工作方式非常巧妙,用一个未加密 TCP 通道来传递信号,然后通过另一个支持加密的数据通道把实际内容传过去。

您可以把它跑在服务器模式,接受外来连接,也可跑客户端模式,去连别人的服务器。

整个过程配置简单,资源占用较低,还支持 Docker 部署。

作为 GitHub 上开源项目,NodePass 用 MIT 许可证,代码全部公开,社区也挺活跃。

官网

项目官网地址:

特色

开源免费:代码全在 Github 上,透明并且省钱。

简单易用:不用编写配置文件,命令行一敲就能跑。

轻量省心:从树莓派到服务器,在哪里都能跑。

功能硬核:支持 TCP 以及 UDP,多种加密。

安装

NodePass 提供 Docker 镜像,可以使用下面命令部署,以服务器模式运行:

1
2
docker run -d --name nodepass-server -p 10101:10101 -p 8080:8080 \
ghcr.io/yosebyte/nodepass server://0.0.0.0:10101/0.0.0.0:8080

以客户端模式运行:

1
2
3
4
5
docker run -d --name nodepass-client \
-e MIN_POOL_CAPACITY=32 \
-e MAX_POOL_CAPACITY=512 \
-p 8080:8080 \
ghcr.io/yosebyte/nodepass client://nodepass-server:10101/127.0.0.1:8080

探索网络实验的神器 Mininet

作者 Teacher Du
2025年9月28日 00:00

在计算机网络的学习与研究领域,Mininet 是款极具价值的工具。它就像是一个迷您网络世界的构建者,为我们提供便捷的网络实验环境。本文将带您深入了解 Mininet 魅力所在,并手把手教您安装与使用它。

简介

Mininet 是一个用于创建虚拟化网络环境的平台。

它能够在一台计算机上快速构建出包含多个交换机、主机、路由器等网络设备拓扑结构。

对于网络研究人员、开发者以及网络课程的学生来说,Mininet 是一个理想实验平台。

通过它可以模拟大规模网络环境,进行各种网络协议研究、网络应用的开发测试以及网络教学演示等。

例如,如果您想研究一种新的网络路由算法,借助 Mininet 就可以轻松搭建出实验所需的网络场景,无需搭建实体网络设备,大大节省了成本和时间。

它的核心优势在于轻量级以及灵活性。Mininet 是基于 Linux 的用户模式 Linux 网络命名空间技术实现的,这使得它能很方便地在各种 Linux 系统上运行。

而且,Mininet 的网络拓扑结构可以灵活定制,无论是简单的链式拓扑、树形拓扑,还是复杂的自定义拓扑,都能通过简单的配置文件或命令行参数来实现。

同时,Mininet 还支持多种网络仿真工具集成,例如 Wireshark 等,方便针对网络流量进行分析。

安装

安装 Mininet 的过程相对简便,但需要确保您的系统满足一定的前提条件。以下是基于 Ubuntu 系统安装步骤。

首先,需要更新系统的软件包列表。在终端输入命令 sudo apt update,让系统获取最新软件包信息。

然后安装必要的依赖库。可通过运行 sudo apt -y install build-essential autoconf automake libtool pkg-config gawk git python python-pip python-dev tcpdump wireshark sqlite3 curl bzip2 openvswitch-datapath-dkms openvswitch-switch openvswitch-common 命令,可一次性安装这些依赖,它们是 Mininet 正常运行和后续功能扩展的基础。

接下来就是安装 Mininet 本身。可从 Mininet 的官方仓库克隆代码,可使用命令 git clone git://github.com/mininet/mininet,然后进入 Mininet 目录中,再运行 mininet/util/install.sh -a 命令进行安装。这个安装脚本会自动完成编译和安装过程,在安装完成后,系统会提示安装成功的相关信息。

使用

安装 Mininet 后,就可以开始体验它强大的功能了。最基本的使用方式是通过命令行来创建和操作网络拓扑。

创建网络拓扑。Mininet 提供了简单的命令行参数来快速创建常见的网络拓扑。

如运行命令 sudo mn,就会自动创建一个包含两个主机、一个交换机和一个控制器的简单网络拓扑。

主机间通过交换机进行通信,控制器用于管理交换机行为。

如果想要创建更复杂的拓扑,可使用--topo 参数。如使用命令 sudo mn --topo linear,4,就会创建四个主机呈线性连接的拓扑,主机 1 连接到交换机 1,交换机 1 连接到主机 2,依此类推,形成一条链式结构。

操作网络设备。创建好网络拓扑后,Mininet 会进入交互式命令行界面。在这个界面中,可对网络设备进行各种操作。

例如,可以通过 h1 命令进入主机 1 的命令行界面,在主机 1 上执行网络相关的命令,如 ping h2 来测试主机 1 和主机 2 之间的连通性。如果网络配置正确,应该可以看到主机 1 向主机 2 发送 ICMP 请求并收到回复的信息,这就表明网络通信是正常的。

对于交换机可以使用 ovs-vsctl 命令来查看和配置交换机的端口信息、流表等等。例如,ovs-vsctl show 命令可显示交换机的详细信息,包括交换机的名称、连接主机、端口号等。

可自定义脚本。当然,Mininet 也支持使用 Python 脚本来自定义更复杂的网络行为和实验场景。您可以编写自己的 Python 脚本来定义网络拓扑、配置网络设备参数及实现特定的网络功能。

例如,您可以通过继承 Mininet 的拓扑类,创建个包含多个子网络、不同带宽和延迟设置的复杂拓扑,并在脚本中对交换机的流表进行编程,实现特定流量转发策略,例如负载均衡、流量过滤等等。这种方式为用户提供了极大的自由度,能够满足各种个性化的网络实验需求。

总结

总之,Mininet 可作为一款网络实验工具,凭借简单易用、功能强大特点,在网络领域有着广泛的应用。

无论是初学者入门网络知识,还是专业研究人员进行深度网络研究,Mininet 都是一个不可或缺的得力助手。通过掌握 Mininet 安装与使用方法,就可以开启一段精彩的网络实验之旅,探索网络世界无限奥秘。

Ubuntu 系统无法通过 pip 命令安装 Python 库问题解决

作者 Teacher Du
2025年9月22日 00:00

为了更好的执行 Python 脚本,杜老师习惯使用 Ubuntu 系统,不过在安装 Python 库时经常报错。收集了安装 Python 库的报错信息,并整理了解决办法,供需要的小伙伴们参考。

问题提示

这里以上一篇《使用 Python 脚本实现图片相似度匹配》文中代码为例,首次执行时的报错信息如下:

1
2
3
4
5
penn@penn-VMware-Virtual-Platform:~/图片$ python3 1.py
Traceback (most recent call last):
File "/home/penn/图片/1.py", line 4, in <module>
import imagehash
ModuleNotFoundError: No module named 'imagehash'

根据报错信息,提醒找不到 imagehash 模块,使用 pip3 命令安装需要的模块,结果又出现了错误信息。这个信息表明正在尝试在一个由操作系统管理的 Python 环境中直接安装 Python 相关的包,为了保证系统 Python 环境的稳定性和安全性而采取限制措施:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
penn@penn-VMware-Virtual-Platform:~/图片$ pip3 install imagehash
error: externally-managed-environment

× This environment is externally managed
╰─> To install Python packages system-wide, try apt install
python3-xyz, where xyz is the package you are trying to
install.

If you wish to install a non-Debian-packaged Python package,
create a virtual environment using python3 -m venv path/to/venv.
Then use path/to/venv/bin/python and path/to/venv/bin/pip. Make
sure you have python3-full installed.

If you wish to install a non-Debian packaged Python application,
it may be easiest to use pipx install xyz, which will manage a
virtual environment for you. Make sure you have pipx installed.

See /usr/share/doc/python3.13/README.venv for more information.

note: If you believe this is a mistake, please contact your Python installation or OS distribution provider. You can override this, at the risk of breaking your Python installation or OS, by passing --break-system-packages.
hint: See PEP 668 for the detailed specification.

解决方法

解决的方法有很多,这里推荐使用虚拟环境。因为使用虚拟环境可以避免直接修改系统的 Python 环境,同时方便管理依赖。按照提示创建一个虚拟环境,使用 python3 -m venv myenv 来创建虚拟环境,使用 source myenv/bin/activate 激活虚拟环境:

1
2
penn@penn-VMware-Virtual-Platform:~/图片$ python3 -m venv myenv
penn@penn-VMware-Virtual-Platform:~/图片$ source myenv/bin/activate

在激活虚拟环境后,使用以下命令安装所需的包。安装完成后运行命令 deactivate,退出虚拟环境:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
(myenv) penn@penn-VMware-Virtual-Platform:~/图片$ pip install imagehash
Collecting imagehash
Downloading ImageHash-4.3.2-py2.py3-none-any.whl.metadata (8.4 kB)
Collecting PyWavelets (from imagehash)
Downloading pywavelets-1.8.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (9.0 kB)
Collecting numpy (from imagehash)
Downloading numpy-2.2.5-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (62 kB)
Collecting pillow (from imagehash)
Downloading pillow-11.2.1-cp313-cp313-manylinux_2_28_x86_64.whl.metadata (8.9 kB)
Collecting scipy (from imagehash)
Downloading scipy-1.15.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (61 kB)
Downloading ImageHash-4.3.2-py2.py3-none-any.whl (296 kB)
Downloading numpy-2.2.5-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (16.1 MB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 16.1/16.1 MB 21.3 MB/s eta 0:00:00
Downloading pillow-11.2.1-cp313-cp313-manylinux_2_28_x86_64.whl (4.6 MB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 4.6/4.6 MB 38.6 MB/s eta 0:00:00
Downloading pywavelets-1.8.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.5 MB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 4.5/4.5 MB 38.6 MB/s eta 0:00:00
Downloading scipy-1.15.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (37.3 MB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 37.3/37.3 MB 41.4 MB/s eta 0:00:00
Installing collected packages: pillow, numpy, scipy, PyWavelets, imagehash
Successfully installed PyWavelets-1.8.0 imagehash-4.3.2 numpy-2.2.5 pillow-11.2.1 scipy-1.15.2

使用 Python 脚本实现图片相似度匹配

作者 Teacher Du
2025年9月16日 00:00

随着相机像素越来越大,图片体积也变大了。在图片处理中,较大的文件体积会影响性能,因此杜老师会先生成缩略图,筛选完成后再通过 Python 脚本实现图片相似度匹配。这里是一个简单的示例,供需要的小伙伴们参考。

脚本说明

以下是个基于 Python 的脚本,使用 PIL 以及 imagehash 库来实现。

遍历目录 A 中所有图片。

在目录 B 中查找相似的图片「通过感知哈希算法判断」

如找到匹配项,则将图片复制到目录 C,并以目录 A 图片的名字命名。

安装依赖

1
pip install pillow imagehash

注意:在运行脚本前,需安装所需的 Python 库。

脚本示例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
import os
import shutil
from PIL import Image
import imagehash

# 定义目录路径
dir_a = 'path/to/dirA'
dir_b = 'path/to/dirB'
dir_c = 'path/to/dirC'

# 设置相似度阈值(越小越严格)
threshold = 5

# 获取图片的感知哈希值
def get_image_hash(filepath):
try:
return imagehash.phash(Image.open(filepath))
except Exception as e:
print(f"无法处理文件 {filepath}: {e}")
return None

# 判断两个哈希值是否相似
def is_similar(hash1, hash2):
return hash1 - hash2 <= threshold

# 确保目标目录存在
os.makedirs(dir_c, exist_ok=True)

# 遍历目录 A
for filename in os.listdir(dir_a):
file_a_path = os.path.join(dir_a, filename)

# 检查是否为图片
if not filename.lower().endswith(('.png', '.jpg', '.jpeg', '.gif', '.bmp')):
continue

hash_a = get_image_hash(file_a_path)
if hash_a is None:
continue

# 遍历目录 B 寻找相似图片
for b_filename in os.listdir(dir_b):
file_b_path = os.path.join(dir_b, b_filename)

# 检查是否为图片
if not b_filename.lower().endswith(('.png', '.jpg', '.jpeg', '.gif', '.bmp')):
continue

hash_b = get_image_hash(file_b_path)
if hash_b is None:
continue

if is_similar(hash_a, hash_b):
# 构建目标路径
file_c_path = os.path.join(dir_c, filename)
# 复制并重命名文件
shutil.copy(file_b_path, file_c_path)
print(f"已找到匹配: {filename} -> {b_filename}, 已复制到 {file_c_path}")

注意:将 dir_a, dir_bdir_c 替换为实际路径;threshold 控制图像相似度阈值,可以根据需要调整;支持多种常见格式图片文件;使用 imagehash.phash 进行感知哈希的比较,适合用于识别视觉上接近的图片。

运行效果

1
2
3
4
5
(myenv) penn@penn-VMware-Virtual-Platform:~/图片$ python3 1.py
已找到匹配: image105.jpg -> 1745928332994.jpg, 已复制到 c/image105.jpg
已找到匹配: image001.jpg -> 1745736425856.jpg, 已复制到 c/image001.jpg
已找到匹配: image017.jpg -> 1745736425221.jpg, 已复制到 c/image017.jpg
已找到匹配: image085.jpg -> 1745928334851.jpg, 已复制到 c/image085.jpg

注意:脚本运行过程可能会有错误提示,需要根据提示进行修复。

几种通过 FFmpeg 无损压缩视频的方法

作者 Teacher Du
2025年9月10日 00:00

北京这边天气不错,特别适合骑行。杜老师拿出了压箱底的全景相机,打算录制一段沿途景色,结果压制出的文件体积很大。之前分享过通过 FFmpeg 来压缩视频的方法,这次整理了更多的方法,供需要的小伙伴们参考!

写在前面

如果需要了解 FFmpeg 的安装方法,可以浏览《如何使用 FFmpeg 来压缩视频》一文,里面有详细介绍如何在 Linux 系统安装 FFmpeg。

如果需要在 Windows 系统上安装 FFmpeg,可以直接至官方下载安装包「或在评论区中留言」

用 CRF 参数

原理:CRF 是 H.264 编码器中用于控制视频质量的一个参数,数值越小画质越高,体积越大,一般取值范围为 18-28,默认值 23,18 是视觉无损。

命令示例:ffmpeg -i input.mp4 -c:v libx264 -crf 18 -preset veryslow -c:a copy output.mp4 此命令指定了视频编码器为 libx264,设置 CRF 的参数为 18,且使用 veryslow 预设以进一步提高编码质量,音频部分直接复制。

更改格式

原理:在不改变媒体编码的情况下,改变媒体封装格式,通常转换后的大小基本相同,一般不会出现过大差距,如果大小差距过大,需要检查媒体文件的完整性。

命令示例:ffmpeg -i input.mp4 -codec copy output.mp4 可直接更改封装格式,无需重新编码。

调分辨率

原理:降低视频分辨率可显著减小文件体积,对于对视频画质要求不是特别高,或需要在低分辨率设备上播放的场景比较适用。

命令示例:ffmpeg -i input.mp4 -vf scale=1280:720 -c:a copy output.mp4 该命令会将视频的分辨率调整为 1280×720 像素,音频的部分不进行重新编码,从而实现压缩体积目的。

调比特率

原理:降低视频比特率可以在保持原始分辨率的同时减小文件体积,适当减少比特率能够有效的减少文件大小。

命令示例:ffmpeg -i input.mp4 -b:v 2500k -c:a copy output.mp4 此命令将视频比特率设置为 2500kbps,音频流则直接复制。

用 HEVC 编码

原理:HEVC 是一种更高效的视频编码格式,在同等画质下,相较于 H.264 编码,可使文件体积更小。

命令示例:ffmpeg -i input.mp4 -c:v libx265 -crf 28 -preset medium -c:a aac -b:a 128k output.mp4 其中-c:v libx265 指定输出的视频编码器为 libx265-crf 28 指定 CRF 参数为 28-preset medium 平衡视频质量和压缩速度,-c:a aac -b:a 128k 表示音频部分使用 AAC 编码,并设置了音频码率为 128kbps。

天津游记「多图预警」

作者 Teacher Du
2025年9月4日 00:00

刚从合肥返京,就收到了天津出差任务。虽然京津距离不远,但杜老师平时工作较忙,周末一般都在家睡懒觉,所以也是想着趁此机会游玩一下!分享给未来过天津的小伙伴,大家来云旅游~

天津之旅

天津是中国北方的一座历史文化名城,同样是直辖市之一,有着丰富的历史底蕴和独特城市风貌。

天津建筑风格多样,中西合璧,例如五大道保存着众多西式建筑,意大利风情街则充满了浓郁异国情调。

此外,天津还有着众多的名胜古迹,例如盘山、独乐寺等等自然与人文景观,展现了其深厚文化底蕴。

天津的旅游特色主要体现在其独特的文化韵味和美食文化上,是体验津味文化与北方风情绝佳之地。

天津美食文化源远流长,如狗不理包子、煎饼果子等等传统小吃闻名全国,散发着独特的魅力。

此外,天津的相声文化也独具特色,古文化街、泥人张彩塑等更是让人感受到天津的艺术之美。

游记留影

天津的民国时代的建筑较多,也是别有一番风味:

张学良故居的餐厅:

张学良和赵四小姐卧室:

顶层是个舞厅,本来拍了歌厅整体,结果有个大爷入镜了,所以只有观众席给大家看看:

这叫聚丰当铺,可以清楚的观察到民国时代当铺格局:

这个是鹤竹堂药铺,据说是曾给慈禧光绪看病的御医所开:

皇宫舞厅,为什么杜老师想到依萍:

天津市特别警察局,杜老师也想拍亮堂点的,这里边就是暗光线,可能是想震慑罪犯:

瑞蚨祥成衣店,里边格局也很大气漂亮,就是衣服看着有一点少,毕竟都叫成衣店了,怎么衣服比杜老师的都要少:

成衣店顾客等待位,本来不想放这张的,但是这个窗和格局吸引了杜老师,所以还是放上来了:

这个是鼎章照相馆,杜老师除了会说漂亮外,不会说别的了,原谅杜老师言辞的匮乏:

民国时代诊所,不过感觉杜老师小时候诊所也长这个样子,可能杜老师也挺老的了:

这个是商会俱乐部,有很多张,但里边的光线不是很好,只有这张看起来还是不错的:

国父孙中山办公室,右上角露出来的点点就是他照片,不过相机没有全部收录进去,右侧还有一个很好看的壁炉,哈哈:

头一次看见民国的封条,必须拍照一张,杜老师一直以为封条只要有个封字就可以,没想到要写这么多东西:

这个是春和大戏院,张学良故居进门开始可以玩剧本杀的,好多人在走来走去的找线索,杜老师没有好意思参与进去,不过感觉很好玩的,大家有兴趣的可以参观的同时玩这个游戏。这个戏院里还有相声表演的,不过是固定的时间,杜老师忙着赶下一个参观地,所以并没有听相声,可惜:

最后用民国画报小广告来做结尾,张学良故居以及范竹斋故居之旅就结束啦:

全都是人,大家都在门口想拍出满意的照片,杜老师就只匆匆闪过了,毕竟杜老师没有高超的运镜技术:

这个是最后的晚餐,教堂里也好多的人,想找出一张没人的照片实在是太难了:

感觉这个吊灯和玻璃都漂亮的很,但是杜老师对宗教理解不深,不知道这个里边画面的含义,要是有解说就好了:

这个好像就是主教传教的地方吧,用隔离带围着,杜老师进不去,不过感觉就很神圣:

据说是溥仪和妃子们被从故宫赶出来之后住的地方,感觉就是个小洋楼:

溥仪和妃子们的小餐厅:

这个是溥仪妃子文绣的卧室:

这个是皇后婉容的卧室,感觉他们的床都好小啊,杜老师睡在上边都怕掉下来:

这个是溥仪的书房:

张园里也有剧本杀,每个时间段也有节目表演的,但是杜老师依然没赶上,时间太紧张了,下次一定要试试看:

最后用杜老师们伟大领袖毛主席给这段旅程做结尾,这个展区是爸爸妈妈他们那个年代结婚的布景,感觉爸爸妈妈他们来看肯定很有感触:

合肥游记「多图预警」

作者 Teacher Du
2025年8月29日 00:00

时隔一年,又一次来到了安徽省会——合肥。这次出差的时间很灵活,杜老师有半天时间可以到附近景区逛一逛,就特地带了单反相机拍了些照片。本文整理了几张特色的美照,特邀杜老师的另一半帮忙配的介绍文,感兴趣的小伙伴可进来一看!

合肥之旅

合肥是安徽的省会,简称庐州,有着 2500 多年建城史,是国家级历史文化名城,曾是三国时期兵家必争之地,也是包拯、李鸿章等历史名人故乡。

这里历史遗迹众多,例如三河古镇,因丰乐河、小南河三水流贯其间而得名,是合肥唯一 5A 景区,古镇历史悠久,古建众多,青砖灰瓦,小桥流水,宛如一幅淡雅的水墨画。

合肥不仅有深厚的历史文化底蕴,还有丰富的自然景观和现代旅游资源。

包公园是纪念北宋清官包拯而建,园内有包公祠、包公墓等景点,游客可以在此了解包拯的生平事迹和清正廉明精神。

徽园则集中展示了安徽各地的著名风景和徽派建筑,游客可半天时间领略安徽的徽风古韵。

合肥美食也是一大特色,庐州烤鸭、李鸿章大杂烩、合肥三鲜等等美食让人回味无穷。无论是对历史文化感兴趣的游客,还是喜欢自然风光和娱乐体验的游客,合肥都能满足需求。

游记留影

不需要买票哦,可直接进,不过周一闭馆,去的话要注意:

感觉徽式古建筑石雕木雕都很精致且应用广泛,都有相关典故以及故事。房梁窗户等很多地方都有精致的雕刻:

这个是徽式的古代祠堂模型,看起来很大气,请忽略杜老师不专业的摄影技术:

这个是古人的牌坊,看着真是方方正正,哦对,传说中的贞节牌坊貌似也长这个样子:

这个博物馆里,金子本来不多,这个碗是最好看滴:

爬了很多个塔,其中有很大一部分是不带电梯的。当时走到这里的时候人已经快累屁了,犹豫了很久不想爬上去,结果过来了一队旅游团,导游用喇叭喊:大家不用担心,这个塔有电梯。瞬间冲到塔里坐电梯美极了:

从塔上俯视图一张,景色还是很不错的,哇哈哈哈。下来的时候没有坐电梯,想着看看各层景色,结果有很多不知道有电梯的,杜老师听到大家边爬边骂街,上的时候在骂,下的时候也骂:

这是包公祠的井叫廉泉,根据传说,这个井可检测贪官,有个贪官喝了这个井水开始头痛,经查,他确实是贪官,所以有了这个名字:

打车去李府的时候司机告诉杜老师这里很出名,那必须要打卡,不过实在是太大了,且日头晒得很:

位于古逍遥津,emmmm 杜老师没有拍墓碑和坟茔,大家看看牌坊好了:

李府李鸿章的人物雕塑,本来是想拍大门口的牌匾的,但是人实在太多了。这个不需要买门票,但是需要网络预约免费门票,合肥这一点比较好,好多景点是免费的,对学生党也很友好:

让我们看下晚清时代的家具:

清朝各级官员胸前绣的动物,具体哪个代表哪个,还请百度,不过当时古人绣工是真的好,超好看的:

这个美术馆给杜老师最大的印象就是里边超级凉快,超级超级,凉快发冷:

欣赏艺术画作:

继续欣赏艺术画作,杜老师真是一点艺术细菌都没有,完全看不出这画的含义:

这个旋转楼梯拍照应该会很出片,但是杜老师的摄影技术也就只能到这里了,凑合着看看吧:

同样不需要预约而且不需要门票,直接进就可以,不逛这个杜老师都不知道这么多的名人竟然都是安徽人:

这个楼层有个展区是做了仿古街区的各类商店,特别有那个氛围感,就是人太多了,想拍下整个街景总有人入镜,挑了很久也就剩了这么一张:

仿客栈以及瓷器店,很有古风韵味:

一层是一个蜡像馆,有很多的出名人物都在这里,看到这个大象大家应该就知道是哪个了吧,这就是传说中曹冲称象:

这个就是包公断案现场蜡像,杜老师深深觉得喜欢看蜡像馆的,可来这里,比蜡像馆省钱,氛围还好:

三河古镇俯拍,这个是杜老师爬上没有电梯的塔才拍到的,这个塔不光没电梯!它的楼梯还特别窄,只可以放下半只脚,杜老师一路外八着上下,就像个大螃蟹:

古镇胡同,很难得有张没有行人的照片,热闹和静谧共存的徽式小镇:

徽式游廊,好多游人在另一边休息,微风吹拂:

除了这个马囧囧的样子让杜老师觉得比较好玩,这个马车厢小的出乎杜老师意料,杜老师小时候看电视剧他们出行乘坐马车还以为里边很大的,这个车厢杜老师感觉对胖子很不友好,进去就塞满了。原来古人的马车这么小的吗:

酿酒步骤,杜老师震惊的是他们真的有自己酿的酒摆在大缸里,但是看着黑漆漆的,用玻璃封住了,闻不到是什么味道,不知道还需不需要过滤:

回程坐了游艇,细细看了河两边的建筑,感觉是超级好,感觉每个时代的建筑都有它独特魅力:

探索扣子空间「邀请码不限量分享」

作者 Teacher Du
2025年8月23日 00:00

当今数字化浪潮中,人工智能正以前所未有的速度改变着我们的工作和生活方式。字节跳动于 2025 年 4 月 19 日推出的通用型 AI Agent 平台,无疑是这一变革中一颗璀璨新星,为我们带来了全新的 AI 协作办公体验。

扣子空间是啥

扣子空间是个致力于打造和 AI 协作工作全新工作方式的平台。

它基于字节跳动自研的豆包等国产大模型,用户只需将任务交给智能体,系统就能自动完成需求分析、任务拆解、工具调用、结果生成,支持从网页到文档等多种类输出形式,极大提升工作效率与执行力。

核心特点功能

  1. 双重模式协作,灵活应对任务需求

扣子空间提供了探索模式和规划模式。

探索模式下 AI 自主动态探索,完成速度更快,适用于时效性强的任务,例如查询最新资讯、获取实时数据等等;规划模式中 AI 深度思考,会先给出任务处理规划,经过用户确认后再行动,执行期间也需用户参与,适合高复杂性任务,如跨行业市场调研、复杂项目规划等等。这种双模式的协作机制,让用户可根据任务属性灵活选择,能更好地与 AI 协作完成工作。

  1. 强大任务处理能力,实现自动工作流程

扣子空间能够智能解析用户的一句话需求,精准识别意图并将其分解为多个具体任务。系统会自主调用浏览器、代码编辑器等工具执行任务,同时将每个思考和执行步骤清晰呈现,适时的与用户确认意图,确保执行方向准确。

最终输出完整结果报告,如 PPT、网页、飞书文档等等,真正实现了从需求输入到成果输出的全流程自动化。

  1. 专家级 Agent 生态,提供专业领域支持

平台内置多种领域的专业 Agent,例如华泰 A 股观察助手可生成每日股市早报并解答股票分析问题,用户研究专家可以协助进行用户研究资料深度分析。

这些专家级的 Agent 针对特定领域更专业,能处理更复杂任务,为不同领域的用户提供了便捷的专业服务。

  1. 丰富插件集成,无限拓展能力边界

扣子空间首批集成飞书多维表格、高德地图、图像工具、语音合成等 60 多款 MCP 模块化能力插件,未来还将支持开发者通过扣子开发平台发布自定义插件。

这些插件涵盖资讯阅读、旅游出行、效率办公等等众多方面,使扣子空间能够满足用户在不同场景下的各种需求,真正实现了功能的无限扩展。

应用场景广泛

扣子空间应用场景十分丰富,涵盖办公、学习、生活、电商、金融等等多个领域。

在办公场景中,可以帮助用户完成撰写文档、数据分析、制作 PPT 等各种工作任务;在学习场景下,能为学生和教育工作者提供课程资料收集、课件制作等辅助教学和学习服务;在生活场景里,可以用于制定旅游计划、查询信息等等;在电商场景中,能够进行商品推荐、用户行为分析;在金融场景下,可为股票分析、金融数据解读等等提供决策支持。

截图与邀请码

扣子空间界面非常简洁,登录后可通过左侧菜单进行任务管理,输入任务描述即可快速创建任务,开始任务后会在右侧显示 Agent 执行过程:

扣子目前机制每次能生成五个邀请码,杜老师会定期更新邀请码的使用状态,也请小伙伴使用后留言邀请码的编号,用尽后会发放新邀请码:

编号邀请地址备注
1https://www.coze.cn/space-preview?invite_code=PYFNVF90已用
2https://www.coze.cn/space-preview?invite_code=TLZTCXQN已用
3https://www.coze.cn/space-preview?invite_code=MCIEP9ZP已用
4https://www.coze.cn/space-preview?invite_code=H3M95JPB已用
5https://www.coze.cn/space-preview?invite_code=0XV6MVQ3已用
6https://www.coze.cn/space-preview?invite_code=39GL3SRL已用
7https://www.coze.cn/space-preview?invite_code=LGOQDX27已用
8https://www.coze.cn/space-preview?invite_code=W9G0P33F已用
9https://www.coze.cn/space-preview?invite_code=CEP1YQD5已用
10https://www.coze.cn/space-preview?invite_code=EFUJVJ95已用
11https://www.coze.cn/space-preview?invite_code=PGYMJSN5已用
12https://www.coze.cn/space-preview?invite_code=L33JT5Q7未用
13https://www.coze.cn/space-preview?invite_code=MCAKQH6N未用
14https://www.coze.cn/space-preview?invite_code=68TDVTNL未用
15https://www.coze.cn/space-preview?invite_code=PA55VHFS未用
❌
❌