FreeBSD 中文社区 2025 第二季度问卷调查
FreeBSD 中文社区(CFC)
VitePress 镜像站QQ 群 787969044视频教程Ⅰ视频教程Ⅱ
  • FreeBSD 从入门到追忆
  • 中文期刊
  • 状态报告
  • 发行说明
  • 手册
  • 网络文章集锦
  • 笔记本支持报告
  • Port 开发者手册
  • 架构手册
  • 开发者手册
  • 中文 man 手册
  • 文章
  • 书籍
  • FreeBSD 中文期刊
  • 编辑日志
  • 2025-123 下游项目
    • FreeBSD 发布工程:新主管上任
    • GhostBSD:从易用到挣扎与重生
    • BSD Now 与将来
    • 字符设备驱动教程(第三部分)
    • 学会走路——连接 GPIO 系统
    • FreeBSD 中对 SYN 段的处理
    • FreeBSD 2024 年秋季峰会
  • 2024-1112 虚拟化
    • 字符设备驱动程序教程(第二部分)
    • 面向 Linux 和 Windows 用户的 bhyve
    • Xen 与 FreeBSD
    • Wifibox:一种嵌入式虚拟化无线路由器
    • 嵌入式 FreeBSD:Fabric——起步阶段
    • DGP:一种新的数据包控制方法
    • 会议报告:我在都柏林的 EuroBSDCon 体验
  • 2024-0910 内核开发
    • 字符设备驱动程序教程
    • VPP 移植到了 FreeBSD:基础用法
    • 利用 Kyua 的 Jail 功能提升 FreeBSD 测试套件的并行效率
    • FreeBSD 上的 Valgrind
    • 嵌入式 FreeBSD:探索 bhyve
    • TCP/IP 历险记:FreeBSD TCP 协议栈中的 Pacing
    • 实用软件:实现无纸化(Paperless)
  • 2024-0708 存储与文件系统
    • FreeBSD 中的 NVMe-oF
    • FreeBSD iSCSI 入门
    • 使用 ZFS 原生加密保护数据
    • 嵌入式 FreeBSD:打造自己的镜像
    • TCP LRO 简介
    • 基于 Samba 的时间机器备份
  • 2024-0506 配置管理对决
    • 基本系统中的 mfsBSD
    • rdist
    • Hashicorp Vault
    • 在 GitHub 上向 FreeBSD 提交 PR
    • 悼念 Mike Karels
    • 2024 年 5-6 月来信
    • 嵌入式 FreeBSD 面包板
    • TCP/IP 历险记:TCP BBLog
    • 实用软件:开发定制 Ansible 模块
  • 2024-0304 开发工作流与集成
    • FreeBSD 内核开发工作流程
    • FreeBSD 与 KDE 持续集成(CI)
    • 更现代的内核调试工具
    • 从零开始的 ZFS 镜像及 makefs -t zfs
    • 提升 Git 使用体验
  • 2024-0102 网络(十周年)
    • FreeBSD 中的 RACK 栈和替代 TCP 栈
    • FreeBSD 14 中有关 TCP 的更新
    • if_ovpn 还是 OpenVPN
    • SR-IOV 已成为 FreeBSD 的重要功能
    • FreeBSD 接口 API(IfAPI)
    • BATMAN:更优的可移动热点网络方式
    • 配置自己的 VPN——基于 FreeBSD、Wireguard、IPv6 和广告拦截
    • 实用软件:使用 Zabbix 监控主机
  • 2023-1112 FreeBSD 14.0
    • LinuxBoot:从 Linux 启动 FreeBSD
    • FreeBSD 容器镜像
    • 现在用 Webhook 触发我
    • 新的 Ports 提交者:oel Bodenmann (jbo@freebsd.org)
  • 2023-0910 Port 与软件包
    • 回忆录:与 Warner Losh(@imp)的访谈
    • 在你自己的仓库中定制 Poudriere 源
    • Wazuh 和 MITRE Caldera 在 FreeBSD Jail 中的使用
    • PEP 517
    • CCCamp 2023 旅行报告
  • 2023-0708 容器与云
    • 在 Firecracker 上的 FreeBSD
    • 使用 pot 和 nomad 管理 Jail
    • 会议报告:C 与 BSD 正如拉丁语与我们——一位神学家的旅程
    • 抒怀之旅:与 Doug Rabson 的访谈
    • 基于 Jail 的广告拦截教程
    • 我们收到的来信
  • 2023-0506 FreeBSD 三十周年纪念特刊
    • CheriBSD 近十多年的历程
    • AArch64:成为 FreeBSD 新的一级架构
    • 岁月如梭:我个人的时间线
    • 安装 FreeBSD 1.0:回顾 30 年前
    • ZFS 是如何进入 FreeBSD 的呢?
    • 我不是来自约克郡的,我保证!
    • 回忆录:采访 David Greenman Lawrence
    • FreeBSD 和早期的 Unix 社区
    • 早期的 FreeBSD 移植
    • FreeBSD 30 周年:成功的秘诀
    • FreeBSD 在日本:回忆之旅与今日之实
  • 2023-0304 嵌入式
    • CheriBSD port 和软件包
    • 让我们来试试 ChatGPT
    • GPU 直通
  • 2023-0102 构建 FreEBSD Web 服务器
    • ZFS 的原子 I/O 与 PostgreSQL
    • 虚拟实验室——BSD 编程研讨会
    • ZFS 简介
    • 会议报告:落基山庆祝女性计算机科学家
    • 进行中的工作/征求反馈:数据包批处理
    • 基金会与 FreeBSD 桌面
  • 2022-1112 可观测性和衡量标准
    • 在 FreeBSD 的 DDB 内核调试器中编写自定义命令
    • DTrace:老式跟踪系统的新扩展
    • 基于证书的 Icinga 监控
    • 活动监控脚本(activitymonitor.sh)
    • 实用 IPv6(第四部分)
    • EuroBSDCon 会议报道
    • 实用 Port:Prometheus 的安装与配置
    • 书评:《用火解决问题:管理老化的计算机系统(并为现代系统保驾护航)》Kill It with Fire: Manage Aging Computer Systems (and Future Proof Modern Ones)
  • 2022-0910 安全性
    • CARP 简介
    • 重构内核加密服务框架
    • PAM 小窍门
    • SSH 小窍门
    • 实用 IPv6(第三部分)
    • 书评:Understanding Software Dynamics(深入理解软件性能——一种动态视角)—— Richard L. Sites 著
    • 访谈:保障 FreeBSD 安全性
    • MCH 2022 会议报告
  • 2022-0708 科研、系统与 FreeBSD
    • 在 FreeBSD 上构建 Loom 框架
    • 教授本科生 Unix 课程
    • FreeBSD 入门研讨会
    • 实用 IPv6(第二部分)
    • 在 2022 年及以后推广 FreeBSD
    • 进行中的工作/征求反馈:Socket 缓冲区
    • FreeBSD 开发者峰会报告
    • 支持 Electromagnetic Field 2022
  • 2022-0506 灾难恢复
    • 使用 FreeBSD 构建高弹性的私有云
    • LLDB 14 —— FreeBSD 新调试器
    • 实用 IPv6(第一部分)
    • 利用 netdump(4) 进行事后内核调试
    • 进行中的工作/征求反馈:FreeBSD 启动性能
    • 实用 Port:在 OpenZFS 上设置 NFSv4 文件服务器
  • 2022-0304 ARM64 是一级架构
    • FreeBSD/ARM64 上的数据科学
    • Pinebook Pro 上的 FreeBSD
    • 嵌入式控制器的 ACPI 支持
    • 进行中的工作/征求反馈:Lumina 桌面征集开发人员
    • 实用 Port:如何设置 Apple 时间机器
  • 2022-0102 软件与系统管理
    • 为 FreeBSD Ports 做贡献
    • 使用 Git 贡献到 FreeBSD Ports
    • CBSD:第一部分——生产环境
    • 将 OpenBSD 的 pf syncookie 代码移植到 FreeBSD 的 pf
    • 进行中的工作/征求反馈:mkjail
    • 《编程智慧:编程鬼才的经验和思考》(The Kollected Kode Vicious)书评
    • 会议报告:EuroBSDCon 2021 我的第一次 EuroBSDCon:一位新组织者的视角
  • 2021-1112 存储
    • 开放通道 SSD
    • 构建 FreeBSD 社区
    • 与完美操作系统同行 27 年
    • 进行中的工作/征求反馈:OccamBSD
    • 通过 iSCSI 导入 ZFS ZIL——不要在工作中这样做——就像我做的那样
  • 2021-0910 FreeBSD 开发
    • FreeBSD 代码审查与 git-arc
    • 如何为 FreeBSD 实现简单的 USB 驱动程序
    • 内核开发技巧
    • 程序员编程杂谈
  • 2021-0708 桌面/无线网
    • 通往 FreeBSD 桌面的直线路径
    • FreeBSD 13 中的人机接口设备 (HID) 支持
    • Panfrost 驱动程序
    • 用 Git 更新 FreeBSD
    • FreeBSD 的新面孔
    • 想给你的桌面加点佐料?
  • 2021-0506 安全
    • 七种提升新安装 FreeBSD 安全性的方法
    • copyinout 框架
    • 使用 TLS 改善 NFS 安全性
    • Capsicum 案例研究:Got
    • 对 Jail 进行安全扫描
  • 2021-0304 FreeBSD 13.0
    • 展望未来
    • FreeBSD 13.0 工具链
    • FreeBSD 13.0 中有新加载器吗?
    • TCP Cubic 准备起飞
    • OpenZFS 中的 Zstandard 压缩
    • 会议报告:FreeBSD 供应商峰会
    • Git 不够吗?
  • 2021-0102 案例研究
    • Tarsnap 的 FreeBSD 集群
    • BALLY WULFF
    • Netflix Open Connect
    • FreeBSD 的新面孔
    • 写作学者的 FreeBSD
    • 在世界之巅
  • 2020-1112 工作流/持续集成(CI)
    • FreeBSD Git 快速入门
    • 使用 syzkaller 进行内核 Fuzzing
    • Mastering Vim Quickly 书评
    • 线上会议实用技巧
    • 在控制台上进行网络监控
  • 2020-0910 贡献与入门
    • 采访:Warner Losh,第 2 部分
    • 代码审查
    • 撰写良好的提交消息
    • 如何在不是程序员的情况下做出贡献——成为 FreeBSD 译者
    • 如何成为文档提交者
    • 谷歌编程之夏
    • 为 FreeBSD 期刊撰写文章
    • 你为什么使用 FreeBSD
    • FreeBSD 的新面孔
  • 2020-0708 基准测试/调优
    • FreeBSD Friday
    • 采访:Warner Losh,第 1 部分
    • 构建和运行开源社区
    • 在 FreeBSD 上轻松搭建我的世界(Minecraft)服务器
    • FreeBSD 的新面孔
  • 2020-0506 网络性能
    • 内核中的 TLS 卸载
    • 访谈:Michael W Lucas
    • FreeBSD 桌面发行版
    • 使用 Poudriere 进行 Port 批量管理
    • FreeBSD 的新面孔
