SpecialistOff.NET / Вопросы / Статьи / Фрагменты кода / Резюме / Метки / Помощь / Файлы
НазадМетки: [gentoo]; [/etc/portage/make.conf]; [/boot]; [sgdisk]; [mount]; [lvcreate];
--- install.sh --- two.sh
#!/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
two.sh
Скачать
#!/bin/bash set -e set -x env-update && source /etc/profile emerge --sync # eselect profile set 6 echo "Europe/Moscow" > /etc/timezone emerge --config sys-libs/timezone-data locale-gen # System emerge -v sys-kernel/gentoo-sources sys-kernel/genkernel emerge -v sys-fs/lvm2 sys-fs/mdadm sys-fs/cryptsetup python emerge -v sys-apps/busybox app-shells/bash app-shells/tcsh genkernel --dmraid --lvm --luks --splash=emergence all # Standart emerge -v udev syslog-ng emerge -v Locale-gettext emerge -v sys-boot/grub sys-boot/os-prober sys-boot/efibootmgr emerge -v dhcpcd pam vixie-cron emerge -v app-admin/pwgen emerge -v net-misc/wget net-misc/rsync emerge -v sys-apps/net-tools emerge -v app-editors/nano # Devel emerge -v dev-vcs/git systemd-machine-id-setup systemctl enable sshd ## # GRUB2 ## # LVM echo "GRUB_PRELOAD_MODULES=lvm" >> /etc/default/grub echo 'GRUB_CMDLINE_LINUX="dolvm"' >> /etc/default/grub # LUKS echo "GRUB_CRYPTODISK_ENABLE=y" >> /etc/default/grub # grub-mkconfig -o /boot/grub/grub.cfg grub-install --target=x86_64-efi --recheck --modules="configfile linux search_fs_uuid luks lvm ext2 part_gpt" --efi-directory /boot grub-mkconfig -o /boot/grub/grub.cfg # Root password echo "root:root" | chpasswd