В этой заметке я опишу свой первый опыт установки Gentoo. Раньше думал, что это сложно, на самом деле нет.
Я не буду подробно описывать каждый шаг, ведь это все написано в Gentoo Handbook на русском. Скажу сразу, у кого был опыт установки Arch Linux, сборка Gentoo покажется не сложной.
Все параметры установки и ядра, наверняка подойдут и вам, но на всякий случай напишу конфигурацию своего ноута:
AMD Athlon(tm) II Dual-core M340;
RAM 2G;
AMD Radeon 5145;
HDD 320G.
Ясное дело, что все это дело я делал в виртуалке. Использовал Virtualbox.
Две сетевухи: NAT (для инета), сетевой мост (для подключения ssh).
RAM 256M;
HDD 10G.
Так как у меня 32-х разрядная система, то образ я качал отсюда:
http://distfiles.gentoo.org/releases/x86/autobuilds/current-stage3/install-x86-minimal-20130528.iso
Загрузился с образа.
Все действия производятся от рута, поэтому решетку (#) писать не буду.
Мне в виртуалке работать неудобно, поэтому я использую для этого ssh.
Включаем демон и подключаемся с хоста, ip-адрес gentoo, в моем случае 192.168.0.41:
/etc/init.d/sshd start
ssh [email protected]
Разметка диска, я использовал fdisk, можно использовать parted:
/dev/sda1 ext2 32M /boot
/dev/sda2 swap 512M swap
/dev/sda3 ext4 (оставшееся место) /
Создаем файловые системы на разделах и включаем сразу swap:
mkfs -t ext2 /dev/sda1
mkswap /dev/sda2
mkfs -t ext4 /dev/sda3
swapon /dev/sda2
Монтируем файловые системы:
mount /dev/sda3 /mnt/gentoo
mkdir /mnt/gentoo/boot
mount /dev/sda1 /mnt/gentoo/boot
Выставляем дату (4 июля, 15 часов 19 минут 2013 года) :
date 070415192013
Переходим в корень новой файловой системы и скачиваем stage3:
cd /mnt/gentoo
links http://gentoo.kiev.ua/ftp/releases/x86/autobuilds/current-stage3-i686/stage3-i686-20130528.tar.bz2
Для загрузки нажать кнопку d.
Распакуем архив:
tar xvjpf stage3-i686-20130528.tar.bz2
Укажем уровень компиляции (количество ядер + 1):
vi /mnt/gentoo/etc/portage/make.conf
MAKEOPTS="-j3"
Выбор зеркала и rsync:
mirrorselect -i -o >> /mnt/gentoo/etc/portage/make.conf
mirrorselect -i -r -o >> /mnt/gentoo/etc/portage/make.conf
Копируем файл resolv.conf:
cp -L /etc/resolv.conf /mnt/gentoo/etc/
Монтируем важные файловые системы:
mount -t proc none /mnt/gentoo/proc
mount --rbind /sys /mnt/gentoo/sys
mount --rbind /dev /mnt/gentoo/dev
Чрутнемся в систему:
chroot /mnt/gentoo /bin/bash
source /etc/profile
export PS1="(chroot) $PS1"
Делаем снимок дерева portage и читаем новости:
mkdir /usr/portage
emerge-webrsync
eselect news list
eselect news read
Установим профиль desktop'ной станции:
eselect profile list
eselect profile set 3
nano /etc/portage/make.conf
USE="-gtk -gnome alsa"
Настройка часового пояса:
cp /usr/share/zoneinfo/Europe/Kiev /etc/localtime
echo "Europe/Kiev" > /etc/timezone
Скачиваем и настраиваем ядро:
emerge gentoo-sources
cd /usr/src/linux
make menuconfig
Настраиваете ядро по вашему усмотрению, я делал так:
Processor type and features --->
(i686) Processor family
Device Drivers --->
Generic Driver Options --->
[*] Maintain a devtmpfs filesystem to mount at /dev
[ ] Automount devtmpfs at /dev, after the kernel mounted the rootfs
File systems --->
<*> Second extended fs support
<*> The Extended 4 (ext4) filesystem
Pseudo Filesystems --->
[*] /proc file system support
[*] Virtual memory file system support (former shm fs)
-*- Enable the block layer --->
...
Partition Types --->
[*] Advanced partition selection
Device Drivers --->
[*] HID Devices ---><*>
Bus options (PCI etc.) --->
PCCARD (PCMCIA/CardBus) support --->
<*> PCCard (PCMCIA/CardBus) support
<*> 16-bit PCMCIA support
[*] 32-bit CardBus support
<*> CardBus yenta-compatible bridge support (NEW)
Ядро версии 3.8.13.
Компилируем и собираем ядро (идем питькофе чай):
make && make modules_install
Копируем свежее ядро куда надо и устанавливаем initramfs:
cp arch/x86/boot/bzImage /boot/kernel-3.8.13-gentoo
emerge genkernel
genkernel --install initramfs
Заполняем файл fstab:
nano /etc/fstab
/dev/sda1 /boot ext2 defaults,noatime 0 2
/dev/sda2 none swap swap sw 0 0
/dev/sda3 / ext4 noatime 0 1
Настройка инета (да, опять):
nano /etc/conf.d/net
config_enp0s3="dhcp"
config_enp0s8="dhcp"
cd /etc/init.d
ln -s net.lo net.enp0s3
rc-update add net.enp0s3 default
Пароль root'а:
passwd
Настройка времени и локалей:
nano /etc/conf.d/hwclock
clock="local"
nano /etc/locale.gen
en_US.UTF-8 UTF-8
ru_RU.UTF-8 UTF-8
locale-gen
nano /etc/env.d/02locale
LANG="en_US.UTF-8"
LC_COLLATE="C"
env-update && source /etc/profile
Устанавливаем syslog, cron, locate, добавляем в автозагрузку и sshd:
emerge syslog-ng
rc-update add syslog-ng default
emerge vixie-cron
rc-update add vixie-cron default
emerge mlocate
rc-update add sshd default
Устанавливаем vim, dhcpcd:
emerge dhcpcd
emerge vim
Устанавливаем и настраиваем grub:
emerge grub
nano /boot/grub/grub.conf
default 0
timeout 30
splashimage=(hd0,0)/boot/grub/splash.xpm.gz
title Gentoo Linux 3.8.13
root (hd0,0)
Я не буду подробно описывать каждый шаг, ведь это все написано в Gentoo Handbook на русском. Скажу сразу, у кого был опыт установки Arch Linux, сборка Gentoo покажется не сложной.
Все параметры установки и ядра, наверняка подойдут и вам, но на всякий случай напишу конфигурацию своего ноута:
AMD Athlon(tm) II Dual-core M340;
RAM 2G;
AMD Radeon 5145;
HDD 320G.
Ясное дело, что все это дело я делал в виртуалке. Использовал Virtualbox.
Две сетевухи: NAT (для инета), сетевой мост (для подключения ssh).
RAM 256M;
HDD 10G.
Так как у меня 32-х разрядная система, то образ я качал отсюда:
http://distfiles.gentoo.org/releases/x86/autobuilds/current-stage3/install-x86-minimal-20130528.iso
Загрузился с образа.
Все действия производятся от рута, поэтому решетку (#) писать не буду.
Мне в виртуалке работать неудобно, поэтому я использую для этого ssh.
Включаем демон и подключаемся с хоста, ip-адрес gentoo, в моем случае 192.168.0.41:
/etc/init.d/sshd start
ssh [email protected]
Разметка диска, я использовал fdisk, можно использовать parted:
/dev/sda1 ext2 32M /boot
/dev/sda2 swap 512M swap
/dev/sda3 ext4 (оставшееся место) /
Создаем файловые системы на разделах и включаем сразу swap:
mkfs -t ext2 /dev/sda1
mkswap /dev/sda2
mkfs -t ext4 /dev/sda3
swapon /dev/sda2
Монтируем файловые системы:
mount /dev/sda3 /mnt/gentoo
mkdir /mnt/gentoo/boot
mount /dev/sda1 /mnt/gentoo/boot
Выставляем дату (4 июля, 15 часов 19 минут 2013 года) :
date 070415192013
Переходим в корень новой файловой системы и скачиваем stage3:
cd /mnt/gentoo
links http://gentoo.kiev.ua/ftp/releases/x86/autobuilds/current-stage3-i686/stage3-i686-20130528.tar.bz2
Для загрузки нажать кнопку d.
Распакуем архив:
tar xvjpf stage3-i686-20130528.tar.bz2
Укажем уровень компиляции (количество ядер + 1):
vi /mnt/gentoo/etc/portage/make.conf
MAKEOPTS="-j3"
Выбор зеркала и rsync:
mirrorselect -i -o >> /mnt/gentoo/etc/portage/make.conf
mirrorselect -i -r -o >> /mnt/gentoo/etc/portage/make.conf
Копируем файл resolv.conf:
cp -L /etc/resolv.conf /mnt/gentoo/etc/
Монтируем важные файловые системы:
mount -t proc none /mnt/gentoo/proc
mount --rbind /sys /mnt/gentoo/sys
mount --rbind /dev /mnt/gentoo/dev
Чрутнемся в систему:
chroot /mnt/gentoo /bin/bash
source /etc/profile
export PS1="(chroot) $PS1"
Делаем снимок дерева portage и читаем новости:
mkdir /usr/portage
emerge-webrsync
eselect news list
eselect news read
Установим профиль desktop'ной станции:
eselect profile list
eselect profile set 3
nano /etc/portage/make.conf
USE="-gtk -gnome alsa"
Настройка часового пояса:
cp /usr/share/zoneinfo/Europe/Kiev /etc/localtime
echo "Europe/Kiev" > /etc/timezone
Скачиваем и настраиваем ядро:
emerge gentoo-sources
cd /usr/src/linux
make menuconfig
Настраиваете ядро по вашему усмотрению, я делал так:
Processor type and features --->
(i686) Processor family
Device Drivers --->
Generic Driver Options --->
[*] Maintain a devtmpfs filesystem to mount at /dev
[ ] Automount devtmpfs at /dev, after the kernel mounted the rootfs
File systems --->
<*> Second extended fs support
<*> The Extended 4 (ext4) filesystem
Pseudo Filesystems --->
[*] /proc file system support
[*] Virtual memory file system support (former shm fs)
-*- Enable the block layer --->
...
Partition Types --->
[*] Advanced partition selection
Device Drivers --->
[*] HID Devices ---><*>
Bus options (PCI etc.) --->
PCCARD (PCMCIA/CardBus) support --->
<*> PCCard (PCMCIA/CardBus) support
<*> 16-bit PCMCIA support
[*] 32-bit CardBus support
<*> CardBus yenta-compatible bridge support (NEW)
Ядро версии 3.8.13.
Компилируем и собираем ядро (идем пить
make && make modules_install
Копируем свежее ядро куда надо и устанавливаем initramfs:
cp arch/x86/boot/bzImage /boot/kernel-3.8.13-gentoo
emerge genkernel
genkernel --install initramfs
Заполняем файл fstab:
nano /etc/fstab
/dev/sda1 /boot ext2 defaults,noatime 0 2
/dev/sda2 none swap swap sw 0 0
/dev/sda3 / ext4 noatime 0 1
Настройка инета (да, опять):
nano /etc/conf.d/net
config_enp0s3="dhcp"
config_enp0s8="dhcp"
cd /etc/init.d
ln -s net.lo net.enp0s3
rc-update add net.enp0s3 default
Пароль root'а:
passwd
Настройка времени и локалей:
nano /etc/conf.d/hwclock
clock="local"
nano /etc/locale.gen
en_US.UTF-8 UTF-8
ru_RU.UTF-8 UTF-8
locale-gen
nano /etc/env.d/02locale
LANG="en_US.UTF-8"
LC_COLLATE="C"
env-update && source /etc/profile
Устанавливаем syslog, cron, locate, добавляем в автозагрузку и sshd:
emerge syslog-ng
rc-update add syslog-ng default
emerge vixie-cron
rc-update add vixie-cron default
emerge mlocate
rc-update add sshd default
Устанавливаем vim, dhcpcd:
emerge dhcpcd
emerge vim
Устанавливаем и настраиваем grub:
emerge grub
nano /boot/grub/grub.conf
default 0
timeout 30
splashimage=(hd0,0)/boot/grub/splash.xpm.gz
title Gentoo Linux 3.8.13
root (hd0,0)
kernel /boot/kernel-3.8.13-gentoo root=/dev/sda3
initrd /boot/initramfs-genkernel-x86-3.8.13-gentoo
initrd /boot/initramfs-genkernel-x86-3.8.13-gentoo
grep -v rootfs /proc/mounts > /etc/mtab
grub-install --no-floppy /dev/sda
Перезагружаемся:
exit
cd
umount -l /mnt/gentoo/dev{/shm,/pts,}
umount -l /mnt/gentoo{/boot,/proc,}
reboot
Если grub все загрузил нормально, то могу вас поздравить.
Создадим локального юзера и его пароль:
useradd -m -G users,wheel,audio -s /bin/bash amet13
passwd amet13
Удалим, то что мы поскачивали:
rm /stage3-*tar.bz2*
rm -rf /usr/src/linux
Синхронизируем дерево portage и установим ntp:
emerge --sync
emerge --oneshot portage
emerge ntp
rc-update add ntp-client default
Оочень долго компилировалось ядро и обновлялось дерево portage. Представляю, как я буду компилить LibreOffice...
Все, дальше буду накатывать ГУЙ и приложения, но это уже другая история...
UPD: 06.07.2013. Вторая часть.
UPD: 06.07.2013. Вторая часть.
localhost ~ # uname -a
Linux localhost 3.8.13-gentoo #1 SMP Thu Jul 4 20:53:30 EEST 2013 i686 AMD Athlon(tm) II Dual-Core M340 AuthenticAMD GNU/Linux
localhost ~ # df -h
Filesystem Size Used Avail Use% Mounted on
rootfs 9.2G 2.4G 6.4G 28% /
udev 10M 4.0K 10M 1% /dev
/dev/sda3 9.2G 2.4G 6.4G 28% /
tmpfs 248M 212K 248M 1% /run
shm 248M 0 248M 0% /dev/shm
cgroup_root 10M 0 10M 0% /sys/fs/cgroup
/dev/sda1 31M 7.7M 22M 27% /boot
гуд
ОтветитьУдалитьтолковая статья,реально помогло
пасибо
Это скорее заметка для тех кто уже хоть раз собирал gentoo, чтобы не забыть. А вообще рекомендую засесть с handbook и многое отложится в голове.
УдалитьОгромное спасибо!..
ОтветитьУдалитьв рунете в близком поиске пока еще нет ничего подобного......в свете: "Gentoo переходит на systemd. Официально."
Возможна правка для пущщей универсализации-
убрать еще KDE и Х - и на первую строчку GOOGLE)))
export PS1="(chroot)" $PS1" ошибка
ОтветитьУдалитьправильно так export PS1="(chroot) $PS1"
Спасибо, опечатка. Исправил.
ОтветитьУдалитьgrub-install --no-floppy /dev/sda, надо что бы grub2-install --no-floppy /dev/sda
ОтветитьУдалитьа где grub-mkconfig -o /boot/grub/grub.cfg после grub-install /dev/sda
ОтветитьУдалитьЗдравствуйте. Подскажите пожалуйста, по какой ссылке сейчас качать дистрибутив для 32 битной операционной системы?
ОтветитьУдалитьДумаю эта: https://gentoo.osuosl.org/releases/x86/autobuilds/current-install-x86-minimal/install-x86-minimal-20200211T214502Z.iso
ОтветитьУдалить