Установка Gentoo с Gnome с нуля. Несколько советов

Операционки на базе Unix
Аватара пользователя
Gen1us2k
Модератор
Модератор
Сообщения: 771
Зарегистрирован: 02 мар 2010, 16:13

Установка Gentoo с Gnome с нуля. Несколько советов

Сообщение Gen1us2k » 16 фев 2011, 15:04

Gentoo
Gentoo: дистрибутив-ракетомобиль, дистрибутив-настраиваемость, дистрибутив-выбор.

Многие пришли в мир Linux, живут там, используют OpenSource, но не знают и малой толики того, что дает открытый исходный код. Это-то и показывает gentoo: хочешь - построй себе плот, хочешь - построй крейсер, а хочешь - плавай сам. И все - без особых трудностей ;)
Почему именно Gentoo?
В мире Linux преобладают бинарные дистрибутивы: хорошие и не очень. Кому-то нравится Fedora, кому-то - Ubuntu, а кому-то - Slackware. Мне же нравятся source-based дистрибутивы.
Arch Linux я никогда не использовал, но по отзывам от Gentoo он отличается лишь наличием прекомпилированных пакетов в официальном репозитарии, LFS же уж слишком хардкорен - я не готов потратить уйму времени на сборку системы с нуля. :)

Gentoo же подошел мне идеально:

  • Во-первых, он дает выбор: начиная от выбора загрузчика, заканчивая заточкой под gnome/kde, либо же под оба сразу.
  • Во-вторых, он дает возможность переделки системы с hardened в desktop и обратно
  • В-третьих, легко интегрировать пакет в систему посредством написания собственного ebuild'a и добавления в локальный оверлей.

Безусловно, минусов у него достаточно:

  • Долгое время установки/обновления ввиду компиляции всего и вся, поэтому не рекомендуется ставить Gentoo на слабые машины (ну, кроме случаев, когда у вас есть возможность оставить машину работать эдак на недельку :) ).
  • Отсутствие графических средств настройки, все настройки производятся через редактирование конфигурационных файлов, правда все это хорошо описано во всяких руководствах.
Что надо для начала?
сливаем образ
http://gentoo.mega.kg/gentoo/releases/$ ... 110215.iso
Нарезаем на болванку, загружаемся с диска.
Все я делал на нотнике Acer TravelMate 2420. Celeron 1.6 768 RAM.

Размечаем хард либо fdisk, либо cfdisk
у меня получилось

Код: Выделить всё

Устр-во Загр     Начало       Конец       Блоки   Id  Система
/dev/hda1   *           1          15      120456   83  Linux
/dev/hda2              16         264     2000092+  82  Linux своп / Solaris
/dev/hda3             265        2209    15623212+  83  Linux
/dev/hda4            2210        4864    21326287+  83  Linux
форматируем разделы в нужных файловых системах.
у меня было
# mkfs.ext2 /dev/hda1 && mkswap /dev/hda2 && swapon /dev/hda2 && mkfs.reiserfs /dev/hda3 && mkfs.ext4 /dev/hda4

Монтирование разделов.
Теперь, когда разделы созданы, а файловые системы размещены, настало время смонтировать (подключить к системе) эти разделы. Смонтируем корневой, загрузочный и home разделы:

# mount /dev/hda3 /mnt/gentoo
# mkdir /mnt/gentoo/boot
# mount /dev/hda1 /mnt/gentoo/boot
# mkdir /mnt/gentoo/home
# mount /dev/hda4 /mnt/gentoo/home
Распаковка установочных файлов Gentoo.

Проверяем дату/время: # date
Необходимо выставить время по UTC.
Корректируем: # date MMDDhhmmYYYY

Распаковываем тарбол со stage3:
# cd /mnt/gentoo
# tar -xvjpf /mnt/cdrom/stages/stage3-i686-2007.0.tar.bz2

Распаковываем дерево портеджей:
# tar -xvjf /mnt/cdrom/snapshots/portage-latest.tar.bz2 -C /mnt/gentoo/usr

Мой /etc/make.conf

Код: Выделить всё

CFLAGS="-O2 -march=pentium3 -msse2 -fomit-frame-pointer -pipe"
CXXFLAGS="${CFLAGS}"
CHOST="i686-pc-linux-gnu"

MAKEOPTS="-j2"

