Win10双系统安装Gentoo-(附Networkmanagr/Gnome安装)
火Le枫林 人气:0
安装Gentoo
本文主要参考的是官方Wiki,还有一些网友的经验,在后面的具体安装步骤里会分享对应网友的一些解决办法和相关文章
官方Wiki:https://wiki.gentoo.org/wiki/Handbook:AMD64/Installation/About/zh-cn
1、在[官网](https://www.gentoo.org/downloads/)下载对应的安装包(**Minimal Installation CD**和最新的**stage3**,本文使用的是**OpenRC**的),然后使用软碟通制作启动U盘,把**Minimal Installation CD**写入U盘,之后把**stage3**包复制到U盘的根目录(本文不使用在安装过程中从网上下载的方式)
2、重启电脑,进入安装过程,选择**Gentoo**内核
3、选择键盘布局,这一步一般不用选择,默认是**US键盘**
4、建立账号,这一步官网上说可选的,因为目前还是在**LiveCD**中,即使建立了用户,也不会出现在新安装的系统中,所以就不用建立账号了。
5、配置网络(这一步在官网中写的比较简单,而且使用**wpa_supplicant**的,但是这个客户端实际使用中更换网络比较麻烦,所以咱们不安装**wpa_supplicant**而是**NetworkManager**)
a、连接网络
这一步里我是使用USB网络共享的,而且整个安装过程中使用的都是USB共享网络,官网里是直 安装wpa_supplicant然后连接Wifi,因为咱们要安装**NetworkManager**,这里就不采用官网的这种 方式了,因为后面还要多余配置一些东西,如果流量不够用的话,可以使用官网的方式,先安wpa_supplicant,系统安装完成之后在卸载,重新安装**NetworkManager**,具体可以参考[这篇文章](http://www.etwiki.cn/ubuntu/05-gentoo-install-networkmanager-and-vpn.html),我的这一部分就是结合官方Wiki和这篇文章做的。
b、测试网络 ping www.baidu.com
如果没有ping通的话,改下DNS
`nano /etc/resolv.conf`
添加 `nameserver 114.114.114.114`
这里到这就行了,NetworkManager的安装配置在后文中介绍。
6、磁盘分区
磁盘分区这里比较简单,不过要强调一点,对于小白的我来说,之前就卡在了这,不知道双系统的/boot挂载点怎么设置。在看了不少的文章后((lll¬ω¬)),才发现这里只需要将原系统的EFI分区挂到/boot里就行了。而且还需要确定自己系统的分区类型是MBR的还是GPT的,官方Wiki建议使用GPT类型的,如果需要MBR转GPT或者GPT转MBR,则需要提前在安装系统前进行设置(使用**DiskGenius**进行格式转换),
下面做具体设置(使用**parted**程序):
a、`parted -a optimal /dev/sda`
b、`mklabel gpt` 设置gpt标签,这里要慎重,官方Wiki上说如果在分区程序里改变分区格式,程序会移除磁盘上所有分区,而且数据也会丢失,实际安装中,我的磁盘分区类型是GPT的,就没改。MBR分区用`mklabel msdos`(parted命令可以看到自己的分区类型)
c、`unit mib` 设置磁盘容量显示单位,GB用unit Gib
d、分区
| 磁盘 | 文件系统 | 挂载点 | 大小 |
| ---------- | -------- | ------ | -------------------- |
| /dev/sda1 | fat32 | /boot | sda1是已经存在的分区 |
| /dev/sda10 | ext4 | / | 125G |
| /dev/sda11 | ext4 | /home | 200G |
| /dev/sda12 | ext4 | swap | 8G |
`mkpart root [start] [end]` 创建名字叫root的分区,区间为[start,end],例如xxx xxx+12800
`mkpart home [start] [end]` 创建名字叫home的分区,区间为[start,end]
`mkpart swap [start] -1` 创建名字叫home的分区,区间为start到磁盘尾部,-1表示磁盘尾部减去1MB,这里是分区能够到达的最远处
这里不需要设置boot分区了,咱们直接利用已经存在的windows系统的ESP分区,如果是单系统的话,这里需要boot分区,注意boot分区需要格式化为**fat32(mkfs.vfat)**
e、`print`或者`p` 查看分区信息
f、格式化、激活swap
`mkfs.ext4 /dev/sda10`
swap分区不需要格式化
初始化swap:`mkswap /dev/sda12`
激活swap:`swapon /dev/sda12`
g、`mount /dev/sda10 /mnt/gentoo` 挂在root分区,下面进入root分区安装系统
7、安装stage3包
a、设置系统日期时间:`date [MMDDhhmmYY].[ss]`
如2021年4月21日16:50:30 :`date 042116502021.30`
b、把U盘内的stage3包复制到系统内
`cp /mnt/cdrom/stage* /mnt/gentoo/`
c、解压缩:`tar xpvf stage3-*.tar.bz2 --xattrs-include='*.*' --numeric-owner`(参数解释见Wiki)
d、配置编译选项:
`nano /mnt/gentoo/etc/portage/make.conf`
设置`COMMON_FLAGS="-march=native -O2 -pipe"`
添加`MAKEOPTS="-j2"` 这里的j2表示电脑的**核心数+1**,比如8核用“-j9”
e、镜像源、仓库、DNS设置、挂载目录
镜像源:
`mirrorselect -i -o >> /mnt/gentoo/etc/portage/make.conf`
镜像源建议选择163的
仓库:
创建仓库:`mkdir --parents /mnt/gentoo/etc/portage/repos.conf`
复制仓库配置文件:`cp /mnt/gentoo/usr/share/portage/config/repos.conf /mnt/gentoo/etc/portage/repos.conf/gentoo.conf`
DNS:复制LiveCD里的DNS信息:`cp --dereference /etc/resolv.conf /mnt/gentoo/etc/`
这里建议复制完成后看一下,自己给设置成**114.114.114.114**的
挂载目录:
`mount --types 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`
`--make-rslave`操作是稍后安装**systemd**支持时所需要的,我安装的是**OpenRC**所以带`--make-rslave`的命令就不用敲了
f、进入新环境
`chroot /mnt/gentoo /bin/bash`
`source /etc/profile`
`export PS1="(chroot) ${PS1}"`
g、挂载分区
`mount /dev/sda1 /boot` 这里直接把sda1(ESP分区)挂到Gentoo的/boot分区就行了,后面再安装grub就能实现双系统的引导了
7、设置用户
`passwd` 设置root密码
新建用户:
`useradd -m -G users hlfl`
`passwd hlfl`
安装sudo(具体的软件名查询用 emerge --search sudo,emerge--ask xxx/xxx安装)
`nano /etc/sudoers`
在root行**(root ALL=(ALL) ALL)**添加**hlfl ALL=(ALL) ALL**
8、配置portage
a、更新系统软件包
`emerge --sync` (这个命令需要时间比较长,可以用`emerge-webrsync`代替,只更新快照(虽然我也不知道什么是快照(lll¬ω¬)))
b、选择配置文件
`eselect profile list` 查看有哪些配置文件
`eselect profile set 2` 选择第2个profile(因为后面要安装Gnome,而且不用systemd,所以选择对应的profile...没有图这里就不列了...大概是**/default/linux/amd64/17.1/desktop/gnome**),注意不要选择带no-multilib,因为这个表示**只能**用64位的程序。
d、更新world
`emerge --ask --verbose --update --deep --newuse @world` 这个耗时比较久
这里更新时可能会提示USE有问题,这时候需要编辑USE标签(**/etc/portage/make.conf**),一般提示循环以来问题,这时候要根据提示,把某一个标签在USE里去掉`USE=“-x1 -x2”`
e、时区设置:`echo "Asia/Shanghai" > /etc/timezone`
更新时区:`emerge --config sys-libs/timezone-data`
f、配置locale
a、设置语言区域:`nano /etc/locale.gen`
添加:
`en_US.UTF-8 UTF-8`
`zh_CN.UTF-8 UTF-8`
`zh_CN.GBK GBK`
`zh_CN.GB2312 GB2312`
`zh_CN.GB18030 GB18030`
b、生成locale.gen中指定的区域
`locale-gen` 使用locale可以查看生成了哪些地区
c、选择地区
`eselect locale list`
`eselect locale set xx` 这里选择英文的locale,避免中文在终端显示乱码
d、通过编辑**/etc/env.d/02locale**(有的文章说要在100i18n里设置,经测试编辑这个文件没有效果,而且官网也是编辑02locale,这里用官网的方法)进行详细设置,这里设置的是电脑的各种显示格式
`LANG=en_US.UTF-8`
`LC_CTYPE=zh_CN.UTF-8` 这里好像不能设置成**zh_CN.GBK**,我之间这样设置总会导致gnome-shell打不开,**想要使用中文输入法,这里必须设置成中文**
这里的优先级:**LC_ALL>LC_*>LANG**
`LC_ALL`:强制设置所有的LC_*
`LANG`:是那些未设置的LC_*的默认选项
关于locale,可以看看[这篇文章](https://www.jianshu.com/p/86358b185e53)和[这篇](https://blog.csdn.net/mengxingyuanlove/article/details/49804153)
e、更新环境变量让设置起效
`sudo env-update && source /etc/profile`
9、安装Gnome
1、设置USE
`nano /etc/portage/make.conf`
添加 **USE=“-qt5 -kde X gtk gnome”**
2、 `emerge --ask gnome-base/gnome`
`env-update && source /etc/profile` 更新环境变量
`gpasswd -a
加载全部内容