主页

系列文章

最新文章

在通过映像安装的 Fedora 系统上使用 Btrfs

阅读时长:7 分钟

自 Fedora 33 起,Fedora 将开始使用 Btrfs 作为桌面版本的默认文件系统。在我关注的几个 Fedora 用户社区(以国外的为主)中,这一更改还是受到了一些欢迎的,毕竟 Btrfs 和传统的 ext4 相比有一些额外、实用的功能。其它非桌面版本(例如服务器版)默认仍然使用 ext4,不过用户在使用 Anaconda 安装 Fedora 时仍然可以手动选择使用 Btrfs。但是,如果使用的是非桌面版本的 raw 映像,比如 aarch64 最小安装(Minimal)映像,因为是直接将映像写到安装目标磁盘上的,而不是用 Anaconda 安装器,所以就没有机会选择使用除 ext4 以外的文件系统。而在这篇帖子中,我将展示一种用映像安装时也可以使用 Btrfs 的方法,其原理是在应用映像后手动转换文件系统。 ……

Fedora 在树莓派 4 上的 USB 问题的复杂解决方法

更新时间: 阅读时长:5 分钟

在上一篇帖子中,我介绍了一种十分简单的解决在树莓派 4B 4GB/8GB 内存型号上运行 Fedora 时无法使用 USB 接口的方法。这种方法通过牺牲可用内存的方式来换取 USB 接口的正常功能。而在现在这篇帖子中,我将再介绍一种方法,虽然需要更多的操作,但是不会导致 3 GiB 内存的限制。 上篇帖子中提到,2GB 内存的型号因为没有 USB 相关的问题,无需进行额外操作。USB 接口不能使用的问题的具体症状也在该帖中有所描述。 概括 如果只用一句话总结这个方法的话,那就是让 Fedora 使用 openSUSE(另一个 GNU/Linux 发行版)的引导程序和固件。这其中涉及的步骤包括: ……

Fedora 在树莓派 4 上的 USB 问题的简易解决方法

阅读时长:2 分钟

截至 Fedora 32 和 Linux 5.8,在树莓派 4B 4GB/8GB 内存型号上使用 Fedora 会出现 USB 接口无法使用的情况。在这篇帖子中,我将介绍一种十分简单的解决方法,简单到只需要给一个配置文件加一行选项。 注意事项 树莓派 4B 2GB 内存型号的用户不需要担心这个问题,USB 接口在 Fedora 上应该是可以直接用的。4GB 和 8GB 型号的用户才可能遇到这个问题。 使用此帖中介绍的这个方法后,系统将只能使用 3 GiB 内存。如果您需要更多的内存的话,就得用另一种稍复杂的方法了。虽然它的步骤比这种简单方法多,但是不会减少可用内存。 症状 树莓派的 USB 接口在官方的树莓派 OS 和其它系统上能用,但是在 Fedora 上无法使用。运行 dmesg | grep xhci_hcd 会出现下列信息: ……

MC Forge Mod 开发记录:加入配置界面

更新时间: 阅读时长:15 分钟

Minecraft Forge 本来有一个允许 mod 创建自己的配置界面的框架,但是该框架在 Minecraft 1.13 的时候被移除了,之后也一直没有被加回来。这篇文章中所记载的就是我如何在不使用该框架的情况下,直接用 Minecraft 的 API 来写一个类似的 mod 配置界面。 本文描述的方法适用于 Minecraft 1.14.4 和 1.15.x。该方法可能也适用于 Minecraft 1.13.x 和 1.14 系列的老版本,不过因为这些版本没有 Minecraft Forge 的稳定版,我并没有进行验证。一般还是推荐用稳定版的 Forge 来进行 mod 开发。 如果您使用的 Minecraft 版本是 1.16.x,请参阅此篇文章。 如果是 Minecraft 1.12.2 或者之前的版本的话,要想使用本文描述的方法,可能需要对给出的代码示例进行大量修改;但是,在这些 Minecraft 老版本上可以直接使用 Forge 的配置界面框架,所以无需依照本篇文章的描述用 Minecraft 的 API 来替代。 ……

手动进行 dnf history undo

阅读时长:8 分钟

我平时常用的 GNU/Linux 发行版包括 Fedora 和 CentOS。后者主要在服务器上使用,而在其它的使用场景下,比如我自己的电脑,就会使用前者。选择这两个发行版主要是因为这它们都使用 DNF 作为软件包管理器前端。有人嫌 DNF 太慢,但我喜欢它是因为它不仅会详细列出它将要进行的操作,包括装卸什么软件包、什么架构、什么版本,还允许方便地查询历史记录。DNF 对其运行的每个事务都保存记录(一个事务就是一次安装或卸载软件包的操作),并且还支持使用 dnf history undo 撤销事务,或使用 dnf history rollback 回滚到某一个事务。其它的一些像 APT 和 Pacman 的软件包尽管也会保存日志,但是并没有类似的撤销操作的功能。 ……

在 Fedora 上安装树莓派的 vcgencmd 命令

更新时间: 阅读时长:3 分钟