GENTOO_MIRRORS="http://gentoo.mega.kg/gentoo"
SYNC="rsync://gentoo.mega.kg/gentoo-portage"


LINGUAS="ru"

USE="X alsa apache2 cairo cdda dbus device-mapper djvu dvd emerald extras
     fbcon fbcondecor ffmpeg flac gdu gnome gtk hal jpeg lame libnotify
     matroska mp3 mpeg ogg png policykit sqlite sse sse2 static-libs svg svga
     truetype win32codecs x11 x264 xvid -gnomecards -kde -kdecards -kdeconfig
     -kdm -qt qt4 type1 subversion git mercurial opengl"

ALSA_CARDS="hda-intel"
INPUT_DEVICES="evdev keyboard mouse synaptics"
VIDEO_CARDS="intel"
source /var/lib/layman/make.conf

Монтирование /proc и /dev:
# mount -t proc none /mnt/gentoo/proc
# mount -o bind /dev /mnt/gentoo/dev

Переход в новую среду:
# chroot /mnt/gentoo /bin/bash
# env-update && source /etc/profile

Обновление портов
# emerge --sync && emerge --metadata

Установка нужных тулз.
# emerge -av ufed pciutils usbutils eix screen

Региональные параметры GLIBC

Скорее всего, вы будете использовать в системе один-два набора региональных параметров. Нужные регионы можно указать в /etc/locale.gen:
# nano /etc/locale.gen
ru_RU.UTF-8 UTF-8
# Если есть желание, можно добавить и другие локали:
#en_US ISO-8859-1
#en_US.UTF-8 UTF-8
#ru_RU.KOI8-R KOI8-R

Следующий шаг — запустить locale-gen. Это сгенерирует настройки для всех регионов, указанных в файле /etc/locale.gen:
# locale-gen

Установка временной зоны.

Устанавливаем свой часовой пояс:

Устанавливаем: # cp /usr/share/zoneinfo/Asia/Bishkek /etc/localtime

Проверьте дату/время: # date

Установка исходных кодов ядра: # emerge gentoo-sources
Должен поставиться один пакет - gentoo-sources, если это не так, читаем handbook.

Далее будем настраивать ядро, а для этого желательно знать какое железо стоит на машине. Смотрим во второй консоли (Alt+F2):
# lspci (входит в состав пакета pciutils)
# lsmod (отображает список модулей, которые загрузил LiveCD)
А в первой переходим к конфигу ядра:
# cd /usr/src/linux
# make menuconfig
Настройка ведра - другая тема.
# make && && make modules && make modules_install

Описываем свойства своей файловой системы в /etc/fstab:

У меня получилось:

Код: Выделить всё

/dev/hda1		/boot		ext2		noauto,noatime	1 2
/dev/hda3		/		reiserfs	noatime		0 1
/dev/hda2		none		swap		sw		0 0
/dev/hda4		/home		ext4		defaults	0 1
# nano /etc/conf.d/hostname
HOSTNAME="gentoo"

Пример настройки сетевой: # nano /etc/conf.d/net
config_eth0=( "192.168.1.2 netmask 255.255.255.0 broadcast 192.168.1.255" )
routes_eth0=( "default via 192.168.1.1" )
dns_servers_eth0="192.168.1.1"
dns_domain_lo="WORKGROUP" # рабочая группа?

Добавление net.eth0 в уровень запуска default (автозагрузка):
# rc-update add net.eth0 default

Указание сведений об узлах сети: # nano /etc/hosts
127.0.0.1 gentoo.WORKGROUP gentoo localhost

Параметры системы.

Задаем пароль администратора: # passwd

Устанавливаем более приятный шрифт для консоли:
# emerge terminus-font

# nano /etc/conf.d/clock
CLOCK="local" (вместо UTC)
TIMEZONE="Asia/Krasnoyarsk" (измените на свою)
CLOCK_OPTS="--directisa" (только для ноутбуков)

Локализация: # nano /etc/env.d/02locale
LC_ALL=""
LANG="ru_RU.UTF-8"
LC_NUMERIC="POSIX"

# nano /etc/rc.conf
UNICODE="yes"

# nano /etc/conf.d/consolefont
CONSOLEFONT="ter-k14n"

