Gentoo:Installation:修订间差异

来自WHY42
imported>Soleverlee
imported>Soleverlee
 
(未显示同一用户的10个中间版本)
第33行: 第33行:
mkfs.ext2 /dev/sdb6
mkfs.ext2 /dev/sdb6
mkfs.ext4 /dev/sdb9
mkfs.ext4 /dev/sdb9
e2label /dev/sdb6 boot
e2label /dev/sdb9 gentoo
mount /dev/sdb9 /mnt/gentoo/
mount /dev/sdb9 /mnt/gentoo/
cd /mnt/gentoo/
cd /mnt/gentoo/
第42行: 第45行:
=stage3=
=stage3=
[[Gentoo:安装Stage3]]
[[Gentoo:安装Stage3]]
<pre>
the [http://mirrors.sohu.com/gentoo/releases/amd64/autobuilds/current-stage3-amd64/ sohu mirror] seems to be wrong.
wget http://mirrors.sohu.com/gentoo/releases/amd64/autobuilds/current-stage3-amd64/stage3-amd64-20161222.tar.bz2
<source lang="bash">
wget http://mirrors.sohu.com/gentoo/releases/amd64/autobuilds/current-stage3-amd64/stage3-amd64-20161222.tar.bz2.DIGESTS
cd /mnt/gentoo
livecd gentoo # sha512sum stage3-amd64-20161222.tar.bz2
wget http://mirrors.163.com/gentoo/releases/amd64/autobuilds/current-stage3-amd64/stage3-amd64-20161229.tar.bz2
31b75cf5b00559f3ae4a2770895148c2e5e0bb610ef9f02484a94ace9b0e23654a5e4091d646a2d83b0e24a045bbd24d3673eb645224c805274c0cd892ffcb50  stage3-amd64-20161222.tar.bz2
sha512sum stage3-amd64-20161229.tar.bz2
livecd gentoo # cat stage3-amd64-20161222.tar.bz2.DIGESTS
cat stage3-amd64-20161229.tar.bz2.DIGESTS
# SHA512 HASH
 
31b75cf5b00559f3ae4a2770895148c2e5e0bb610ef9f02484a94ace9b0e23654a5e4091d646a2d83b0e24a045bbd24d3673eb645224c805274c0cd892ffcb50  stage3-amd64-20161222.tar.bz2
tar xvjpf stage3-*.tar.bz2 --xattrs
</source>
then edit /etc/portage/make.conf
<source lang="lua">
CFLAGS="-march=native -O2 -pipe"
MAKEOPTS="-j9"
...
USE="bindist X dbus -gtk -gnome -qt3support -ldap"
CPU_FLAGS_X86="aes avx avx2 fma3 mmx mmxext popcnt sse sse2 sse3 sse4_1 sse4_2 ssse3"
INPUT_DEVICES="evdev"
VIDEO_CARDS="intel nvidia"
...
...
livecd gentoo # tar xvjpf stage3-*.tar.bz2 --xattrs
GENTOO_MIRRORS="http://mirrors.163.com/gentoo/"
</source>
then mount system and chroot to new system:
<source lang="bash">
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


livecd gentoo # vim /mnt/gentoo/etc/portage/make.conf
chroot /mnt/gentoo /bin/bash
livecd gentoo # cp -L /etc/resolv.conf /mnt/gentoo/etc/
source /etc/profile
livecd gentoo # mount -t proc proc /mnt/gentoo/proc
export PS1="(chroot) $PS1"
livecd gentoo # mount --rbind /sys /mnt/gentoo/sys
</source>
livecd gentoo # mount --make-rslave /mnt/gentoo/sys
livecd gentoo # mount --rbind /dev /mnt/gentoo/dev
livecd gentoo # mount --make-rslave /mnt/gentoo/dev
livecd gentoo # chroot /mnt/gentoo /bin/bash
livecd / # source /etc/profile
(chroot) livecd / # emerge-webrsync
(chroot) livecd / # eselect profile set 8
(chroot) livecd / # eselect profile list
 
(chroot) livecd / # nano -w /etc/locale.gen


then update protage, and set a plamsa profile.
<source lang="bash">
emerge-webrsync
eselect profile list
eselect profile set 8
</source>
edit /etc/locale.gen
<source lang="lua">
en_US ISO-8859-1
en_US ISO-8859-1
en_US.UTF-8 UTF-8
en_US.UTF-8 UTF-8
zh_CN.UTF-8 UTF-8
zh_CN.UTF-8 UTF-8
</source>
and regenerate locale:
<source lang="bash">
locale-gen
eselect locale list
eselect locale set 6
echo "Asia/Shanghai" > /etc/timezone
emerge --config sys-libs/timezone-data


(chroot) livecd / # locale-gen
env-update && source /etc/profile && export PS1="(chroot) $PS1"
* Generating locale-archive: forcing # of jobs to 1
</source>
* Generating 3 locales (this might take a while) with 1 jobs
*  (1/3) Generating en_US.ISO-8859-1 ...                                        [ ok ]
*  (2/3) Generating en_US.UTF-8 ...                                              [ ok ]
*  (3/3) Generating zh_CN.UTF-8 ...                                              [ ok ]
* Generation complete
(chroot) livecd / # clear
(chroot) livecd / # eselect locale list
Available targets for the LANG variable:
  [1]  C
  [2]  POSIX
  [3]  en_US
  [4]  en_US.iso88591
  [5]  en_US.utf8
  [6]  zh_CN.utf8
  [ ]  (free form)
(chroot) livecd / # eselect locale set 6
Setting LANG to zh_CN.utf8 ...
Run ". /etc/profile" to update the variable in your shell.
(chroot) livecd / #
(chroot) livecd / # env-update && source /etc/profile && export PS1="(chroot) $PS1"
>>> Regenerating /etc/ld.so.cache..
</pre>


=kernel=
=kernel=
<source lang="bash">
emerge --ask gentoo-sources:4.4.39
</source>
it's better to open another terminal(not the chroot one) and config the kernel in X mode.
*https://wiki.gentoo.org/wiki/NVidia/nvidia-drivers
*https://wiki.gentoo.org/wiki/Xorg/Guide
*https://wiki.gentoo.org/wiki/NVIDIA/Optimus
then make the kernel
<source lang="bash">
make && make modules_install
make install


<pre>
emerge --ask sys-kernel/genkernel
(chroot) livecd / # emerge --ask gentoo-sources:4.4.39
genkernel --install initramfs
cd /boot
mv initramfs-genkernel-x86_64-4.4.39-gentoo initramfs-4.4.39-gentoo
</source>
=tools=
edit host name and set clock to local, then change the root passwd:
<source lang="bash">
nano -w /etc/conf.d/hostname
nano -w /etc/conf.d/hwclock


* IMPORTANT: 12 news items need reading for repository 'gentoo'.
passwd
* Use eselect news read to view new items.


emerge --ask app-admin/sysklogd
rc-update add sysklogd default
emerge --ask net-misc/dhcpcd
</source>
=fstab=
=umount and reboot into new system=
<source lang="bash">
umount -l /mnt/gentoo/dev
umount /mnt/gentoo/boot 
umount /mnt/gentoo/proc
umount /mnt/gentoo/sys
umount /mnt/gentoo/home
umount /mnt/gentoo
</source>


These are the packages that would be merged, in order:
=tools=
<source lang="bash">
emerge --ask eix
emerge --ask gentoolkit
</source>
=xorg-server=
<source lang="bash">
emerge --ask x11-base/xorg-server
emerge --ask twm xterm xclock
env-update && source /etc/profile
emerge --ask kde-plasma/plasma-meta
emerge --ask x11-misc/sddm


Calculating dependencies... done!
useradd -m -G users,wheel,audio,video -s /bin/bash riguz
[ebuild  N    ] sys-devel/bc-1.06.95-r1  USE="readline -libedit -static"
passwd riguz
[ebuild  N    ] sys-kernel/gentoo-sources-4.4.39  USE="-build -experimental -symlink"


Would you like to merge these packages? [Yes/No]
sddm --example-config > /etc/sddm.conf
emerge --ask wqy-microhei
</source>


</pre>
*https://wiki.gentoo.org/wiki/Xorg/Guide
*https://wiki.gentoo.org/wiki/NVIDIA/Optimus
=tools=
<pre>
<pre>
(chroot) livecd boot # exit
/etc/conf.d/xdm
exit
DISPLAYMANAGER="sddm"
livecd gentoo # cd
livecd ~ # umount -l /mnt/gentoo/dev
livecd ~ # umount =l /mnt/gentoo/proc
umount: =l: mountpoint not found
livecd ~ # umount -l /mnt/gentoo/proc
umount: /mnt/gentoo/proc: not mounted
livecd ~ # umount -l /mnt/gentoo/sys 
livecd ~ # umount -l /mnt/gentoo/boot
livecd ~ # umount -l /mnt/gentoo/home
livecd ~ # umount -l /mnt/gentoo/
</pre>
</pre>
<source lang="bash">
/etc/init.d/xdm start
</source>
[[Category:Linux/Unix]]
[[Category:Linux/Unix]]

2017年1月1日 (日) 01:54的最新版本

Reinstall gentoo record:

prepare disk

Disk /dev/sdb: 223.6 GiB, 240057409536 bytes, 468862128 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: gpt
Disk identifier: 19FC4662-CDC6-44A2-A78B-717085B89743

Device         Start       End   Sectors  Size Type
/dev/sdb1       2048    616447    614400  300M Windows recovery environment
/dev/sdb2     616448    821247    204800  100M EFI System
/dev/sdb3     821248   1083391    262144  128M Microsoft reserved
/dev/sdb4    1083392 168855551 167772160   80G Microsoft basic data
/dev/sdb5  168855552 378570751 209715200  100G Microsoft basic data
/dev/sdb6  378570752 378775551    204800  100M Linux filesystem
/dev/sdb7  378775552 382969855   4194304    2G Linux swap
/dev/sdb8  382969856 403941375  20971520   10G Linux filesystem
/dev/sdb9  403941376 468862094  64920719   31G Linux filesystem

delete existing file system.

mount /dev/sdb9 /mnt/gentoo
rm -rf /mnt/gentoo/*
mkdir home boot
mount /dev/sdb6 /mnt/gentoo/boot
mount /dev/sdb8 /mnt/gentoo/home
rm -rf /mnt/gentoo/boot/*

Optional:format file systems(/boot and / partition, no necessary to format /home partition)

mkfs.ext2 /dev/sdb6
mkfs.ext4 /dev/sdb9

e2label /dev/sdb6 boot
e2label /dev/sdb9 gentoo
mount /dev/sdb9 /mnt/gentoo/
cd /mnt/gentoo/
mkdir boot home
mount /dev/sdb6 /mnt/gentoo/boot/
mount /dev/sdb8 /mnt/gentoo/home/

stage3

Gentoo:安装Stage3 the sohu mirror seems to be wrong.

cd /mnt/gentoo
wget http://mirrors.163.com/gentoo/releases/amd64/autobuilds/current-stage3-amd64/stage3-amd64-20161229.tar.bz2
sha512sum stage3-amd64-20161229.tar.bz2
cat stage3-amd64-20161229.tar.bz2.DIGESTS

tar xvjpf stage3-*.tar.bz2 --xattrs

then edit /etc/portage/make.conf

CFLAGS="-march=native -O2 -pipe"
MAKEOPTS="-j9"
...
USE="bindist X dbus -gtk -gnome -qt3support -ldap"
CPU_FLAGS_X86="aes avx avx2 fma3 mmx mmxext popcnt sse sse2 sse3 sse4_1 sse4_2 ssse3"
INPUT_DEVICES="evdev"
VIDEO_CARDS="intel nvidia"
...
GENTOO_MIRRORS="http://mirrors.163.com/gentoo/"

then mount system and chroot to new system:

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

chroot /mnt/gentoo /bin/bash
source /etc/profile
export PS1="(chroot) $PS1"

then update protage, and set a plamsa profile.

emerge-webrsync
eselect profile list
eselect profile set 8

edit /etc/locale.gen

en_US ISO-8859-1
en_US.UTF-8 UTF-8
zh_CN.UTF-8 UTF-8

and regenerate locale:

locale-gen
eselect locale list
eselect locale set 6
echo "Asia/Shanghai" > /etc/timezone
emerge --config sys-libs/timezone-data

env-update && source /etc/profile && export PS1="(chroot) $PS1"

kernel

emerge --ask gentoo-sources:4.4.39

it's better to open another terminal(not the chroot one) and config the kernel in X mode.

then make the kernel

make && make modules_install
make install

emerge --ask sys-kernel/genkernel
genkernel --install initramfs
cd /boot
mv initramfs-genkernel-x86_64-4.4.39-gentoo initramfs-4.4.39-gentoo

tools

edit host name and set clock to local, then change the root passwd:

nano -w /etc/conf.d/hostname
nano -w /etc/conf.d/hwclock

passwd

emerge --ask app-admin/sysklogd
rc-update add sysklogd default
emerge --ask net-misc/dhcpcd

fstab

umount and reboot into new system

umount -l /mnt/gentoo/dev
umount /mnt/gentoo/boot  
umount /mnt/gentoo/proc
umount /mnt/gentoo/sys
umount /mnt/gentoo/home 
umount /mnt/gentoo

tools

emerge --ask eix
emerge --ask gentoolkit

xorg-server

emerge --ask x11-base/xorg-server
emerge --ask twm xterm xclock
env-update && source /etc/profile
emerge --ask kde-plasma/plasma-meta
emerge --ask x11-misc/sddm

useradd -m -G users,wheel,audio,video -s /bin/bash riguz
passwd riguz

sddm --example-config > /etc/sddm.conf
emerge --ask wqy-microhei
/etc/conf.d/xdm
DISPLAYMANAGER="sddm"
/etc/init.d/xdm start