Gentoo Linux 折腾小记

本文更新时间:2021年2月2日

自从更换硬盘后Windows Server 2019无限bootloop问题发生后,我觉得把系统换成Gentoo Linux,这篇文章用来记录一下Gentoo Linux的折腾计划,以及我谈谈生活中使用Gentoo Linux系统的心得和优缺点。

安装Gentoo Linux (2021年1月18日)

在此之前用了几天的Artix Linux,Artix作为Arch Linux的派生版,软件更新速度自然不用说,但是随之带来的就是软件包的不稳定。实际上Arch源几乎都不太关注包的稳定性,光顾着追求最新了,在生产环境中这样必然只会造成各种问题,果不其然每天hardlock,这就是促使我更换Gentoo的原因之一。
Gentoo Linux的最大卖点无疑是极高定制度,但是同样带来的问题是为了实现最高的定制可能性,你需要从源代码构建大多数软件包,好在对比Linux From Scratch(以后专开一个LFS折腾记)来说有Portage这么一个工具能实现编译安装的自动化。
安装Gentoo是从Stage 3开始的,你需要一个Live CD/USB来启动到Linux环境中之后自行完成分区的任务,在此之后才是下载并解压你需要的Stage 3到安装硬盘根目录后进行chroot,进入chroot环境之后就可以开始emerge软件包了。
从这里开始你就能体验到Gentoo的高可定制性了,你需要设置你自己的Make.confPackage.use
我的Make.conf配置
在Make.conf中你可以设置各种选项,比如编译线程数量,以及哪些功能你要哪些功能你不要。而Package.use和Package.mask用于设置哪些软件包你要安装哪些你不要安装。Gentoo的Portage软件包管理系统是将每个软件包根据其对应的ebuild下载源代码进行编译安装。
在一些软件包安装完成之后,接下来就是重头戏——编译Linux内核。对于编译内核这东西我也没啥好建议的,你尽管make menuconfig进去折腾各种选项,折腾废了可以回去重新再编译,直到折腾出最合适的那组选项为止。但是一定要问我有啥建议的话,我觉得去除不需要的东西是最好的建议,比如你用Intel CPU就禁用AMD CPU的支持,如果你用AMD CPU那就禁用Intel CPU的支持。内核压缩的话如果你追求比较小的内核就使用LZ4压缩,如果你希望解压更快就选择Zstd(需要先行安装app-arch/zstd软件包)。
如果一切进展顺利的话你还需要一个启动器,用grub吧,我相信你也与我一样,选择Gentoo是奔着Systemd-Free来的,既然如此就不要去考虑什么Systemd-bootctl了,除非你想要Systemd全家桶。(<-如果是这样的话那些拎包入住发行吧不是更适合你吗?还折腾什么Gentoo呢?)

日常使用Gentoo中的一些问题

众所周知Linux对于nvidia的显卡支持向来很…,原因出在nvidia的身上。一开始我也是安装了nvidia的专有显卡驱动,然后就每次都死机,直到我重新编译内核选择使用内核自带的nouveau开源驱动之后才彻底没了这种情况,现在我算是真正理解Linus Torvalds这所谓的”Dear Nvidia”了,以及对开源大法好的认可。
Dear Nvidia
Gentoo很多野包(Overlay)质量参差不齐,甚至有ebuild已经过时但无人维护的情况,这种情况的话在一个二进制包平台上就几乎不存在。
Portage作为一个基于源码的包管理器,在安装速度上的确与二进制包管理器没法比,所以安装与更新软件包非常耗时间,某些大型软件包比如GCC可能需要编译至少两小时。(但是你也可以自己安装pacman二进制包管理器,就很折腾。)
(逐步更新中。)

综上所述,我不推荐一般人去使用Gentoo Linux,如果仅仅只是需要Init-Freedom的话大可使用Devuan Linux,想要新一点的软件包可以使用Artix Linux,而使用Gentoo Linux需要大量的Linux相关知识和足够多的时间,我安装基础系统+图形界面大概花了12小时左右,如果可定制性的确是你的需求,以及拥有足够多的时间,欢迎上车Gentoo Linux!

, , — 2021年2月2日


© 2017-2021 Link233.com all rights reserved.

Powered by Hexo, using theme Minima and running on a server with Gentoo Linux.