# nano /etc/conf.d/keymaps
KEYMAP="ru-ms" # можно попробовать "-u ru4"
SET_WINDOWKEYS="yes" # Опционально
DUMPKEYS_CHARSET="koi8-r"

9. Установка нужных системных средств.

Установка системной службы журналирования:
# emerge syslog-ng
# rc-update add syslog-ng default

Утилиты для обслуживания файловых систем:
# emerge reiserfsprogs

10. Настройка начального загрузчика.

Установка GRUB: # emerge grub

Создание grub.conf: # nano /boot/grub/grub.conf
default 0
timeout 10
splashimage=(hd0,0)/boot/grub/splash.xpm.gz

title=Gentoo
root (hd0,0)
kernel /boot/bzImage root=/dev/hda3

Запускаем grub: # grub
grub> root (hd0,0) //раздел с /boot
grub> setup (hd0)
grub> quit

Где: hd0,0 - раздел /boot (/dev/hda1), первый 0 - номер винта (hda=0, hdb=1 и т.д.), второй 0 - номер раздела (hda1 = 0, hda2 = 1 и т.д.
setup hd0 - установка в MBR первого винта в системе.

Размонтирование всех разделов и перезагрузка.

# exit
cdimage # cd
cdimage ~# umount /mnt/gentoo/boot /mnt/gentoo/home
cdimage ~# umount /mnt/gentoo/dev /mnt/gentoo/proc
cdimage ~# umount /mnt/gentoo
cdimage ~# reboot

Иксы и Гном
X:
emerge -av xorg-x11
Xorg -config
cp xorg.conf.new /etc/X11/xorg.conf

Gnome:
Собираем:
USE="-qt4 -kde X dbus gtk gnome hal -kde -kdecards -kdeconfig -kdm -qt4 gtk -qt sqlite gdu" emerge -av gnome

# /etc/init.d/hald start
# rc-update add hald default

# /etc/init.d/dbus start
# rc-update add dbus default

$ echo "exec gnome-session" > ~/.xinitrc

# rc-update add xdm default

DISPLAYMANAGER="gdm"

оно украшать надо %)
Изображение
дефолтный с дефольной обоиной.

Надо прикрутить compiz && emerald

USE="emerald" emerge -av compiz-fusion

После прикрутки Compiz && Emerald

Изображение

трансформация генты в макось %)

Изображение

https://addons.mozilla.org/en-US/firefo ... eme-12782/
https://addons.mozilla.org/en-US/firefo ... ox3_basic/

для браузера были поставлены аддончик с темкой
Изображение
Home: Windows Heaven
Home: Debian 6
For Servers: Debian || RHEL Based || Gentoo || FreeBSD
Аватара пользователя
Gen1us2k
Модератор
Модератор
Сообщения: 771
Зарегистрирован: 02 мар 2010, 16:13

Re: [WIP] Gnome in Gentoo с нуля и до конца %)

Сообщение Gen1us2k » 17 фев 2011, 14:17

вкомпиляйем звух на intel карточку
cd /usr/src/linux
make menuconfig

Код: Выделить всё

Device Drivers ---> 
  Sound --->
  <M>Sound card support

Код: Выделить всё

 Advanced Linux Sound Architecture ---> 
  <M> Advanced Linux Sound Architecture
  <M> Sequencer support
  <M> OSS Mixer API 
  <M> OSS PCM (digital audio) API
  Generic devices --->
   ISA devices --->
   PCI devices --->
    <M>   Intel/SiS/nVidia/AMD/ALi AC97 Controller

была проблема с временем, которое не сохранялось при перезагрузке
ntpdate ntp.elcat.kg
/etc/init.d/clock save
rm -f /etc/adjtime
/etc/init.d/clock save
Изображение
Home: Windows Heaven
Home: Debian 6
For Servers: Debian || RHEL Based || Gentoo || FreeBSD
Аватара пользователя
Gen1us2k
Модератор
Модератор
Сообщения: 771
Зарегистрирован: 02 мар 2010, 16:13

Re: [WIP] Gnome in Gentoo с нуля и до конца %)

Сообщение Gen1us2k » 17 фев 2011, 14:24

шрифты
USE="truetype type1"
emerge -n terminus-font intlfonts freefonts cronyx-fonts corefonts artwiz-latin1 kbd ttf-bitstream-vera unifont dejavu
Изображение
Home: Windows Heaven
Home: Debian 6
For Servers: Debian || RHEL Based || Gentoo || FreeBSD
Аватара пользователя
Gen1us2k
Модератор
Модератор
Сообщения: 771
Зарегистрирован: 02 мар 2010, 16:13

