Gentoo 系统 - (一)系统配置与安装

写在前面

细细算来, 使用 linux 已经 7,8 年了, 从最早的 ubuntu, deepin 开始, 到最后的 archlinux, 算是打造了自己的系统. 但是 ubuntu, deepin 可定制性比较差, archlinux 更新大量包时容易挂掉, 都不算是心目中最理想的系统.

gentoo 在最开始用 linux 系统的时候就知道了, 当时有一段时间也尝试给笔记本安装 gentoo, 但是由于当时时间有限, 折腾了一周没有安装好, 就放弃了, 之后一直用 archlinux. 以后准备从事 NPL 和知识图谱方面的工作, 最近配了一台深度学习机, 从头开始安装 gentoo 系统, 进行个人配置, 共撰写三篇博客记录 gentoo 折腾过程, 这篇博客主要记录 gentoo 系统安装和配置过程, 后续还有软件安装配置和 gentoo 学习体会.

制作安装媒介

启用使用 UEFI 安装, 因此下载 liveDVD, 参照选择正确的安装媒介1, 这里需要注意两点:

  1. 在 windows 下制作 linux UEFI, 用 Rufus U 盘工具2
  2. gentoo liveDVD 默认登录密码是: gentoo, 登录后, 在终端调输入 sudo su - 或者 sudo -i 来获取所需权限.

磁盘分区

选用 parted 进行分区, 默认选用 GPT 分区表

按照下表格进行分区

Table 1: 磁盘分区表
分区 文件系统 大小
/dev/sdb1 (bootloader) 200M
/dev/sdb2 fat32 1024M
/dev/sdb3 swap 32G
/dev/sdb4 ext4 200G
/deb/sda1 ext4 2T

这里注意:

  1. 使用 UEFI 进行引导的分区, 需格式化成 fat32.

安装 stage3

使用有线网进行安装, liveDVD 进入后, 网络可以直接连接

用 USB 2.0 端口启动 U 盘进行安装, 3.0 不能进入

# 获取管理员权限
sudo -i

# 挂载 root 分区
mount /dev/sdb4 /mnt/gentoo

# 切换到 gentoo 目录
cd /mnt/gentoo

# 选择合适的 stage3 镜像, 获取地址并下载 https://www.gentoo.org/downloads/
wget <URL>

# 解压下载文件
tar xpf stage3-*.tar.{bz2,xz} --xattrs-include='*.*' --numeric-owner

# 修改编译选项, 为后续安装 gnome, 修改 USE 选项如下
nano -w /etc/portage/make.conf
USE="-qt4 -qt5 -kde X gtk gnome systemd cjk gnome-keyring ipv6 libnotify \
     networkmanager zsh-completion wifi alsa pulseaudio"

安装基础系统

# 选择镜像, 选择中国 163 源
cd
mirrorselect -i -o >> /mnt/gentoo/etc/portage/make.conf

# 创建 Gentoo ebuild 仓库, 复制 DNS 信息
mkdir /mnt/gentoo/etc/portage/repos.conf
cp /mnt/gentoo/usr/share/portage/config/repos.conf /mnt/gentoo/etc/portage/repos.conf/gentoo.conf
cp -L /etc/resolv.conf /mnt/gentoo/etc/

# 挂载必要的文件系统
mount -t proc /proc /mnt/gentoo/proc
mount --rbind /sys /mnt/gentoo/sys
mount --make-rslave /mnt/gentoo/sys
mount --rbind /dev /mnt/gentoo/dev
mount --make-rslave /mnt/gentoo/dev 

# 进入新环境, 并关在 boot 分区
chroot /mnt/gentoo /bin/bash && source /etc/profile && export PS1="(chroot) $PS1"
mkdir /boot
mount /dev/sdb2 /boot

# 更新 Portage ebuild 数据库, emerge-webrsync 更新最近 24 小时的, 节省带宽, emrege-sync 更新 1h 的
emrege-webrsync
emerge --sync

# 可以通过 eselect news list/read 查看 rsync 的消息

