SpecialistOff.NET / Вопросы / Статьи / Фрагменты кода / Резюме / Метки / Помощь / Файлы
Назад
#!/bin/bash
drive="/dev/sda"
# Destroy all data
sgdisk --zap-all ${drive}
dd if=/dev/zero of=${drive} bs=256k
vgname="server_vg"
# GPT
sgdisk --clear ${drive}
sgdisk -a 4096 -n 1:0:+512M --typecode=1:ef00 ${drive}
sgdisk -a 4096 --largest-new=2 --typecode=2:8e00 ${drive}
pvcreate ${drive}2
vgcreate ${vgname} ${drive}2
lvcreate -C y -L 4G ${vgname} -n swap0
lvcreate -l +100%FREE ${vgname} -n root0
mkfs.vfat ${drive}1
mkfs.xfs -f /dev/${vgname}/root0
mount /dev/${vgname}/root0 /mnt/gentoo
mkdir /mnt/gentoo/boot
mount ${drive}1 /mnt/gentoo/boot
cd /mnt/gentoo
stagefile=`curl https://mirror.yandex.ru/gentoo-distfiles/releases/amd64/autobuilds/latest-stage3-amd64.txt | grep stage3 | awk '{print $1}'`
wget http://mirror.yandex.ru/gentoo-distfiles/releases/amd64/autobuilds/${stagefile}
tar xpvf data/stage3-*.tar.xz --xattrs-include='*.*' --numeric-owner
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
BOOTUUID=`blkid -s UUID -o value ${drive}1`
cat << EOF > etc/fstab
UUID=$BOOTUUID /boot vfat noauto,noatime 0 2
/dev/mapper/"${vgname}"-root0 / xfs defaults 0 1
/dev/mapper/"${vgname}"-swap0 none swap sw 0 0
EOF
cat << EOF >> etc/portage/make.conf
LINGUAS="ru"
# GRUB
GRUB_PLATFORMS="efi-64"
EOF
cat >> etc/locale.gen << EOF
ru_RU.UTF-8 UTF-8
en_US.UTF-8 UTF-8
EOF
cp /etc/resolv.conf etc
wget https://specialistoff.net/snippet/30/inode/40/raw -O /two.sh
chmod +x /two.sh
chroot /mnt/gentoo /two.sh