gentoo安装

安装时网络

开启dhcp

dhcpcd eth0

测试网络:

ping baidu.com

不能通:

net-setup

分区

fdisk /dev/vda

分一个256的efi(/dev/vda1),用于挂载到/boot,再分一个32G的swap,再分一个/(/dev/vda3)

文件系统

efi

mkfs.vfat -F 32 /dev/vda1

/

mkfs.ext4 /dev/vda3

swap建议先不要开。

挂载分区
mkdir --parents /mnt/gentoo
mount /dev/vda3 /mnt/gentoo

安装stage包

设置时间

date 102113392022	#日月时分年

下载stage

cd /mnt/gentoo
links https://mirrors.tuna.tsinghua.edu.cn/gentoo

选里面的release/amd64/autobuilds/里的stage3-*desktop-oprc*。

解压:

tar xpvf stage3-*.tar.xz --xattrs-include='*.*' --numeric-owner

配置编译选项

nano -w /mnt/gentoo/etc/portage/make.conf

参照着官网给的改一下:

# 为所有语言设置编译标志
COMMON_FLAGS="-march=native -O2 -pipe"
# 为两个变量使用相同的设置
CFLAGS="${COMMON_FLAGS}"
CXXFLAGS="${COMMON_FLAGS}"

在make.conf中最好再加上

MAKEOPTS="-j2"

这里-j后面的数字取决于你的RAM,每个job需要至少2GB,如-j6需要12GB。

选择镜像站点

分发文件

官网给的是:

mirrorselect -i -o >> /mnt/gentoo/etc/portage/make.conf

这个命令在我这里用不了,只能手加了,选清华源:

nano /mnt/gentoo/etc/portage/make.conf

在里面加上:
GENTOO_MIRRORS="https://mirrors.tuna.tsinghua.edu.cn/gentoo"

Gentoo build软件仓库

通过复制/etc/portage/repos.conf/gentoo.conf文件来配置。

$ 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

实测后面安装软件用官方链接很慢,所以还是把它换成清华源,
修改 /etc/portage/repos.conf/gentoo.conf ,

sync-uri = rsync://rsync.gentoo.org/gentoo-portage

修改为

sync-uri = rsync://mirrors.tuna.tsinghua.edu.cn/gentoo-portage

复制DNS

在进行新环境之前,还有一件要做的事情就是复制/etc/resolv.conf中的DNS信息。需要完成这个来确保即使进入到新环境后网络仍然可以使用。/etc/resolv.conf包含着当前网络中的DNS服务器。

cp --dereference /etc/resolv.conf /mnt/gentoo/etc/

cp命令的 --dereference 选项。这可以保障如果/etc/resolv.conf是一个符号链接的话,复制的是那个目标文件而不是这个符号文件自己。

挂载文件系统

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
mount --bind /run /mnt/gentoo/run
mount --make-slave /mnt/gentoo/run

–make-rslave操作是稍后安装systemd支持时所需要的。

进入新环境

完成chroot有三个步骤:

  • 使用 chroot 将根目录的位置从 /(在安装媒介里)更改成 /mnt/gentoo/ (在分区里)
  • 使用 source 命令将一些设置(那些在 /etc/profile 中的)重新载入到内存中
  • 更改主提示符来帮助我们记住当前会话在一个 chroot 环境里面。
chroot /mnt/gentoo /bin/bash
source /etc/profile
export PS1="(chroot)${PS1}"
挂载boot分区:

现在已经进入新的环境,必须创建并挂载 boot 分区。 当编译内核并安装引导加载程序时,这将非常重要

mount /dev/vda1 /boot

配置Portage

emerge --sync

这里sync比较慢,我们前面设置的是系统的,这里还在引导,所以设置环境变量用清华源:

export GENTOO_MIRRORS="http://mirrors.tuna.tsinghua.edu.cn/gentoo"
export GNU_URL="http://mirrors.tuna.tsinghua.edu.cn/gnu"
export SNAPSHOT_URL="http://mirrors.tuna.tsinghua.edu.cn/gentoo/snapshots"

选择正确的配置文件:

eselect profile list

default/linux/amd64/17.1/desktop

eselect profile set 2

配置文件是任何一个Gentoo系统的积木。它不仅指定USE、CFLAGS和其它重要变量的默认值,还会锁定系统的包版本范围。这些设定全是由Gentoo的Portage开发者们来维护。

更新@world集合

