gentoo 是一個 linux 的版本,所有軟件編譯安裝,但是這種安裝過程耗時太長,已經不適合這個需要快速的時代。但是通過手動安裝的過程,可以更深入的了解linux。
gentoo 的文檔非常全面,大部分的問題都可以通過操作手冊解決
https://wiki.gentoo.org/wiki/Handbook:Main_Page
1.分區
默認:利用parted工具,進行gpt分區
parted -a optimal /dev/sda mklabel gpt (choice yes) unit MB mkpart primery 1 20 name 1 grub set 1 bios_grub on print mkpart primary 21 500 name 2 boot mkpart primary 501 8501 name 3 swap mkpart primary 8502 -1 print name 4 root quit
可選:利用fdisk進行mbr分區。有寫電腦並不支持gpt分區,可以采用這種格式
fdisk /dev/sda
創建 bios boot (我實驗中創建的是512M,顯然是浪費空間了)
Command (m for help):n Command action e extended p primary partition (1-4) p Partition number (1-4): 1 First sector (64-10486533532, default 64): 2048 Last sector, +sectors +size{M,K,G} (4096-10486533532, default 10486533532): +2M
創建 boot
Command (m for help):n Command action e extended p primary partition (1-4) p Partition number (1-4): 2 First sector (5198-10486533532, default 5198): (Hit enter) Last sector, +sectors +size{M,K,G} (4096-10486533532, default 10486533532): +128M 選擇 a , 選擇 2 ,標記 此為 boot 分區
創建swap
Command (m for help):n Command action e extended p primary partition (1-4) p Partition number (1-4): 3 First sector (5198-10486533532, default 5198): (Hit enter) Last sector, +sectors +size{M,K,G} (4096-10486533532, default 10486533532): +512M Command (m for help):t Partition number (1-4): 3 選擇82 或者輸入 l 查看編號,查看linux swap選項。
創建 root
Command (m for help):n Command action e extended p primary partition (1-4) p Partition number (1-4): 4 First sector (5198-10486533532, default 5198): (Hit enter) Last sector, +sectors +size{M,K,G} (4096-10486533532, default 10486533532): (Hit enter)
查看p
Command (m for help):p Disk /dev/sda: 30.0 GB, 30005821440 bytes 240 heads, 63 sectors/track, 3876 cylinders Units = cylinders of 15120 * 512 = 7741440 bytes Device Boot Start End Blocks Id System /dev/sda1 1 3 5198+ ef EFI (FAT-12/16/32) /dev/sda2 * 3 14 105808+ 83 Linux /dev/sda3 15 81 506520 82 Linux swap /dev/sda4 82 3876 28690200 83 Linux
保存
w
創建文件系統
mkfs.ext2 /dev/sda2 mkfs.ext4 /dev/sda4 mkswap /dev/sda3 swapon /dev/sda3
掛載磁盤
mount /dev/sda4 /mnt/gentoo
2. 安裝基本系統 stage
cd /mnt/gentoo
下載,選擇國內的鏡像下載速度會快一點
wget http://mirrors.163.com/gentoo/releases/amd64/autobuilds/20200708T103427Z/stage3-amd64-20200708T103427Z.tar.xz
解壓
tar xpvf stage3-*.tar.xz --xattrs-include='*.*' --numeric-owner
設置 鏡像源,選擇163
mirrorselect -i -o >> /mnt/gentoo/etc/portage/make.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
拷貝DNS
cp --dereference /etc/resolv.conf /mnt/gentoo/etc/
掛載磁盤
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
進入環境
chroot /mnt/gentoo /bin/bash source /etc/profile export PS1="(chroot) ${PS1}"
掛載boot
mount /dev/sda2 /boot
配置 Portage
emerge-webrsync emerge --sync
選擇環境
eselect profile list eselect profile set 8 (選擇 kde plams 對應的編號) emerge --ask --verbose --update --deep --newuse @world nano -w /etc/portage/make.conf USE="-gtk -gnome qt4 qt5 kde dvd alsa cdr"
配置時間
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 zh_CN.UTF-8 UTF-8 locale-gen eselect locale list eselect locale set 5 (選擇自己認為的編碼作為主要顯示) env-update && source /etc/profile && export PS1="(chroot) ${PS1}"
3.編譯內核
emerge --ask sys-kernel/gentoo-sources ls -l /usr/src/linux emerge --ask sys-kernel/genkernel nano -w /etc/fstab /dev/sda2 /boot ext2 defaults,noatime 0 2 /dev/sda3 none swap sw 0 0 /dev/sda4 / ext4 noatime 0 1 time genkernel all genkernel --install initramfs emerge --ask sys-kernel/linux-firmware
4.設置環境
nano /etc/conf.d/hostname hostname="gentoo" nano /etc/hosts 127.0.0.1 localhost gentoo
5.設置root 密碼
passwd
6.安裝必要軟件
emerge --ask app-admin/sysklogd rc-update add sysklogd default emerge --ask sys-process/cronie rc-update add cronie default crontab /etc/crontab rc-update add sshd default rc-update add dhcpcd default rc-update add sshd default
7.安裝 grub
emerge --ask --verbose sys-boot/grub:2 grub-install /dev/sda grub-mkconfig -o /boot/grub/grub.cfg
8.重啟系統
exit cd umount -l /mnt/gentoo/dev{/shm,/pts,} umount -R /mnt/gentoo reboot
以下為桌面安裝部分>>>>>>>>>>>>>>>>>>>>>>>
9.創建一個普通能夠登陸的用戶
useradd -m -G users,wheel,audio,lp,cdrom,portage,cron -s /bin/bash super passwd super
10.查看CPU核數並配置
cat /proc/cupinfo |grep processor vim /etc/portage/make.conf MAKEOPTS=-j4 (我的cpu核數是4)
11.安裝ssh 和 sudo
time emerge openssh emerge sudo vim /etc/sudoers %wheel ALL=(ALL)ALL (打開注釋)
12.安裝xorg
time emerge --ask x11-base/xorg-drivers time emerge --quiet x11-base/xorg-server env-update
13.安裝sddm
time emerge --quiet sddm time emerge cupid2cpuflags cpuid2cpuflags >> /etc/portage/make.conf (把其中的:改成 =) cat /etc/portage/make.conf
14.安裝kde plasma桌面
time emerge --quiet kde-frameworks/plasma time emerge --quiet --ask kde-plasma/plasma-meta vim /etc/conf.d/xdm DISPLAYMANAGER="sddm" rc-update add xdm default
15.安裝terminal
time emerge --quiet xterm time emerge --quiet konsole #上面為兩個不同的terminal
16.重啟
reboot