由 GitBook 提供支持
LogoLogo

FreeBSD 中文社区(CFC) 2025

在本页
在GitHub上编辑
导出为 PDF
  1. 2021-0708 桌面/无线网

想给你的桌面加点佐料?

上一页FreeBSD 的新面孔下一页七种提升新安装 FreeBSD 安全性的方法

最后更新于1个月前

  • 原文链接:

  • 作者:BENEDICT REUSCHLING

这篇专栏介绍了 FreeBSD 的 Ports 和软件包,它们在某些方面有用、独特,或者值得了解。Ports 扩展了基本操作系统的功能,确保你能完成某些任务,或者,简单来说,给你带来一些快乐。跟着一起走,也许你会发现一些新东西。

多年前,当我作为大学新生开始我的 Unix 之旅时,安装程序要简单得多。最终能启动桌面并不是默认设置。事实上,在开始时,我花了很多时间才能弄好,等我成功了,那个时候的电脑没有足够的性能来运行它。所以,我在终端中待了很长时间。虽然这样,但并没有让我放弃,因为相比 DOS,我能做的事情已经多得多。至少我有 misc/mc 来让我的屏幕显示不止是黑底白字。

后来,我确实在 X11R6 上启动了一个工作的桌面环境。如今,安装程序要好得多,通常默认提供图形化的点选界面。但当这发生时,我正切换到 FreeBSD,而它的默认安装程序仍然是类似 curses 的界面。我在非图形界面世界中学到的经验变得非常有用。FreeBSD 手册让我比我在其他发行版上所做的尝试更快地启动了一个工作桌面。我至今仍然使用最小化的桌面环境,因为大多数时候,我需要打开一个终端来提高工作效率。我最初使用的是 x11/icewm,然后切换到了 x11/fluxbox。后来,在大学期间,所有其他学生的桌面都拥有华丽的效果,比如旋转立方体的桌面切换、透明效果等等。过了一段时间,这些效果变得无聊,因为每个人都有这些效果,它们变得毫无特色。由于那时我没能让这些效果正常工作,我想保留面子,便运行了 x11-wm/enlightenment。那时很有趣,因为谁不编译配置文件为二进制文件来获得一些速度提升呢?不过,我想有些概念并未在其他软件系统中得到广泛应用——尽管它们可能具有革命性。