Re: [WIP] Gnome in Gentoo с нуля и до конца %)

Сообщение Gen1us2k » 17 фев 2011, 14:37

А теперь настроем наши шрифты. За это отвечает файл /etc/fonts/local.conf:

Код: Выделить всё

< ?xml version="1.0"? >
< !DOCTYPE fontconfig SYSTEM "fonts.dtd" >
< !-- /etc/fonts/local.conf это файл конфигурирующий системные шрифты -- >
< fontconfig >

< !-- Использовать Autohinter -- >
    < match target="font" >
        < edit name="autohint" mode="assign" >< bool >true< /bool >< /edit >
    < /match >

< !-- Выключить Autohinting для полужирных шрифтов -- >
    < match target="font" >
           < test name="weight" compare="more" >< const >medium< /const >< /test >
           < edit name="autohint" mode="assign" >< bool >false< /bool >< /edit >
    < /match >

< !-- Включить суб-пиксельный рендеринг -- >
< !-- Раскоментируйте текст ниже, если у вас LCD экран
        < match target="font" >
                < test qual="all" name="rgba" >< const >unknown< /const >< /test >
                < edit name="rgba" mode="assign" >< const >rgb< /const >< /edit >
        < /match >
-- >
 
< !-- Исключить/Включить диапозон увелечения шрифтов для Анти Алязинга -- >
< !--
    < match target="font" >
        < test qual="any" name="size" compare="more" >< double >9< /double >< /test >
        < test qual="any" name="size" compare="less" >< double >14< /double >< /test >
        < edit name="antialias" mode="assign" >< bool >true< /bool >< /edit >
    < /match >
-- >

< !-- И/Или запретить Анти Алязинг для диапозона шрифтов пиксел-основанного размера.
     Заблокирование этих обоих хреней исправляет некоторые проблемы в Firefox. -- >
< !--
    < match target="font" >
        < test compare="less" name="pixelsize" qual="any" >< double >20< /double >< /test >
        < edit mode="assign" name="antialias" >< bool >false< /bool >< /edit >
    < /match >
-- >

< !-- За другими вариантами конфигурирования этого файла в Gentoo Wiki, так как они требуют более подробных пояснений. -- >
    < match target="font" >
        < edit name="hinting" mode="assign" >< bool >true< /bool >< /edit >
        < edit name="hintstyle" mode="assign" >< const >hintmedium< /const >< /edit >
    < /match >

< /fontconfig >
xorg.conf

FontPath "/usr/share/fonts/misc:unscaled"
FontPath "/usr/share/fonts/Type1"
FontPath "/usr/share/fonts/TTF"
FontPath "/usr/share/fonts/corefonts"
FontPath "/usr/share/fonts/freefonts"
FontPath "/usr/share/fonts/sharefonts"
FontPath "/usr/share/fonts/terminus"
FontPath "/usr/share/fonts/ttf-bitstream-vera"
FontPath "/usr/share/fonts/unifont"
FontPath "/usr/share/fonts/75dpi:unscaled"
FontPath "/usr/share/fonts/100dpi:unscaled"
FontPath "/usr/share/fonts/artwiz

И кстати не забудьте в xorg.conf раскоментировать строчку

Load "freetype"
Изображение
Home: Windows Heaven
Home: Debian 6
For Servers: Debian || RHEL Based || Gentoo || FreeBSD
Аватара пользователя
Gen1us2k
Модератор
Модератор
Сообщения: 771
Зарегистрирован: 02 мар 2010, 16:13

Re: [WIP] Gnome in Gentoo с нуля и до конца %)

Сообщение Gen1us2k » 17 фев 2011, 15:43

BaHbKa
ага ага.. я тут понимайещь ли делаю гнум таким же няшным как и на слаке а ты %)

ЗЫ я понял, что нужна хрень, которая называется notify-osd для уведомлений как в убунте %)
сделаем ее, фигли

wget http://launchpad.net/notify-osd/0.9/0.9 ... .12.tar.gz
tar xvf notify-osd-0.9.12.tar.gz
mv notify-osd-0.9.12/ notify-osd/
chown -R ${USER}:${USER} notify-osd/
cd notify-osd/
./configure
make