# 通过 eselect profile list/set 选择 profile,选择最近稳定版的 linux-gnome-system
eselect profile list
eselect profile set 18

# 更新@world
emerge --ask --update --deep --newuse @world

# 更新时区
ls /usr/share/zoneinfo
echo "Asia/Shanghai" > /etc/timezone
emerge --config sys-libs/timezone-data

# 配置地区
nano -w /etc/locale.gen
en_US ISO-8859-1
en_US.UTF-8 UTF-8
#ja_JP.EUC-JP EUC-JP
#ja_JP.UTF-8 UTF-8
#ja_JP EUC-JP
#en_HK ISO-8859-1
#en_PH ISO-8859-1
#de_DE ISO-8859-1
#de_DE@euro ISO-8859-15
#es_MX ISO-8859-1
#fa_IR UTF-8
#fr_FR ISO-8859-1
#fr_FR@euro ISO-8859-15
#it_IT ISO-8859-1
zh_CN.GB18030 GB18030
zh_CN.GBK GBK
zh_CN.UTF-8 UTF-8
zh_CN GB2312
zh_TW.UTF-8 UTF-8

locale-gen
eselect locale list
eselect locale set 2

# 重现加载环境
env-update && source /etc/profile && export PS1="(chroot) $PS1"

配置内核与系统

选用自动配置方法

# 配置内核
emerge --ask sys-kernel/gentoo-sources
emerge --ask sys-kernel/genkernel
nano -w /etc/fstab
/dev/sdb2     /boot   vfat    defaults        0 2

genkernel all
ls /boot/kernel* /boot/initramfs*

# 安装固件
emerge --ask sys-kernel/linux-firmware

# 配置文件系统信息
nano -w /etc/fstab
/dev/sdb2     /boot   vfat    defaults,noatime        0 2
/dev/sdb3     none    swap    sw              0 0
/dev/sdb4     /       ext4    noatime,defaults,discard        0 1
/dev/sda1     /media/data     ext4    noatime,rw      0 2

/dev/cdrom  /mnt/cdrom   auto    noauto,user          0 0

# 配置主机名
nano -w /etc/conf.d/hostname
hostname="tux"

# 安装日志工具, 文件系统工具, 网络工具
emerge --ask app-admin/sysklogd
emerge --ask sys-fs/dosfstools
emerge --ask net-misc/dhcpcd

配置引导工具和添加账户

# 安装 grub2 引导工具
echo 'GRUB_PLATFORMS="efi-64"' >> /etc/portage/make.conf
emerge --ask sys-boot/grub:2
grub-install --target=x86_64-efi --efi-directory=/boot

# 配置 grub2
grub-mkconfig -o /boot/grub/grub.cfg

# 设置管理员账户密码, 添加账户 lengyue 并设置密码
passwd
useradd -m -G users,wheel,audio,video,cdrom,portage -s /bin/bash lengyue
passwd lengyue

Gnome 安装与配置

# 安装 startx
emerge --ask --verbose x11-base/xorg-drivers
emerge --ask x11-base/xorg-server
echo "exec gnome-session" > ~/.xinitrc

# Gnome 启动画面加入 gentoo 图标
echo "gnome-base/gnome-session branding" >> /etc/portage/package.use

# 安装 gnome
emerge --ask gnome-base/gnome

# 更新环境
env-update && source /etc/profile

# GDM 服务开机启动
systemctl enable gdm.service

# 安装网卡管理程序
emerge --ask net-misc/networkmanager
systemctl enable NetworkManager

重启系统

按照上述配置, 没有问题可以登录新系统了, 并且有 lengyue 账户

# 退出系统并重现登录
exit
cd
umount -l /mnt/gentoo/dev{/shm,/pts,}
umount -R /mnt/gentoo
reboot

Creative Commons licensing

TITLE: Gentoo 系统 - (一) 系统配置与安装
AUTHOR: lengyueyang
DATE: 2018-04-15 11:15:14 UTC+08:00
UPDATED:
LICENSE: The blog is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License, commercial use is not allowed, for any reprint, please indicate address and signature.

Comments

Comments powered by Disqus