读者来信
亲爱的 Michael:
如你所知,KV 是 FreeBSD 和旅行的粉丝。多年来,我换过 Lenovo、Dell、System 76 和一些稀奇古怪的型号。似乎每隔几年,我第一次加载 FreeBSD 时能用或不能用的东西就会变,然后我得追踪所有设备 ID,尝试更新驱动,让 FreeBSD 能成为我笔记本上的日常驱动。虽然 FreeBSD on Laptops 的 wiki 页面(https://wiki.freebsd.org/Laptops)相当详细,但我一直希望看到一场“FreeBSD 笔记本评测”,尽管我承认有些时候我只想开枪打烂我的笔记本。你一定有些给我和读者的建议,关于如何挑选一台笔记本,让它作为你与 FreeBSD 一切事务的主要接口。哪些品牌一直靠谱?X11 之类的能用吗?FreeBSD 会吃掉我的电池吗,因为它已经吃掉了我的大脑?网络和 Wi-Fi 呢?一定有办法切这块蛋糕,让我和其他人既能拥有它,又能吃掉它!
——KV
KV?是 Kode Vicious 的 KV?
是那个建议 George V Neville-Neil 把这个累赘的来信专栏套在我脖子上的 Kode Vicious?(https://freebsdfoundation.org/past-issues/big-data/)那个 Kode Vicious?当然不是!不,真的,不可能。他应该懂得不要在这片地界露面——尤其是在这个糟糕专栏已经三年多了,George 还没付我钱。更别说寄冰淇淋的种种困难,再加上疫情搅乱了其中两年的会议、旅行和生活。我拒绝让区区“现实”瓦解我的义愤。
但这是我本月唯一的来信,我不愿让我那两位忠实粉丝失望。是的,是的,我曾经有三位,但其中一位无法承受更多真相的曝光,不得不退出。我不怪他。我怪他自以为够坚强,但那是另一码事。我想我必须让我正义的痛苦继续发酵,至少等到我有机会恰当地表达我的不满。活动门票每张 20 美元,所有收益将归“愤怒专栏作家法律辩护基金”。带件雨衣和护目镜,飞来的碎片可能很锋利。
那么:笔记本。笔记本是运行开源操作系统最糟糕的硬件,可能唯一的例外是一只死獾。笔记本制造商使出他们能想到的一切骗局来减轻重量和功耗。要削减成本时,他们还向供应商征求骗局。如果笔记本制造商需要把印刷电路板上的所有东西左移四分之一毫米,以便为那个吸钱包的电源线腾地方,元件制造商就会欣然创建一个新零件号,而不改变硬件设计或固件中的任何东西——除非他们想在这个新型号里悄悄塞进一个小改动,没什么好担心的,我们只是重新排列 ABI,按古苏美尔人的十二进制顺序排列命令,那些古代祭司的想法没错,比我们高管今天依赖的手指算法简单多了。设备型号无关紧要,除非至关重要。制造商对开发过程的贡献是一个专有的屏幕颜色调节按钮,接在一个传统 PS2 接口上,因为他们从 Overstock 上便宜买到了这外壳。
你想在这样一台机器上跑 FreeBSD?最简单的办法是让别人代劳。FreeBSD 笔记本 wiki 的宣传力度远远不够,但买笔记本前去查一下是绝佳之选。那里列出的许多笔记本较旧,但过去十年生产的任何笔记本,只要把转动的铁锈换成闪存盘,对你那些琐碎的工作负载来说计算能力大概就足够了。浏览 wiki,我认为 ThinkPad 是个不坏的选择——任何笔记本能称得上“不坏”的程度上的不坏。
但假设你想要一款全新型号。全新笔记本被完全支持的概率是有限的,但可以忽略。不过你可能相当接近,尤其是如果你不选上周刚发布的硬件。
找出像样型号的最简单办法是去一家有有趣型号的商店,从 USB 驱动器启动。可惜,一些假冒黑客问店员能否从 USB 重启以便在那些展示机上加载垃圾恶意软件,于是你只能去和公司 IT 部门交朋友,在机器被装上规定镜像之前测试新机型。
没有这种门路,你就只能去制造商网站查笔记本的技术规格。那挺好,只可惜规格不够具体。运气好的话,你能拿到视频、声音和网络的信息。
图形厂商乐此不疲地保守其硬件细节。他们大概宁可花钱雇人写驱动,也不愿让无聊的开发者免费提供驱动。FreeBSD wiki 有一个图形页面(https://wiki.freebsd.org/Graphics),包含 X.org 的兼容性矩阵,所以你那美丽的视网膜显示屏至少有点希望不浪费。
虽然你可以用完全足够的 USB 声音和网络设备,它们一定能和你的笔记本配合,但许多人有种狭隘的执念,认为笔记本里自带的东西就该能用。但还记得那个元件制造商在做无关紧要的改动时改或不改零件号吗?是的,那个。好在声音大多被支持。网卡随着月亮的盈亏出新型号,但你也许能走运。
假设你硬着头皮买了一台笔记本,发现一两个小东西不能用。你能做什么?当然是修好它。修不好,就给别人创造条件让他轻松修好。大多数 FreeBSD 开发者跑的是 -CURRENT,所以你需要一种在笔记本上启动 -CURRENT 的办法。一支闪存盘安装就够了。然后运行 FreeBSD 那条“让你的硬件倾吐肠子”的命令,pciconf -lv。它会输出系统 PCI 总线所控制和管理的所有设备的完整信息,基本上除了那个笔记本送达时的包装盒以外,什么都包括。
然后给 hackers@freebsd.org 发邮件。我在别处写过那封邮件该怎么说,所以不再赘述,除非那位坚持读到这里的读者发邮件问我,怎么在邮件里不做一个彻头彻尾的混蛋。那里那些奇怪慷慨的人从让新硬件工作中获得快感,但务必善待他们,诚恳致谢。他们中的一些人能记仇几十年,对一位倒霉的来信专栏作家——某天他过得特别糟糕——也不例外。
输出不会让那位黑客直接支持你的设备,但它提供关键线索。FreeBSD 开发者早已习惯把面包屑变成奇迹,但如果你诱使其中一位帮你,预期会有多轮来回调试和测试。你至少要构建和尝试新内核。
一旦你彻底明白自己选笔记本选得多糟,至少可以做的是更新 wiki。
有问题想问 Michael?请发送至 letters@freebsdjournal.org
MICHAEL W LUCAS 是《Absolute FreeBSD》、《TLS Mastery》、《$ git sync murder》以及即将出版的《Domesticate Your Badgers》和《DNSSEC Mastery》的作者。他完全相信笔记本最好用作钝器。
最后更新于