Ubuntu Linux之所以能成为全球十分受欢迎的Linux发行版,这绝非偶然,因为它真正做到了开箱即用。然而这种友好的用户体验并非没有代价。当你安装一个Ubuntu Linux系统时,你获得的不仅仅是一个操作系统,随之而来的还有一套庞大的后台服务、预配置好的驱动程序,还可能有一个功能丰富,旨在帮助各种用户用对不同场景的桌面环境。尽管这一些对初学者而言,是一件好事。但这往往会导致系统变得臃肿,需要消耗大量的内存和CPU资源,让其在与Lubuntu、Antix或者Alpine Linux等极简主义发行版相对比时,显得有点慢。至于为什么慢?如何去优化?我们首先要明白它为什么显得“臃肿”。Ubuntu Linux 默认采用的是GNOME的定制版本。尽管GNOME界面美观且极具现代感,当时它却是资源消耗较庞大的桌面环境之一。其桌面高度依赖Javascript,并在处理动画效果及窗口管理时会占用大量的显存资源。在软件分发策略上,Ubuntu已大幅转向了Snap为主。Snap应用采用了容器技术,这意味着每个应用都捆绑了自身所需的库文件。这种机制会导致应用启动速度变慢、硬盘空间占用增加。而且Ubuntu 预设用户可能需要使用所有的功能。因此,即使某些你根本用不上的服务,比如打印服务、蓝牙、色彩管理甚至自动更新,在系统安装完毕时,就已经会默认运行了。为了提升用户体验,追踪和错误报告之类的功能也可能在后台运行,以便在系统出现问题时,能够将错误系统记录并排查问题。虽然这些功能单独看,资源占用微乎其微,但是累积起来便成为了不可忽视的系统负担。那么轻量化已安装的Ubuntu系统的第一步,就是精简冗余的软件。许多用户虽然保留着办公套件等,但却从未打开过它们。比如LibreOffce就是个硬盘占用的大户,如果用不到就可以卸载掉。sudo apt purge libreoffice* && sudo apt autoremove
略显争议的是要不要移除Snapd,如果你渴望获得显著的系统提速,许多技术爱好者建议彻底移除Snap基础架构,转而坚持使用原色的deb软件包。sudo snap remove --purge 软件包名sudo apt purge snapd
Ubuntu 系统预装了一些后台工具,而大多数追求轻量化的用户其实并不需要它们。比如Evolution邮件客户端,该服务会在后台运行用于处理日历等相关数据;如果你不是Linux平台的游戏玩家,可以移除gnome-shell-extension-gamemode组件。除此之外,一个真正的轻量级发行版,其核心特征在于,当你对其未进行任何操作时,它在后台所执行的任务极少。你可以利用systemctl命令查看当前在运行的服务,并终止那些非必要的服务。sudo systemctl disable bluetoothsudo systemctl disable cupssudo systemctl disable whoopsie
通过禁用这些服务,可以避免它们无谓地占用系统内存。如果真心希望让Ubuntu Linux桌面拥有轻量级发行版那种极速体验,那么就必须摆脱默认的GNOME Shell桌面环境。而这无需重装整个操作系统,只需安装一个更轻量级的桌面环境。sudo apt install xfce4sudo apt install lxqt
Xfce的界面外观类似传统的电脑桌面且内存占用远低于GNOME。LXQt则极其轻量,仅有1G内存的电脑也可以使用。虽然可以对Ubuntu Linux进行瘦身处理,但是这里存在一个“边际效益递减”的法则,依然要在快速和实用之间取得平衡。只要有意识地管控机器上运行的程序,就能把Ubuntu Linux打磨成既高效又可靠的得力工具。