——「1」livecd連網 #通常可自動連接,特殊網絡環境不在本文講解範圍之內
——「2」硬盤分區 #此處僅爲示例,具體分區方案依實際情況規劃
lsblk #查看磁盤概略信息,也可選擇用fdisk -l查看
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 119.2G 0 disk
├─sda1 8:1 0 599M 0 part /boot/efi
└─sda2 8:2 0 118.7G 0 part /
sdb 8:16 0 931.5G 0 disk
└─sdb1 8:17 0 931.5G 0 part
└─vgx-home 253:0 0 2.7T 0 lvm /home
sdc 8:32 0 931.5G 0 disk
└─sdc1 8:33 0 931.5G 0 part
└─vgx-home 253:0 0 2.7T 0 lvm /home
sdd 8:48 0 931.5G 0 disk
└─sdd1 8:49 0 931.5G 0 part
└─vgx-home 253:0 0 2.7T 0 lvm /home
parted -a optimal /dev/sda #-a optimal確保4k對齊
mkpart ESP 0% 600M
mkpart rootfs 600M 100%
set 1 boot on #標記ESP分區
p
align-check optimal ? #檢測4k對齊,?指分區序號1/2/3...
mkfs.vfat -F 32 /dev/sda1 #ESP分區必須爲fat32格式
mkfs.ext4 /dev/sda2
parted -a optimal /dev/sdb
mkpart lvm 0% 100%
p
align-check optimal 1
lvm2磁盤操作:
pvcreate /dev/sdb1 #新建物理卷
vgcreate vg /dev/sdb1 #新建卷組並命名爲vg
lvcreate --size 2g --name swap vg #新建邏輯卷並命名爲swap
lvcreate --extends 100%FREE --name home vg #使用全部剩餘空間,新建邏輯卷並命名爲home
vgchange --activate y #激活卷組
ls /dev/vg #查看已創建的lvm分區
mkswap /dev/vg/swap
swapon /dev/vg/swap #激活swap分區
mkfs.ext4 /dev/vg/home
——「3」基本環境搭建:下載stage3並chroot
mount /dev/sda2 /mnt/gentoo
cd /mnt/gentoo/
links
http://www.gentoo.org/main/en/mirror.xml #選擇網易鏡像,到releases/amd64/autobuilds目錄下載stage3,D下載Q結束
tar jxvfp stage3....tar.bz2
blkid | grep /dev/sda2 >> /mnt/gentoo/etc/fstab #存儲rootfs的PARTUUID,以備第6步操作中寫入內核
mkdir -p /mnt/gentoo/boot/efi
mount /dev/sda1 /mnt/gentoo/boot/efi
mkdir -p /mnt/gentoo/boot/efi/gentoo/boot #EFI分區存放內核的目錄
mount /dev/vg/home /mnt/gentoo/home
mount -t proc proc /mnt/gentoo/proc #chroot準備
mount --rbind /sys /mnt/gentoo/sys
mount --rbind /dev /mnt/gentoo/dev
mirrorselect -i -o >> ./etc/portage/make.conf #設置portagetree更新源
mirrorselect -i -r -o >> ./etc/portage/make.conf #設置snapshots更新源
cp -L /etc/resolv.conf ./etc #nameserver data #複製域名服務器信息
chroot /mnt/gentoo /bin/bash
source /etc/profile
export PS1="[chroot]$PS1" #可選操作,僅爲提示功能
emerge-webrsync #更新快照
emerge --sync --quiet #更新portagetree
eselect profile list #選擇mirror具體目錄
eselect profile set ? #可選擇純64位安裝
——「4」編譯參數設置
nano -w /etc/portage/make.conf
CFLAGS="-march=native -o2 -pipe"
MAKEOPTS="-j9" #CPU線程數+1
USE="默認項 ssse3 sse4 avx avx2” #查看/proc/cpuinfo覈對
USE=“-gnome -kde -minimal -qt4 dbus jpeg lock session startup-notification thunar X" #xfce4桌面環境需要
USE=”gtk xvmc” #nvidia專有驅動需要
ACCEPT_LICENSE="-* @FREE" #僅使用自由軟件
ACCEPT_KEYWORDS="amd64" #僅使用穩定版,添加 ~ 指兼納不穩定版本
PORTAGE_ELOG_CLASSES="info warn error log qa"
PORTAGE_ELOG_SYSTEM="save"
VIDEO_CARDS="nvidia" #intel顯卡爲”intel”
INPUT_DEVICES="evdev"
LINGUAS="zh_CN zh_TW" #中文設置
——「5」本地化設置
echo "Asia/Shanghai" > /etc/timezone
emerge --config sys-libs/timezone-data
nano /etc/locale.gen
zh_CN.UTF8 UTF8
us_US.UTF8 UTF8
locale-gen
locale -a
eselect locale list
eselect locale set ?
env-update && source /etc/profile
——「6」選擇內核項&編譯
lspci #查看硬件型號,需先安裝pciutils
lsmod #查看livecd目前有效的硬件驅動模塊,供參考
emerge gentoo-sources #下載內核源碼
ls -l /usr/src/linux #確認linux內核
cd /usr/src/linux
make menuconfig #內核功能選擇
##添加特殊驅動、GPT&EFI支持
##精簡文件系統、無關驅動、非intel相關項等
##root目錄寫進內核
Processor type and features --->
[*]Built-in kernel command line
root=/dev/sda2或root=PARTUUID=...#用blkid命令查看PARTUUID(特別注意:非UUID)
##x11-base/xorg-server需要的選項:
Device Drivers --->
Graphics support --->
Support for frame buffer devices --->
## (Disable all drivers, including VGA, Intel, nVidia, and ATI)
## (Further down, enable basic console support. KMS uses this.)
Console display driver support --->
<*> Framebuffer Console Support
##intel顯卡(x11-base/xorg-server):
Device Drivers --->
Graphics support --->
/dev/agpgart (AGP Support) --->
<*> Intel 440LX/BX/GX, I8xx and E7x05 chipset support
Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) --->
<*> Intel 8xx/9xx/G3x/G4x/HD Graphics
##nvidia專有驅動(x11-base/xorg-server):
[*] Enable loadable module support --->
Processor type and features --->
[*] MTRR (Memory Type Range Register) support
Device Drivers --->
Graphics support --->
Frame buffer Devices --->
<*> Support for frame buffer devices --->
< > nVidia Framebuffer Support #disable
< > nVidia Riva support #disable
make && make modules_install
cp /usr/src/linux/arch/x86_64/boot/bzimage /boot/efi/gentoo/boot/bootx64.efi
——「7」網絡設置&fstab
設置有線網絡:
nano /etc/conf.d/hostname #hostname="kyss"
nano /etc/conf.d/net #config_neo1="dhcp"
cd /etc/init.d
ln -s net.lo net.eno1 #eno1爲示例,用ifconfig查看網卡具體名稱
rc-update add net.eno1 default
emerge dhcpcd #安裝dhcp客戶端
nano -w /etc/fstab
/dev/sda1 /boot/efi vfat defaults,discard 0 2
/dev/sda2 / ext4 defaults,noatime,errors=remount-ro,discard 0 1
/dev/vg/swap none swap noatime,discard 0 0
/dev/vg/home /home ext4 defaults,noatime,errors=remount-ro 0 2
passwd root#爲root設置密碼
——「8」設置系統啓動菜單
emerge efibootmgr
exit
cd
umount -l /mnt/gentoo/dev{/shm,/pts,}
umount /mnt/gentoo{/boot,/proc,/sys,}
reboot
modprobe efivars #必須切換至UEFI環境,選擇/dev/sda2爲root目錄
efibootmgr -c -d /dev/sda -p 1 -L Gentoo -l "\gentoo\boot\bootx64.efi"
emerge lvm2 #目標主機安裝lvm2
rc-update add lvm boot #添加至boot運行級,確保邏輯捲開機掛載
——「9」安裝xorg&xfce4
rm stage3....tar.bz2
useradd -m -G users,wheel,audio,video,usb /bin/bash fh
passwd fh
##xorg&xfce安裝詳情見gentoo-wiki:
##https://wiki.gentoo.org/wiki/Xorg/Configuration#Installing_Xorg
##http://wiki.gentoo.org/wiki/Xfce/HOWTO
emerge -pv xorg-drivers #查看相關信息
echo "x11-base/xorg-server udev" >> /etc/portage/package.use
emerge --ask xorg-server #根據提示添加額外USE
env-update && source /etc/profile
##若爲nvidia顯卡,需要的額外操作:
##nvidia-xconfig
##eselect opengl set nvidia
##eselect opencl set nvidia
emerge --ask xfce4-meta #根據提示添加額外USE
env-update && source /etc/profile
emerge --ask x11-terms/xfce4-terminal
echo XSESSION="Xfce4" > /etc/env.d/90xsession
chown -R fh:fh /home/fh #change ownership of all in fh directory back
startx
emerge --ask:
xfce4-battery-plugin
xfce4-sensors-plugin
xfce4-power-manager
xfce4-mixer #調節音量
xfce4-taskmanager
mplayer
firefox
app-admin/syslog-ng
sys-process/cronie
sys-apps/mlocate
rc-update add syslog-ng default
rc-update add cronie default
rc-update add sshd default