在开始我的 Unix 体验之前,我来自 Windows,有着对桌面的某些期望。如果桌面上没有任何图标,怎么启动应用程序呢?我们既然提到这个问题:怎么给 fluxbox(我又切换回来的)设置一个炫酷的背景图呢?我无法这样工作!我的意思是,透明的终端程序至少能在你不浏览网页时显示其中的一部分。好吧,确实有很多终端程序能做到这一点,但大多数终端模拟器附带一大堆依赖项。谢谢,不用了,算了。说到模拟,如何回到那些损害我们眼睛的阴极射线管时代?使用 x11/cool-retro-term,你可以重温那些日子。别怪我让你预约下一次眼科检查!

另一个问题是没有图标的应用程序启动(以及不太理想的快速启动菜单)。在看到 Mac 能通过 Alfred(alfredapp.com)做到这一点之后,迟早会有人坐下来为 Unix 桌面开发一个类似的工具。既然布鲁斯·韦恩的管家(译者注:阿尔弗莱德·潘尼沃斯的英文名是 Alfred,出自蝙蝠侠)的名字已经被占用,那么下一个最合适的名字当然就是 x11/albert。对于那些需要一个好用文件管理器的人,我听说 x11-fm/dolphin 与 devel/dolphin-plugins 配合得很好。即使是 x11-fm/xfe,也能让你在文件系统中自如奔跑,且只需要很少的运行时依赖项。对于那些不想运行桌面以便将终端并排放置的人,总有 sysutils/screen 和 sysutils/tmux 可以随时使用。在服务器上分离和重新连接屏幕和会话(除非你使用 Windows,否则服务器不会运行桌面)现在已经很常见了。当它开始变得复杂时,sysutils/tmuxinator 可以帮助你相对轻松地管理这些会话。或者试试 sysutils/byobu,获得更多优雅和系统状态通知。

