软件自由指南(已于 2025 年 1 月 12 日更新)
2025-01-12 13:56:29 [指南] [自由之路]恭喜你
当你点开这篇文章的时候,恭喜你,你已经迈出了走向软件自由的第一步。希望它能够帮助你在实现软件自由的道路上前行,让你至少能够距离软件自由更近一些。
写在前面(嫌太长可以跳过)
为自由软件运动作出贡献始终是我的理想。但是,自从我和我的一个朋友那一次失败的出行之后,我便知道,为自由软件作出贡献这件事情,并不像我最初所想得那么简单。我痛定思痛,在 8 月 22 日建立了自由软件中文网,希望能通过宣传自由软件思想、传授自由软件使用方法等方式,推广自由软件的使用,壮大属于我们的社区。
这个网站自诞生的那一天起便是面向普罗大众的——这上面的所有文章都不会介绍过于高深的技术和知识,而是做到尽量手把手地、通俗易懂地传递自由软件思想、传授自由软件使用方法。这上面的所有文章都将由我和这个网站未来的其他贡献者们原创完成,愿为广大普通的计算机用户们提供一条离软件自由更近的路径。
但是,在给这个网站写文章的时候,我似乎忘记了这个网站的初衷——推广自由软件的使用。我在最初建立这个网站的时候,创建了“你在微信上聊了什么,这从来就不是隐私”的海报和文章,强调了自由软件对于用户隐私安全的重要性,希望通过这一手段对于自由软件的推广起到促进作用。但是,我还是太天真了。当我把海报发给8月20日那天与我出行失败的那位朋友的时候,她回复道:“是的,这些我都知道,但我也不能不用。”她说的话,让我心如刀割——这代表了当今社会上无数在专有软件之桎梏之下挣扎的同袍,道出了属于他们共同的心声。当今社会,有不少人并不拿隐私当回事,他们只在意使用软件是否舒服;而还有很多人,则是我前面提到的这位朋友那样,明明知道这些专有软件践踏了他们在数字世界当中应有的权利,但由于为生活、工作、学习、社交所迫,他们不得不选择妥协。此外,还有很多人认为微信、QQ等这些软件践踏了他们的隐私权,于是投奔国外的WhatsApp、Skype,从一个深渊跳出来,却堕入了另外一个深渊。
并且,在研究了马克思等一些人的观点和其他一些政治经济学、经济学的观点之后,我明白了一点——无论是当前的资本主义社会还是社会主义社会,专有软件都无法被消灭,只有在人类实现共产主义的时候,真正 100% 自由软件的世界才能实现。所以,在专有软件恶魔、资本家们统治着这个数字世界的当下,无论如何都无法让 100% 的人使用 100% 的自由软件。或许我应该做的,并不是急于将专有软件彻底消灭,而是让尽量更多的人,距离软件自由,尽量近些,再近些。
但是,很多人不知道第一步如何迈出,也不知道如何才能实现软件自由,或者说尽量靠近软件自由。所以,为了帮助大家尽量远离专有软件的苦海,尽量接近自由软件的乐土,我写了这个《软件自由指南》。
特别鸣谢
感谢自由软件基金会的 Freedom Ladder 指南给我完成本文提供了一些帮助。
开始前,先问自己一个问题吧
在开始之前,我需要你先问自己一个问题:你为什么要使用自由软件?(当然,如果你也是从这篇文章才开始了解自由软件或者认为自己需要使用自由软件的,请把问题改成“你使用自由软件希望得到什么?”)
是减少广告、弹窗、垃圾通知等,提升自己使用电脑、手机等的体验吗?是想摆脱大企业的监视、审查,捍卫自己的隐私权吗?还是什么都不是,只是单纯希望拥有控制自己的计算的自由?
如果是为了体验,你属于第一组,进行到第四步就可以了。
如果是为了隐私,你属于第二组,进行到第十步就足够了。
当然,如果是为了自由——那么我实在是太开心了,给我发个电子邮件吧,你与我志同道合,我希望和你成为朋友。你属于第三组,对于第三组而言进行到哪一步并没有确定的答案——这取决于你对于你想要的自由的标准。当然,自然是越往后越好的。
当然,这只是作为你最初的动机——不要拘泥于它。随着步伐的深入,你的思想自然会转变,也会有更高的追求。总之,在你能接受的程度内,一定是越往后越好的。
准备好,我们要开始了
记住自己的组号,继续阅读吧。
由于时间仓促,本文可能有一些表述欠佳,如果有瑕疵,还请大佬们批评指正;本文内容还不够丰富,后续我会继续扩充它的内容。
第一步:了解、理解恶意软件、专有软件和专有软件的恶意功能及其危害
实际上,一切专有软件都是恶意软件,当然正在阅读本文的你刚刚接触自由软件这个概念,甚至连“自由软件”是什么都不知道,所以应该很难理解这一点吧。
专有软件实际上共有至少20种恶意功能:成瘾、后门、审查、强制、掩盖、欺骗、DRM、诈骗、不兼容、不安全、干扰、监狱、操纵、过时、破坏、订阅、监视、束缚、独裁、潜在威胁。当然,作为刚刚开始的你,我先介绍一下你可能最在意的几点恶意功能及其危害:
- 监视:专有软件会监视、偷窥你的隐私信息。例如,微信会监视你的聊天记录,你聊天的所有内容都会被腾讯的员工看到;拼多多会在你的手机上悄悄扫描你的照片,并且上传到服务器等等。
- DRM:专有软件会限制你对音乐、视频等数字内容的访问。例如,你在爱奇艺上下载的视频只能在本设备、使用爱奇艺客户端观看,无法传输到其他设备,也无法通过其他播放器(如VLC、PotPlayer、迅雷影音等)观看;QQ音乐、网易云音乐下载的音乐无法使用其他播放器播放,也无法分享给其他人,并且会员期限过了之后,这些文件都将无法播放。
- 成瘾:专有软件(尤其是专有软件游戏)会在软件中设置成瘾机制,依次牟取暴利,而用户则浪费了自己的时间和金钱。例如臭名昭著的精神鸦片王者荣耀。
- 干扰:这是专有软件最普遍的恶意功能之一,专有软件会使用这一恶意功能破坏用户体验。例如弹窗广告等各式各样的广告。
- 后门:专有软件开发者会在专有软件中留有“后门”,会远程操控你的设备。例如亚马逊会在不经你允许的情况下从你的Kindle中远程删除书籍。
- 审查:专有软件会审查不符合其开发者利益的内容。例如苹果手机无法安装外部应用,所有软件必须从App Store下载,苹果不允许不符合自己利益的应用上架到App Store。
- 过时:专有软件成为了硬件厂商推动计划性报废的工具。例如现在很多电脑因为不支持TPM 2.0无法升级到Windows 11,而Windows 10将在2025年停止支持,这直接将这些功能尚存、稳健可靠的设备都推向了垃圾场,让过去几年内社会各界为环境保护和资源利用付出的努力付之一炬。
- 独裁:用户无法自行安装和修改设备的操作系统。例如,华为的Bootloader无法通过正常渠道解锁,无法进行刷机、ROOT等操作。
注意:以上这几条我国内外的例子都举了,因为专有软件的危害是普遍的,我不希望带来误导,让大家从国内的专有软件转移到国外的专有软件,从一个深渊跳到另一个深渊。这篇文章澄清我的观点。
理解了专有软件的恶意功能,即使你现在甚至还不知道“自由软件”是什么,现在也希望采取一些行动尝试改变这一局面了。例如检查手机的权限设置,或者将手机、电脑上流氓行为比较多的专有软件替换掉,或许是替换成自由软件,也或许是替换成“不那么流氓”的其他专有软件。但至少,你迈出了第一步。
第二步:理解自由软件,并知晓判断一个软件是不是自由软件的方法
本文已经写到这里了,终于要介绍什么是自由软件了。如果一个软件是自由软件,那么它将赋予其用户四点自由。我将尽量用通俗的语言阐述这四点自由究竟是什么:
- 自由使用:以任何目的自由地使用这款软件,不受任何限制。这意味着,只要这款软件安装在你的电脑或者手机上,只要你能接触到你的设备,你就可以随时随地地使用它的任何功能。如果这款软件使用一些手段让你无法随时随地使用它,例如加入了激活码机制要求你输入激活码才能使用软件,或者现在国内很多网络游戏加入了防沉迷机制,限制了你使用这些游戏的时间,那么它就不具备这点自由,它就是专有软件。
- 自由学习、自由修改:学习这款软件的源代码,并且修改这款软件,不受任何限制。这意味着只要你会编程,你就可以查看并学习编写这款软件的代码,并且修改这款软件让它实现你想要的其他功能。但前提是你得会编程。如果因为你不会编程而无法看懂软件的源代码或修改这款软件,那是你的问题;但是,如果开发者使用其他手段,例如不提供软件的源代码,或者通过用户协议禁止你对这款软件的修改,那么这款软件就不具备这点自由,它就是专有软件。
- 自由分发:以任何目的将这个软件分享给其他人,不受任何限制。例如,你可以把这款软件或它的安装包、安装程序发给其他人,或者发到论坛上等,而不违反法规和软件许可证。当然,其他人收到这款软件要能正常使用,如果他人收到这款软件无法安装或正常使用,那么这点自由是无效的。如果软件开发者通过用户协议禁止你对这款软件的分享,那么这款软件就不具备这点自由,它就是专有软件。
- 自由衍生:以任何目的将你对这个软件修改后的版本分享给其他人,不受任何限制。如果你修改了这款软件,那么你同样应该可以将它分享给其他人。如果软件开发者通过用户协议禁止你对这款软件修改版本的分享,那么这款软件就不具备这点自由,它就是专有软件。
对于第4点自由,有几点需要补充:如果这款软件的许可证强制你在分享修改版本的时候同样赋予你分享给的人拥有你的软件修改版本的这四点自由,那么这款软件就是 copyleft 软件。否则,它就是非 copyleft 软件。
需要澄清的一点是,如果你不会编程,虽然你无法享受自由软件的第2点自由和第4点自由,但是这仍然给你带来了很大的益处:由于所有人都可以看到软件的源代码并且对它进行构建,很多会编程的计算机用户可以查看它的代码,确保它没有恶意功能。如果一个开发者傻到向自由软件中加入恶意功能,他的所有恶行就都会暴露在阳光之下,等待着他的只有全社会的指责和抵制,甚至牢狱之灾。由于开发者没有限制你修改或分发修改版本,虽然你自己不会编程,但如果你希望修改这款软件,你完全可以委托一个你会编程的朋友帮你完成这一点(这体现了第3点自由的重要性)。
判断一个软件是不是自由软件,最根本的方法是检查它是否有以上这四点自由。但是,这对于你来讲可能太难了。判断一个软件是不是自由软件的最简单的方法是看它的许可证。如果一个软件的许可证是以下的这些许可证中的一个,那么它就是自由软件:
- GNU General Public License (GNU GPL);
- GNU Affero General Public License (GNU AGPL);
- GNU Lesser General Public License (GNU LGPL);
- Apache License;
- BSD License;
- Mozilla Public License (MPL);
- X License/Expat License/MIT License.
如果不是,那么就不确定了,它可能不是自由软件,但也有可能是自由软件——我没有列出所有的自由软件许可证,也不可能列出所有的许可证。因为一个软件的许可证无论怎么写,只要赋予了用户上面的四点自由,那么它就是自由软件。
但是,如果你在一个软件的许可证中看到了“最终用户许可协议”、“EULA”、“End User License Agreement”等字样,那么它基本上就是专有软件了。自由软件几乎不可能使用“最终用户许可协议”这种说法。
第三步:开始使用第一款自由软件
现在尝试将你的电脑或手机上的一款专有软件替换成自由软件,它将成为你在通往软件自由道路上的一块里程碑。就像这样,你逐个替换掉你的设备上的专有软件,每替换掉一个都是进步。
如果你没有想法,我的建议是 VLC Media Player。它是一款跨平台的自由软件媒体播放器,可以播放音频、视频等文件。从这里下载 VLC。
体验 VLC 的功能,感受自由软件的优雅与魅力。如果你爱上了它,你便不再需要迅雷影音、PotPlayer 等专有软件播放器了,从你的电脑上卸载删除它们吧。
第四步:逐个替换,越多越好
就像第三步那样,逐个替换电脑上安装的专有软件。下面是一些建议:
- 浏览器(替换 Google Chrome、QQ 浏览器、360 浏览器、夸克浏览器等):Mozilla Firefox、Brave等。
- 媒体播放器(替换迅雷影音、PotPlayer 等):VLC、mpv等。
- 办公软件(替换 WPS、Microsoft Office 等):LibreOffice等。
- 文本编辑器/代码编辑器(替换 Visual Studio Code 等):Kate、VSCodium、Geany等。
- 图片编辑器(替换 Photoshop 等):GIMP、Krita等。
- 视频剪辑(替换剪映、Premiere 等):Kdenlive等。
- 文件传输和设备连接(替换闪传、快牙、你的手机等):KDE Connect、LocalSend等。
- 电子邮件客户端:Mozilla Thunderbird等。
当你最终把你使用的大多数软件都替换为自由软件的时候,你会发现你日常使用电脑的体验将相较于电脑充斥着专有软件和恶意软件的时候得到一个飞跃。
第4.5步(针对macOS用户):卸载macOS操作系统
macOS 不仅是一个专有的、道德和实际问题上要比同样是专有软件操作系统的 Microsoft Windows 还要严重的操作系统,也是一个软件生态贫乏的操作系统,保留它没有任何意义。
如果你有一个 Mac 或 MacBook,并安装了 macOS,现在请把它卸载掉吧。如果你暂时无法改用 GNU/Linux,至少先换成 Microsoft Windows 吧。
第五步:了解并尝试一个 GNU/Linux 发行版
看到这里不要害怕。你不需要掌握高超的命令行技能,有些操作即使需要用到命令行也很简单。并且,你现在也不需要使用像 Trisquel GNU/Linux 这样的完全自由的发行版——我知道那样会把你吓跑的。毕竟,你目前仍然在使用一个专有软件操作系统,选择几乎任何一个 GNU/Linux 发行版都会好得不知道要太多了。
如果你的电脑操作水平很低,建议使用 Deepin。Deepin 是一个国产的 GNU/Linux 发行版,并且很多软件直接可以从应用商店下载,不使用命令行也够用。当然,你也可以在安装 Deepin 之后利用它慢慢学习简单的命令行(不着急!不要着急!),然后尝试 Linux Mint、Ubuntu、Debian 等操作系统。
如果你的电脑操作水平稍微高些,建议使用 Linux Mint,它是一个基于 Ubuntu 的发行版。它的安装过程也比较简单,也有一个自带的软件中心,可以直接用来安装软件,只是没有国内常见的一些软件(主要是专有的)。直接安装 Ubuntu 也未尝不可,只是近年它的体验不知为何越来越差了。。
如果你有折腾系统的经验,建议直接从 Debian 开始,除了专有驱动以外,它已经算是一个完全自由的发行版了,这样你就可以实现一步到位。
现在无法卸载掉 Windows 不要紧,可以双启动,在电脑上安装两个系统,在每次开机的时候手动选择自己想要启动的操作系统。
第六步:在手机上尝试自由软件应用商店
首先,这一步需要安卓手机。如果你现在使用的是苹果手机,请直接跳到第七步。
F-Droid 是一个自由软件的应用商店。很多的自由软件应用都可以从这里下载。通过这里的教程尝试 F-Droid。
以下是可以从 F-Droid 官方源下载的自由软件应用程序推荐:
- 浏览器:Fennec F-Droid、Lightning;
- 邮件应用:Mozilla Thunderbird、FairMail;
- 本地媒体播放:VLC、mpv、Auxio(音乐)、Metro(音乐);
- 在线媒体播放:PiliPala(自由软件哔哩哔哩客户端);
- 自由软件游戏:Luanti、SuperTuxKart、2048、Minesweeper - Antimine;
- 实用工具:Fcitx5(中文输入法)、Amaze(文件管理)、KeePassDX(密码管理器)、LocalSend(文件传输)、Chaka(电子书阅读)、KDE Connect(电脑与手机协作)、Organic Maps(地图导航软件)、Notally(笔记软件)、Saber(手写笔记软件)、Syncthing-fork(文件同步软件);
- 即时通信:Silence(加密短信)、Element(Matrix 客户端)。
第七步:在手机上尝试自由软件操作系统
在手机上安装自由软件操作系统对于个人隐私和自由非常的重要,因为这可以避免手机系统级别的审查、监视、监狱和独裁等恶意功能。
由于现在很多的手机锁定了 Bootloader,所以如果要在手机上安装自由软件操作系统的话,首先你需要有一台能够解锁 Bootloader 的手机。因此,你大概率需要更换手机。但是,请不要着急,往下看。
(一)如果你的手机是下面的机型之一:
- 一加:5(T)、6(T)、7(T/Pro)、8(T/Pro)、9(Pro)、11;
- 小米:5、5s Plus、6、8(Pro)、9 SE、MIX 2(S)、MIX 3;
- 红米:K20、K30 Pro、3S、3X、4X、4A、5A、7、7A、8、8A;
- 谷歌 Pixel 任意机型;
你不需要更换手机,请直接看下面解锁和刷机教程。
(二)如果你的手机是一加 12 或 13,则你也不需要更换手机,但你现在无法安装自由软件操作系统(因为开发者还没有适配),但是建议看下面的 Bootloader 解锁教程先解锁你的手机,以防 OPPO 变卦,有备无患。
(三)如果你的手机是下面的机型之一:
- 小米:10(Pro/S)、11 Pro、11 Lite 5G;
- 红米:K30S Ultra、K40(S)、K60 Pro、Note 9 Pro 4G/5G、12C;
请查看你的手机系统版本,如果是 MIUI,千万不要升级系统,你不需要更换手机,请直接看下面解锁和刷机教程;如果是 HyperOS,很抱歉,鉴于 HyperOS 的 Bootloader 解锁苛刻的条件和降级的技术难度,建议更换手机,请看下面更换手机的建议。
(四)如果你的手机是下面的机型之一:
- 小米 14 及更新机型,红米 K70 及更新机型或小米、红米 2024 年及以后发布的所有手机;
- 华为、OPPO、vivo、Realme 任意型号手机;
不要浪费时间了,建议更换手机。
当然,如果你使用的是三星手机,虽然三星手机支持 Bootloader 解锁,但鉴于三星手机的专有硬件组件导致刷机后各种功能异常(如不能拨打 4G 电话)、三星自由软件固件维护者们动力不足导致固件匮乏、短寿,坚持使用三星手机得不偿失,也建议更换手机。
(五)如果你的手机是小米 12 系列、小米 13 系列,或小米、红米 2023 年及以前发布的手机,如果还是 MIUI 且希望保留的话,千万不要升级,请马上参照下面的教程解锁 Bootloader,保留备用,等待自由软件操作系统适配;否则,请更换手机。
(六)如果你的手机是上面没有提到的任何手机,建议去这个网站查找自己的机型,如果能找到,你不需要更换手机,请直接看下面解锁和刷机教程,否则建议更换手机。
关于更换手机,建议参阅这个推荐。除此之外,如果你是女孩子或者摄影爱好者的话,小米 10S、小米 10 Pro 和红米 Note 9 Pro 5G 也都是不错的选择,但是请购买安装了 MIUI 的机器,千万不要购买安装了 HyperOS 的机器,且机器入手后千万不要升级系统!!。
关于解锁 Bootloader,一加、Pixel 等请看这个教程;小米请看这个教程。
关于刷机,我后续会更新更多的教程。
第八步:使用 OpenPGP 加密电子邮件
使用端到端加密保护电子邮件不遭到邮件服务提供商的审查和监视。关于这一点,自由软件基金会的 E-mail Self-Defense 教程已经足够详尽了,且有中文版,直接查阅即可。
第九步:学会使用单独的设备隔离专有软件
从现在开始,你可以从你的主设备上卸载所有的专有软件和专有软件操作系统了。现在你也可以将电脑上的 Windows 操作系统卸载了。但是,目前考虑到你由于生活、工作、学习等原因仍然必须使用一些专有软件,因此使用单独的设备隔离它们是有必要的。
电脑比较简单,可以选择一台笔记本电脑,拆除麦克风和摄像头,并安装任意操作系统(自由软件操作系统或专有软件操作系统)。
手机比较复杂,请单独准备一台手机并安装自由软件操作系统,管理应用权限,尤其注意摄像头权限、麦克风权限、位置权限。建议使用 Pixel 6 安装 GrapheneOS,一加 5 安装 DivestOS,或红米 3S 安装 DivestOS。(不要使用 LineageOS,LineageOS无法管理传感器权限。)
第十步:学会使用 Tor 保护自己的上网安全
为了保护自己的上网安全,建议使用 Tor 完成自己的几乎一切网络活动。
可以参阅这里的教程,并参考网上更多的教程。
第十一步:进一步减少对于专有软件的使用
到这一步的基本都是把软件自由作为信仰的存在了。你已经在不影响生活和学习工作的前提下,尽可能将专有软件的使用降到最低了。现在,你可能需要结合你的生活、工作和学习实际作出取舍,进一步减少专有软件的使用。
例如,今后使用短信、电话等(虽然短信和电话也会遭到审查和监视,但是它们至少不需要使用专有软件来使用,因此好一些)来联系大多数人,与较好的朋友使用自由软件即时通信服务,以减少微信、QQ 等专有软件即时通信服务的使用。
第十二步:卸载专有驱动/固件
如果你已经在使用 GNU/Linux 发行版,但是安装了一些专有驱动和固件,你可以选择逐步卸载它们。
下面推荐一些不需要专有驱动的外挂设备:
- 外挂无线网卡:购买 AR9271 芯片的网卡,这里是其中一款。
- 外挂声卡:可以购买外接声卡解决卸载专有驱动电脑没有声音的问题,这里是其中一款。
- 外挂蓝牙:兼容自由固件的蓝牙适配器情况比较乐观,这里是本人目前正在使用的。
第十三步:尝试自由固件
如果你的技术比较强,可以使用 Coreboot、Libreboot 等自由固件来替换电脑的专有 BIOS/UEFI。
这里是 ThinkPad X200 的 Libreboot 教程。这里是 HP EliteBook 820 G2 的 Libreboot 教程。
第十四步:接下来呢?
本人目前的软件自由状况处于第十三步,因此本人的经验只能分享到这里了。根据你的实际情况,你可以继续探索更多距离软件自由更近的路径。
现在全世界的总体软件自由状况不容乐观,例如很多电脑即使安装了 Libreboot 也会包含一些专有二进制代码、手机中包含专有的基带驱动等等。这些都是亟需解决的问题。本人综合考虑各方面因素,最后走到了第十三步;我希望能够与整个社区的软件自由状况共进退,并希望为所有人的软件自由出一份力,所以我成立了自由软件中文网。如果你有志,愿你也能够参与到自由软件运动中来,让我们一起点亮这个黑暗的世界。