как собралось делаем
killall notification-daemon
/opt/notify-osd/src/notify-osd

пробуем notify-send ololo
Изображение
вот такой нящный гнум :)

херачим его в автозагрузку.
создаем скриптец и делаем выполняемым.
/opt/notify-osd/autostart.sh
chmod +x /opt/notify-osd/autostart.sh

содержимое скрипта
#!/bin/bash
killall notification-daemon
sleep 1
/opt/notify-osd/src/notify-osd

редактируем
~/.config/autostart/notify-osd.desktop

Код: Выделить всё

[Desktop Entry]
Type=Application
Name=notify-osd
Exec=/opt/notify-osd/startup.sh
Icon=system-run
Comment=
X-GNOME-Autostart-enabled=true
Изображение
Home: Windows Heaven
Home: Debian 6
For Servers: Debian || RHEL Based || Gentoo || FreeBSD
Аватара пользователя
Gen1us2k
Модератор
Модератор
Сообщения: 771
Зарегистрирован: 02 мар 2010, 16:13

Re: [WIP] Gnome in Gentoo с нуля и до конца %)

Сообщение Gen1us2k » 17 фев 2011, 20:46

Gnome везде одинаков? %)
Изображение
Изображение
Home: Windows Heaven
Home: Debian 6
For Servers: Debian || RHEL Based || Gentoo || FreeBSD
Аватара пользователя
Raven
Бородатый сис
Бородатый сис
Сообщения: 2800
Зарегистрирован: 03 мар 2010, 15:12
ОС: RHEL 8
Откуда: Из серверной

Re: [WIP] Gnome in Gentoo с нуля и до конца %)

Сообщение Raven » 18 фев 2011, 09:19

Gen1us2k
*THUMBS UP*
Я не злопамятный, я просто часто ковыряю логи
wass
Красноглазик
Красноглазик
Сообщения: 633
Зарегистрирован: 26 мар 2010, 11:43
ОС: MSDOS
Контактная информация:

Re: [WIP] Gnome in Gentoo с нуля и до конца %)

Сообщение wass » 20 фев 2011, 21:19

Gen1us2k
Неплохо, неплохо
OS: Gentoo Linux 3.6.6, KDE 4.9.3/Fluxbox
fedor-deb
Юзер
Юзер
Сообщения: 2
Зарегистрирован: 06 июл 2013, 22:40
ОС: Gentoo

Re: Установка Gentoo с Gnome с нуля. Несколько советов

Сообщение fedor-deb » 06 июл 2013, 22:52

Дико извиняюсь, но...
Монтирование разделов.
не совсем согласен, забыли /sys

Код: Выделить всё

mount -t proc none /mnt/gentoo/proc
mount --rbind /sys /mnt/gentoo/sys
mount --rbind /dev /mnt/gentoo/dev
Устанавливаем свой часовой пояс:
Устанавливаем: # cp /usr/share/zoneinfo/Asia/Bishkek /etc/localtime
что?

Код: Выделить всё

cp /usr/share/zoneinfo/Europe/Kiev /etc/localtime
Чтобы установить часовой пояс:
echo "Europe/Kiev" > /etc/timezone
Добавление net.eth0 в уровень запуска default (автозагрузка):
для юзеров не понятно, что такое eth0

Код: Выделить всё

cd /etc/init.d
ln -s net.lo net.eth0

Код: Выделить всё

# nano /etc/conf.d/clock 
это что вообще за часы? Они здесь:

Код: Выделить всё

nano -w /etc/conf.d/hwclock
Прошу прощения, мануель не плохой, но для чайников не катит :)
fedor-deb
Юзер
Юзер
Сообщения: 2
Зарегистрирован: 06 июл 2013, 22:40
ОС: Gentoo

Re: Установка Gentoo с Gnome с нуля. Несколько советов

Сообщение fedor-deb » 06 июл 2013, 22:57

По поводу grub я бы так не заморачивался.
Редактируем: /boot/grub/grub.conf и поехали
Врубаем возможности установки grub: grep -v rootfs /proc/mounts > /etc/mtab
Ставим: grub-install --no-floppy /dev/sda
Все установлено куда надо *YEAH* Если руки не кривые
Ответить

Вернуться в «Unix»