不久前,我开始尝试平铺窗口管理器(也许是因为我有点过于喜欢 tmux)。这不仅打破了“桌面上有图标”的想法,还影响了我整天打字而不是用鼠标拖来拖去的习惯。在启动 x11/i3 桌面并配合 x11/i3status、x11/py-i3-quickterm 时,我还需要学习一些新的快捷键来控制它。到目前为止,这段经历还不错,而 x11/i3-gaps 看起来是我接下来的升级方向。但现在我发现了一个全新的无鼠标桌面世界,我还学到了 x11/rofi。Rofi 是一个类似于 Albert 的应用启动器。试试看,运行 rofi,你会看到它能做什么。例如,轻松 ssh 进入其中一台机器。或者像在苹果的 Spotlight 应用中一样浏览你的文件或可执行文件。

关于在桌面和终端中做工作哪个更好,始终有一个争论。“你肯定不能在控制台中进行图形编辑吧?!”我听到怀疑者这么说。好吧,这取决于你需要做什么。使用 graphics/ImageMagick7 可以做到很多事情。从裁剪、旋转、给图片加水印,或者在合同上放上扫描的签名,你不需要运行 graphics/gimp 就能做到。它能替代旧时的 Paintshop Pro 吗?可能不能。但嘿,大多数修改都很小,且可以在终端中批量处理。谁愿意手动旋转那些多年前用破旧翻盖手机拍的假期照片呢?

在工作中,我发现无法搜索某些 PDF 会议记录。结果发现它们是打印出来的,参与者签名后扫描成了 PDF。这样就失去了全文搜索和复制粘贴的功能,因为 PDF 现在成了图像。我发现了 textproc/ocrmypdf,它基本上做了相反的操作。它使用 OCR 软件和机器学习技术恢复 PDF 的文本部分,并将其转换回文本。由于我们有许多类似的文档,因此在终端中批量处理起来很快。我没敢想象如果手动修复这些问题会花多长时间,不管是否有桌面程序可用。使用合适的工具,即使它是基于桌面的工具。而在我自己继续在桌面领域的旅程中,我会一路记录我的软件发现与大家分享。


BENEDICT REUSCHLING 是 FreeBSD 项目的文档提交者,文档工程团队的成员。他是 FreeBSD 基金会董事会的副主席。过去,他曾任两届 FreeBSD 核心团队成员。他在德国达姆施塔特应用科技大学管理一个大数据集群。他还为本科生教授“开发者的 Unix”课程。与 Allan Jude 一起,他是每周 bsdnow.tv 播客的主持人。

Want Some Toppings on Your Desk?