操作系统推荐:Arch Linux
不适合哪些用户
电脑上平常用来吃饭的工具没有 Linux 版本,或者没有强有力的替代品,或者放在虚拟机/Wine 里性能损失导致不可用或者出现图形错误。
软件跨平台支持 Linux 并不是难事,如果不能跨平台说明是垃圾软件不用也罢。
- 通用:
☒ Adobe 系列
Matlab, Simulink
所有主流浏览器
Blender:开源软件,支持 Linux
GIMP:PS 的强有力开源替代
LibreOffice:MS Office 的强有力开源替代,实在不行,虚拟机里跑 MS Office 很流畅,还有网页版的 Microsoft 365、Google Docs 套件可用
常用国产软件的情况可见 Arch 中文 Wiki 中国大陆用户的推荐解决方案
分学科来说:
- 机械:
☒ Solidworks, PRO/E, Autodesk 系列
OpenSCAD: 开源 CAD 软件,虽然是有这个,但可能如果在工业界会被同事笑掉大牙? - 电气
☒ 一些电磁仿真工具
☒ PCB 设计工具 Altium Designer
Xilinx 的 FPGA 设计工具有 Linux 支持
STM32 开发用的 Keil 虽无 Linux 版,但可用功能更强的 CLion 加 arm 的 gcc 工具链 - 能动:
OpenFOAM 开源 CFD - CS
在 Linux 上能进行所有编程语言的开发工作(包括 Unity,甚至包括微软的 .NET Framework,在 Linux 上叫 mono)
JetBrains 系列所有 IDE(Pycharm, CLion, Rider, GoLand, Android Studio)
这样一来劝退了很多人,也说明很多人的工作可以迁移到 Linux 上。
为什么推荐 Arch Linux
Windows 是闭源、付费、商业软件,Linux 是开源、免费、自由软件。
用了 Arch Linux 你就不用担心或者更少担心:
- 勒索软件加密你的文件、流氓软件盗取你的信息 → 完善的用户权限、访问权限体系,Linux 内核相比 Windows NT 历史安全事故更少
- 突如其来的蓝屏黑屏、重启 → 通过命令行工具通过内核日志 dmesg,system journal 更方便查错
- 用久了就卡,总是没重装之后的几天那么快 → 储存使用的众多文件系统:如 Ext4、Btrfs 相比 NTFS 更优,缓存文件位置井井有条易于清理
- 莫名其妙的风扇狂转、发烫:未知应用程序占满了你的 CPU、未知程序弹窗广告、开机自启动 → 隐匿程序几乎没有存在的可能,通过
ps、top、htop、iotop、iftop、nvtop
的工具查看系统资源使用一清二楚,自启动通过 systemd 统一管理,用户全控 - 关键时刻 Windows Update 作祟 → 何时更新、更新完全由用户决定,也可以配置定时自动更新
- 右下角水印“激活你的 Windows“影响视线 → 开源自由软件不存在激活一说
- 下载安装软件总要去网上搜索,安装包要点击好多步才能完成,有时还驱动还有人工安装 →
pacman
软件包管理工具一键搜索、安装、升级、卸载软件
什么是 Arch Linux
Greg Kroah-Hartman:
I have not had any problems with anything on Arch, and their wiki is by far the best resource out there that I have ever seen
Arch Linux 是多如牛毛的 Linux 发行版(Distribution)中的一种,从年龄上说不算老,也不算新。
Linux 是和拥有 OpenBSD、FreeBSD 等变种的 Berkeley Software Distribution 齐名的类 Unix 操作系统。
Linux 本质上是一个内核,所以它的官网是 https://kernel.org。光有内核没法玩,还需要和自由软件基金会开发一系列 GNU 应用程序配套使用,所以一般合称 GNU/Linux。
前面说到 Linux 发行版(Distro)多得 浩如烟海,但由于 Linux 开源免费自由的特性,其实很多 Distro 都是抄来抄去派生于其他 Dsitro,完整关系可见 一张 6MiB 的巨大无比的图,Arch 和 Debian(有名的 Ubuntu 是它儿子)、Fedora 一样,被诸多其他 Distro 派生。
Arch 到底强在哪?下面和名声响亮的 Ubuntu 进行对比。
- 软件包管理器
pacman
易用且强大,更新系统仅需pacman -Syu
,相比之下 Ubuntu 需要apt-get update && apt-get upgrade
- 软件依赖关系清晰,不像 Ubuntu 有时莫名其妙“XX 软件包无法被安装,因为 XX 依赖于 XX,而 XX 将不被安装,请尝试用 apt --fix-install”难被解决
- pacman 性能高速度快,使用先进的 zstd 压缩格式,而且不像 Ubuntu 啰哩啰嗦的输出一大堆“选中此前未选中的 XXX;正在解包 XXX”;而且 Ubuntu 打包零碎,为了编译某个东西需要装一堆包,还把头文件单独打包加
-dev
后缀,现在硬盘都很大,实际这个-dev
包大小连 1MiB 都不到。Arch 都放在一起了。Ubuntu 的.deb
内部结构混乱,压缩包套压缩包,不像 Arch 的.pkg.zst
按照系统目录组织,井然有序。 - Arch 拥有极其好用的自行打包工具 Arch Build System(ABS),如果不像编译也可以加非官方软件包源。不像 ubuntu 打包工具难用,一般人只能寄希望于有好心人打包到了 PPA,而 Ubuntu 的 PPA 几年前连 HTTPS 都不支持。别看 Ubuntu 的 Debian 系软件包多,Arch 的 Archlinux User Repository(AUR)有众多志愿者做的 PKGBUILD,可用
makepkg -si
命令一键编译打包安装。 - Arch 由强大的开源社区支持,源于 Canada,德国 Hetzner 这家提供服务器租赁的公司赞助了许多服务器。Ubuntu 由商业公司 Canonical 支持。Ubuntu 搞了一个 Snap,企图替代它爹 Debian 的 apt 体系,但两者共存,非常混乱,我试用了一下,很难用。
- Arch 社区的技术能力很强,开发了
pacman
,netctl
,mkinitcpio
等众多非常实用的工具。 - Arch 的软件包总是最新的。这一点见仁见智,Arch 希望上游提供更新来修复问题,而 Debian 系喜欢自己打补丁而非从上游拉取更新来修复问题。
- Debian 系软件包版本混乱,不同的系统版本给一个软件的不同版本打包。而 Arch 官方软件源的包通常只有一个版本(有时 GCC,OpenJDK 有好几个版本,AUR 也可能提供其他版本,或者修改 PKGBUILD 就能自行编译打包某个特定版本),因而有 Rolling 滚动发行版的称号。
总结一下,Arch 拥有简单、强大的特点。
怎么装 Arch
由于 Arch 的安装很简单并且官方教程 Installation guide - ArchWiki 非常详细且被翻译成了 21 种语言,安装 Arch 只能通过命令行的方式。
怎么用 Arch
推荐安装 KDE Plasma 桌面环境 + Wayland + Linux Zen 内核 + Fcitx5 输入法 + zsh (with zsh-autosuggestions
, zsh-syntax-highlighting
, grml-zsh-config
)。
KDE 是和 Gnome 齐名的 Linux 桌面环境双雄之一(其他的 Xfce4, LXQt, LXDE, Mint, Cinnamon 都没这两个功能全面,个人用不习惯 Gnome,觉得它某些方面的功能过于简单,以至于需要 gnome-tweak-tools 这种额外的工具来弥补本来应该有的功能)。
KDE 桌面环境包含窗口管理器 Kwin 在内的图形界面核心程序,和一系列常用软件如 Konsole, Kate,甚至还包含 KDE Connect 这个和手机交互利器(功能不逊于很多电脑组装厂OEM 如专门开发的多屏协作、多设备分享软件)。
KDE 默认界面已经很好看了,有人觉得是抄袭 Windows,但 1996 年建立至今的 KDE 论历史一点不虚 Windows,有些功能比如虚拟桌面谁抄谁还不一定呢。
KDE 可定制度很高,KDE Store 有很多主题(虽然名字是 Store,但里面的东西都是开源自由的),美化后超级 Cool,可见 1, 2。这里剽窃张上面两个链接里的图,原作者 愣生生把 Arch 图形环境改造成 MacOS: