Linux硬件购买建议

一句话简述:相对最稳妥并保守的方案,是CPU选择Intel带核显的CPU,不要独显。

如果想配置一台专门使用Linux的电脑,那么首先要考虑的问题是显卡,原因有多个,最主要的原因是显卡制造厂商提供的Linux驱动不全,导致经常出现一些问题。

为了避坑,建议电脑只有一个显卡,比如cpu带核显,那么就算是有了一个显卡,不要再插另外的独显。如果是因为玩游戏而需要比较好的独立显卡,那么建议购买不带核显的cpu。

即,电脑的机箱里只有一个硬件负责显示。要么一个集成在cpu里的集显,要么单独插的独显;不推荐并存。不建议并存,不是说并存一定有问题,而是说,并存会导致比较多的问题,解决了,就一马平川;解决不了,就一直麻烦。而如果只有一个显卡(仅有集显或仅有独显)的情况下,基本上不会有大的问题。但如果用户是比较专业的玩家,擅长处理各种Linux显卡等硬件问题,那另当别论。

另外,在购买显卡前,先到debianWIKI上查一下,看看想购买的型号是否已经能够支持。有些时候,特别新的显卡,可能无法很好的支持。

除了显卡,还有网卡,包括有线网卡和无线网卡,同样建议先到debianWIKI上查一下,看看想购买的型号是否已经能够支持。通常情况下,intel品牌的网卡支持的比较好;小众品牌有可能不提供完善的驱动,自己编译对于新手来说成功的可能性非常低。其它需要驱动的硬件,比如鼠标耳麦什么的,也最好能看一下硬件厂商的资料,或者购买之前与客服充分沟通,看是否已经支持Linux,以及支持Linux的版本。鼠标耳麦之类的设备,完全不支持Linux的比较少,但如果真买到了,退货换货什么的就比较麻烦。

上面的内容仅仅是宽泛地讨论,另外下面有一些建议请参考:
  1. 如果仅仅是入门学习Linux的新手,那么推荐Intel带核显的cpu,不加独立显卡;消费类主板上的板载网卡建议选择Intel品牌,包括有线网卡和无线网卡;

  2. 如果已经有一定Linux基础,需要更专注地使用Linux,那么请参考所选发行版的官方文档,通常会有硬件购买的建议或者兼容硬件列表;

  3. 如果有特别需求或用途,比如想使用专注于隐私和安全保护的发行版Qubes OS,那么按其官方建议,最好选择Intel带核显的cpu,不建议使用NVIDIA显卡及AMD显卡;

  4. (Linux在硬件上有时候比Windows要麻烦不少,这也算是Linux特色吧)

为什么要使用独显?我们以NVIDIA显卡为例进行说明。

上面的论述,结论主要是使用核显不使用独显。那么,什么时候要考虑独显的情况?

如果仅仅是一般性家用或者办公使用Linux系统,其实不太用得上独立显卡。用独显的情况,都有特殊需求,下面列出几种可能使用独显的情况:

  1. 大型3D游戏

  2. FFmpeg剪辑视频

  3. 数学运算

可能还有许多专门的用途,这里不一一列举。

对于大型游戏,主要有两种可能,一个是直接在Linux系统上用Steam来玩,另一个是使用Windows虚拟机+显卡直通技术。

如果是Linux上安装Steam,那么必然要安装NVIDIA显卡的专有驱动,不能使用开源驱动。这一点,请参考Steam的DebianWiki说明。

(Linux系统Steam方式,只能运行那些支持的游戏;很多游戏可能不支持这种方式,要求必须在windows系统中才能运行,这就需要用到下面的显卡直通技术)

如果是用Windows虚拟机+显卡直通技术,那么通常不需要在主机上安装NVIDIA私有驱动,只需要在Windows虚拟机中安装NVIDIA驱动。对于这种方式,安装NVIDIA显卡驱动很简单,麻烦一点的地方在于Windows虚拟机显卡直通的实现过程。

(用于直通的显卡,Nvidia vs AMD,不同的情况有很大差别,请阅读您所参考的文档。例如,仅仅是想直通显卡后玩windows游戏,那么推荐Nvidia独显。如果想装macOS虚拟机,那么不推荐AMD CPU,等等。待测试……)

如果是用FFmpeg剪辑视频,那么使用NVIDIA私有驱动会大幅提升效率,即视频的渲染速度明显变快,举个两倍左右例子:

ffmpeg -i input.mp4 -vf crop='582:1134:68:50' -c:v h264_nvenc outputGPU.mp4
ffmpeg -i input.mp4 -vf crop='582:1134:68:50' -c:v libx264 outputCPU.mp4

上面这两条命令是把input.mp4这个视频文件的一部分画面裁掉(类似于切除黑边)。第一条命令使用了NVIDIA显卡硬编码进行处理,第二条命令使用CPU软编码进行处理。在速度上,使用NVIDIA显卡硬编码处理时,速度大概是40x,而使用CPU软编码进行处理时,速度大概是15x,显卡速度是CPU的两倍多接近三倍。(显卡硬编码可能会导致文件体积偏大,但并不绝对)

测试环境:

软件:Debian12.1+KDE, FFmpeg 5.1.3
硬件:AMD R7 5800X, NVIDIA GeForce RTX 3060, 32GB RAM

结论很明显,剪辑视频时如果能使用一块中等性能的独立显卡,工作效率直接提升到CPU的两倍以上。

注意:速度的提升并不绝对,可能出现零提升的情况。

再有就是做数学运算。这个有点宽泛,一个具体的例子是,如果不小心忘记了自己的比特币钱包密码,可以考虑使用开源软件/工具来找回密码,如果有一块性能中等的独立显卡,运算速度比使用CPU可能会提升几十倍不止。这种情况下,用CPU几个月才能完成的运算,用独立显卡几天就能完成。(有时间再写一篇,比特币钱包密码忘记后,如何用开源工具来找回密码。)

测试环境: Ubuntu20.04LTS+Gnome, AMD Ryzen 7 5800X, NVIDIA GeForce RTX 3060

通过上面的阐述可以看到,除了游戏,独立显卡是重要的生产力工具,可以显著提升工作效率,节约时间。

到底要不要买最新的硬件/安装最新的软件?

这有时是一个让人摸不到头脑的问题,我们举一个例子来说明需要最新的情况。

现在很多人用电脑,其实是在用电脑进行视频剪辑,而视频剪辑涉及很多专业的软件甚至硬件。软件后面讲,先讲硬件,显卡。

写这段文字的时候是2023年6月,市面上Nvidia最新的显卡是RTX 40系列,比如RTX 4060,同时也可以买RTX 3060。那么,在比较老的3060和比较新的4060之间怎么选?

其中一个硬指标是,4060支持AV1视频编码,而3060不支持AV1视频编码。如果买了3060,基本上只能使用H.264或者H.265,不能使用AV1。(三者的区别请自行查询)

接下来说软件,以Debian12.1(stable)为例,系统正常安装的ffmpeg版本是5.1.3,而Debian13(testing)的ffmpeg版本则为6.0。FFmpeg6.0可以支持AV1,而FFmpeg5.1.3不支持AV1。

上面是泛泛而论,同时要考虑的,还有用户端是否能支持AV1解码。你用AV1编码生成的视频,如果用户端的设备或软件不支持AV1解码,那么用户是无法播放AV1视频的。最典型的就是Debian12.1仓库的firefox版本最高是116,而116版本可以播放H.264,但无法播放H.265(只有声音,没有画面)。因此,保守与激进到底如何选择,有时候并不用迷糊,因为有硬指标可以衡量。

最近一次更新:2024年01月24日

未完稿……