emerge --ask --verbose --update --deep --newuse @world

这一步比较慢,好等。

配置USE变量

CPU_FLAGS_*

$ emerge --ask app-portage/cpuid2cpuflags
$ echo "*/* $(cpuid2cpuflags)" > /etc/portage/package.use/00cpu-flags

时区

echo "Asia/Shanghai" > /etc/timezone
区域设置生成
$ nano -w /etc/locale.gen

#改成下面的:
en_US ISO-8859-1
en_US.UTF-8 UTF-8
zh_CN,UTF-8 UTF-8

$ locale-gen
区域设置选择

先不管

编译内核

安装内核源码:

emerge --ask sys-kernel/gentoo-sources

这会在/usr/src中安装源码。

可用查看一下,列出所有已经安装的内核:

eselect kernel list
[1]   linux-5.15.52-gentoo

要创建一个名为 linux 的符号链接,使用:

$ eselect kernel set 1
$ ls -l /usr/src/linux
lrwxrwxrwx    1 root   root    12 Oct 13 11:04 /usr/src/linux -> linux-5.15.52-gentoo
配置内核选项

看官网

安装预编译内核
vi /etc/portage/make.conf ACCEPT_LICENSES="linux-fw-redistributable no-source-code"

emerge gentoo-kernel-bin

文件系统信息

nano -w /etc/fstab

参照下面的:

 调整与准备磁盘步骤的任何格式差异
/dev/sda1   /boot        vfat    defaults,noatime     0 2
/dev/sda2   none         swap    sw                   0 0
/dev/sda3   /            ext4    noatime              0 1  
/dev/cdrom  /mnt/cdrom   auto    noauto,user          0 0

网络

安装配置dhcp

emerge --ask net-misc/dhcpcd
rc-update add dhcpcd default
rc-service dhcpcd start

在Gentoo Linux安装时,网络已经配置。然而,这是安装的 live 环境本身的配置,并不是新的系统环境的网络配置。现在你所要设置的是 Gentoo 系统的永久网络配置。

emerge --ask --noreplace net-misc/netifrc
nano -w /etc/conf.d/net

在里面写上(根据你的网卡):

config_网卡名="dhcp"

为了在启动时自动激活网络接口,你必须添加这些到default运行级别。

cd /etc/init.d
ln -s net.lo net.eth0
rc-update add net.eth0 default

系统信息

root密码
passwd
安装系统日志工具(可选)
emerge --ask app-admin/sysklogd
rc-update add sysklogd default
cron守护进程(可选)
emerge --ask sys-process/cronie
rc-update add cronie default
文件索引(可选)
emerge --ask sys-apps/mlocate
sshd(可选)
rc-update add sshd default
时间同步
emerge --ask net-misc/chrony
rc-update add chronyd default
dhcpcd
emerge --ask net-misc/dhcpcd

引导器

用grub

emerge --ask --verbose sys-boot/grub

UEFI用户注意:运行上述命令将在出现之前输出启用的GRUB_PLATFORMS 值。 当使用支持UEFI的系统时,用户需要确保启用 GRUB_PLATFORMS=“efi-64” 参数(默认情况下是这样)。 如果设置不是这样,则需要在安装 GRUB 之前将 GRUB_PLATFORMS="efi-64"添加到/etc/portage/make.conf:
root #echo ‘GRUB_PLATFORMS=“efi-64”’ >> /etc/portage/make.conf
root #emerge --ask sys-boot/grub

UEFI:

grub-install --target=x86_64-efi --efi-directory=/boot

当/boot分区没有格式化成vfat时,必须修改 --efi-directory选项到EFI系统分区。

grub-mkconfig -o /boot/grub/grub.cfg

重启系统

(chroot)none$ exit
  • Group Description
  • audio 允许使用声音设备
  • cdrom 允许直接使用光驱设备
  • floppy 允许直接使用软驱
  • games 允许运行游戏
  • portage 能够访问portage受限资源。
  • usb 允许使用USB设备
  • video 允许使用视频采集设备和硬件加速
  • wheel 可以使用su.
cdimage ~#cd
cdimage ~#umount -l /mnt/gentoo/dev{/shm,/pts,}
cdimage ~#umount -R /mnt/gentoo
cdimage ~#reboot

用户管理

useradd -m -G users,whell,audio -s /bin/bash sixqaq
passwd sixqaq
删除tar包
rm /stage3-*.tar.*

完成。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

barbyQAQ

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值