为什么选择 Gentoo

完全免费的 Linux 发行版本,面向开发人员和 Web 职业人员。特别是有 Portage 包管理系统,用 Python 编写。无最新发行版本,每周滚动更新这点和 Arch Linux 相同。

同时得到某叔的极力推荐,这些都是最终选择 Gentoo 的原因。

另外附 Gentoo 排名情况: DistroWatch

安装过程

整个安装过程主要参考 Handbook 手册,利用业余时间两个晚上搞定。

# uname -a
Linux don 4.0.5-gentoo #1 SMP Fri Aug 28 21:54:34 2015 x86_64 Intel(R) Core(TM) i5-4590 CPU @ 3.30GHz GenuineIntel GNU/Linux

桌面选择

首先纠结的是选择。既然如此,回到出发点思考,为什么要安装桌面环境。一是个人 Linux 基础问题。再加上多年不用,没有能力在 Shell 环境搞定 WIFI 和 蓝牙等的驱动。

基于大学时代玩过 Ubuntu 和 Fedora,对 GNOME 和 KDE 有所了解,所以主要还是从这两个中选择,虽然 Ubuntu 已经不用 GNOME 改用 Unity,但 GNOME 3 看起来还是比较现代化,就它吧!

不过在安装 GNOME 之前,我们先了解一下X11,即 X Window 系统。

X11

X 窗口系统 还是很 NB 的,出生比我早。GNOME 和 KDE 都是基于 X11 系统为基础实现的。XQuartz 是苹果公司的 OS X 的实现,Apple X11。

Gentoo Linux 上的 X11 实现是 XOrg

Wayland 是一个比较新的显示服务器与客户端通信方式的协议,而 GNOME 从 3.10 开始支持 Wayland。

Init System

在 Gentoo,可以用以下命令查看当前系统运行的 Init 系统是什么:

# ps u -p 1
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         1  0.0  0.0   4164  1420 ?        Ss   Sep08   0:01 init [3]

如果是显示的是 init,那么 init 系统是 OpenRC,如果显示 systemd,则是 init system 是 systemd (via from Detect init system using the shell)。

GNOME 3

GNOME 3 的目标是简单易用,与 Python 的 Zen 核心思想很接近。

GNOME 3 overview

准备安装的时候,在网上找到这个`贴子 <https://forums.gentoo.org/viewtopic-p-7696198.html>`_:

systemd is now a mandatory dependency of Gnome3. Normally, if you want to use Gnome3, systemd must be installed.

有没有桌面环境可以不更换现在的 Init System 呢,继续查找资料,然后在 Desktop environment 发现了 Xfce

Xfce

Xfce 是个轻量级的类 Unix 桌面环境,It aims to be fast and low on system resources。

安装 X Window

主要参考:https://wiki.gentoo.org/wiki/Xorg/Guide

查看显卡信息,可以得到:

# emerge --ask sys-apps/pciutils
# lspci | grep VGA
# lspci | grep VGA
01:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Oland [Radeon HD 8570 / R7 240 OEM]
# emerge --sync
# emerge --ask x11-drivers/radeon-ucode

配置 Linux 内核,输入以下命令:

# cd /usr/src/linux
# make menuconfig

修改 make.config 配置, /etc/portage/make.conf:

# (For mouse, keyboard, and Synaptics touchpad support)
INPUT_DEVICES="evdev synaptics"
# (For AMD/ATI cards)
VIDEO_CARDS="radeon"

然后执行:emerge --ask --verbose x11-base/xorg-drivers

安装 Xorg:emerge --ask x11-base/xorg-server 安装完成后,更新环境:env-update && source /etc/profile 然后重启系统。 登入,启动 startx,成功了:

Portage/Sync 配置

在日常更新维护的时候遇到这样的警告:

!!! SYNC setting found in make.conf.
This setting is Deprecated and no longer used.  Please ensure your 'sync-type' and 'sync-uri' are set correctly in /etc/portage/repos.conf/gentoo.conf

解决方法主要参考 Portage/Sync

mkdir /etc/portage/repos.conf
cp /usr/share/portage/config/repos.conf /etc/portage/repos.conf/gentoo.conf
mirrorselect -i -r -o >> /etc/portage/repos.conf/gentoo.conf # 选择一个国内镜像
vi /etc/portage/make.conf # 将 SYNC 设置删除