这篇帖子算是对我之前关于在树莓派集群上配置 Fedora 的那篇的一个延续。集群配置好后,我告知机主 @ColsonXu 他的集群已经正式投入运算,他就告诉我可以运行一个命令来查看树莓派的 CPU 温度,监视硬件状况: $ /opt/vc/bin/vcgencmd measure_temp 这个 vcgencmd 命令是树莓派 OS(旧称 Raspbian)上用来获取硬件相关信息的命令。然而,这个命令在 Fedora 官方的软件仓库里并没有提供。好在 vcgencmd 的源代码是可以下载的,所以我们可以自行编译它,就能在 Fedora 上使用了。vcgencmd 是树莓派 OS 中 userland 软件包的一部分,而整个 userland 的源代码都可以直接从网上获取。 ……

在树莓派集群上配置 Fedora

阅读时长:10 分钟

在开始之前,我首先要感谢考森同志 @ColsonXu 给了我一个折腾树莓派的机会。他买了几个树莓派 4,准备组一个计算用的集群,可是建好后却没什么可计算的,没什么用场。直到一天早晨,达西 @mrdarcychen 在 Fedora 杂志上发现了一篇在树莓派上跑 Rosetta@home 的文章,于是就问考森要不要搞。在他同意之后,我便开始着手配置他的树莓派集群。 我拿到这堆树莓派的时候,集群已经设置好了。尽管我并没有问过机主本人他当时集群是怎么弄的,但他应该是按照这篇 MagPi 杂志文章配置的。这篇文章里用的是树莓派 OS(旧称 Raspbian)而非 Fedora;如果想弄一个运行 Fedora 的树莓派集群,大体的流程还是相同的,但是具体的步骤和运行的命令有些不一样。接下来我将具体地介绍如何在 Fedora 上完成同样的集群配置步骤。 ……

grep 替代 cat

阅读时长:4 分钟

我遇到了一篇很有趣的英文文章 Unix Recovery Legend,讲的是一群人拯救一个被 rm -rf / 毁坏的系统的故事。几十年前,在电脑还没发展到人手一台,一台电脑要给好几个人同时使用,每个人自己只有一个终端的年代的某一天,与该文章作者同处一间办公室的同事发现邮件发不出去了,作者就前去帮忙检查,发现 ls 命令和 /etc 目录被删了,于是就去找系统管理员,发现管理员的屏幕上赫然显示着这么两行文字: # cd # rm -rf * 由于是以超级用户身份执行的,第一行命令,cd,把工作目录切到了根目录 /(在现在的 GNU/Linux 环境中这么做则会切到 /root 目录下),然后第二行命令就删除了 / 下的所有目录和文件,效果等同于 rm -rf /。好在这条指令在把硬盘清光之前被强行停止了,虽然 /bin、/dev、/etc 和 /lib 被删,但是 /tmp、/usr 和 /users(相当于现在的 /home)逃过一劫。/bin 下都是命令,所以 ls 和 ps 等程序没法使用;/dev 下是设备对应的文件,由于被删了,磁带机这样的存储设备无法使用;/etc 下则是有各种配置文件,包括网络配置,所以也无法通过网络连接机器。这几重因素造成了即使这些人有磁带备份也难以恢复系统的窘境。 ……

在 Windows Terminal 中使用 Cygwin 命令行或 Git Bash

阅读时长:5 分钟

近日,微软发布了 Windows Terminal 的首个正式版本。Windows Terminal 是 Windows 10 上全新的终端程序。和命令提示符还有 Windows Subsystem for Linux (WSL) 默认使用的系统自带老式控制台 conhost.exe 相比,它允许使用多种不同的壳层(shell),例如 Windows PowerShell、命令提示符、以及 WSL。除此之外,Windows Terminal 提供的功能和自定义选项也是比原有的控制台多许多。 得益于可自行添加 shell 的功能,我们可以将 Cygwin 的 shell 和 Git for Windows 中的 Git Bash 也加到 Windows Terminal 里,就可以在没有 WSL 的情况下在 Windows Terminal 里使用 Unix shell 和其它的一些 Unix 程序了。这篇文章将介绍相应的方法。 ……

让 Steam 和 Epic Games 共用同一份 GTA V 游戏文件

更新时间: 阅读时长:3 分钟

继 Epic Games 宣布 GTA V 将在他们的平台上限免一周后,大量玩家蜂拥而至,其中甚至不乏一些已经在 Steam 上买了 GTA V,想再弄一个甚至好几个小号的人。 然而,很多人在 Steam 和 Epic Games 上同时拥有 GTA V 之后却发现即使已经从 Steam 上下过了游戏,也要从 Epic Games 上重新下载一遍。其实,只要利用一些小技巧,就可以让 Steam 和 Epic Games 共用同一份 GTA V 游戏文件,既省去了重新下载的麻烦,又能节省磁盘空间。我们可以利用 Windows 上一个不知名的 MKLINK 命令来建立一个链接:链接给人的感觉类似于快捷方式,能够让被连的文件看起来是放在了链接所在的位置,但其实是被存在了另一个位置。而链接本身占用的空间也是非常小的,所以可以节省大量的磁盘空间。 ……