Установка GENTOO из live-usb Ubunto
Итак, я тут полазил по форуму и решил описать процесс установки Генту из под лайф-сд Убунту.
Сразу скажу, я новичек в линуксе. Но как юзер компа- немного продвинутый. На вопрос, нужен ли мне линукс и генту - да, нужен. Есть куча времени и есть желание разобраться в этом звере.Архитектура х86
Цель этого документа - решение проблем, возникающих при установке и настройке Генту, не освещенных в хандбуке и сложные в поиске гугля для русскоязычных.
Для установки использовал хандбук на русском языке.
Итак.
1. Загрузился с лайф-сд Убунту. Сеть работает, диски работают.
2. Создаем раздел бут, корневую папку и свап раздел
sudo fdisk /dev/sda Command (m for help): p Disk /dev/sda: 320.1 GB, 320072933376 bytes 255 heads, 63 sectors/track, 38913 cylinders, total 625142448 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x000547db Device Boot Start End Blocks Id System /dev/sda1 * 1 125000 62500 83 Linux /dev/sda2 125001 7812500 3843750 82 Linux swap / Solaris /dev/sda3 7812501 91698580 41943040 83 Linux /dev/sda4 91698581 625142447 266721933+ 5 Extended /dev/sda5 91700629 175586708 41943040 83 Linux /dev/sda6 175588757 301417876 62914560 83 Linux /dev/sda7 301419925 427249044 62914560 83 Linux /dev/sda8 427251093 553080212 62914560 83 Linux /dev/sda9 553082261 625142446 36030093 83 Linux Command (m for help):
Как видно, наделал я тут дисков, но использовать под Генту собираюсь /dev/sda1 - как бут, /dev/sda2 - как свап (4Гб)б, /dev/sda3 - корневой каталог, как и написано в хандбуке.
3. Создаем файловые системы и подключаем свап
sudo mkfs.ext2 /dev/sda1 sudo mkfs.ext3 /dev/sda3 sudo mkswap /dev/sda2 sudo swapon /dev/sda2
4. Монтируем диски
sudo mkdir /mnt/gentoo sudo mount /dev/sda3 /mnt/gentoo sudo mkdir /mnt/gentoo/boot sudo mount /dev/sda1 mnt/gentoo/boot
5. Установка файлов.
Дату Убунту усмотрела сама и правильную и время тоже, поэтому этот пункт я пропускаю
Скачиваем стаж3 с зеркала. Тут все четко. Мы же в убунту: открыли мозилу, нашли зеркало, скачали в папку Даунлоадс и скопировали в /mnt/gentoo
sudo cp /home/ubuntu/Downloads/stage*.* /mnt/gentoo cd /mnt/gentoo
Входим в папку с архивом
Распаковываем архив
sudo tar xvjpf stage3-*.tar.bz2
Настройка параметров компиляции:
sudo nano -w /mnt/gentoo/etc/portage/make.conf CFLAGS="-O2 -march=i686 -pipe" CXXFLAGS="${CFLAGS}" CHOST="i686-pc-linux-gnu" USE="bindist"
И вот тут встает первый вопрос: нужно ли на этой стадии что-то записывать в USE? Ведь если выбрать профайл, то в USE будут прописаны все нужные для профайла флаги. А в хандбуке на этой стадии никаких флагов в ЮЗ не записывают, поэтому просто добавляю по примеру хандбука :
MAKEOPTS="-j3" #для моего процессора Интел Дуал Кор
Сохранились и забылись.
6. Установка базовой системы Генту.
Начнем сначал - установим зеркала в make.conf. Нам советуют mirrorselect
mirrorselect -i -o >>/mnt/gentoo/etc/portage/make.conf bash: /mnt/gentoo/etc/make.conf: Permission denied
и "О!Боже!!!" Пробуем с sudo -то же самое. В чем же проблема? Главное - поменьше эмоций. Оказывается нет такой утилиты mirrorselect. Ведь можно записать и руками:
sudo nano -w /mnt/gentoo/etc/portage/make.conf #open make.conf GENTOO_MIRRORS="http://trumpetti.atm.tut.fi/gentoo/" #записываем зеркало #и переменную синхронизации SYNC="rsync://rsync.fi.gentoo.org/gentoo-portage"
Сохраняем.
Копируем сведения о DNS
sudo cp -L /etc/resolv.conf /mnt/gentoo/etc/
Хотя я вот заглянул в этот файл, а там как-то не очень много информации, можно было и от руки такое написать.
nano /mnt/gentoo/etc/resolv.conf # Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8) # DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN nameserver 127.0.1.1
Дальше. Монтирование Файловых систем и переход в среду генту
sudo mount -t proc none /mnt/gentoo/proc sudo mount --rbind /sys /mnt/gentoo/sys sudo mount --rbind /dev /mnt/gentoo/dev sudo chroot /mnt/gentoo /bin/bash source /etc/profile export PS1="(chroot) $PS1"
Вот тут возникает еще вопрос: export PS1="(chroot) $PS1" - вот эта строчка обязательна? По-мойму, нет.
Дальше.
Настройка Portage. И кстати, там в листинге опечатка. Странно, что никто не исправляет. Вместо "emerge-webrsync" написали "emerge-webrync". Но мы-то умные, поэтому запускаем emerge-webrsync и обновление тоже сделаем, раз уж тут.
mkdir /usr/portage emerge-webrsync emerge --sync --quiet
Получили сообщение
An update to portage is available. It is _highly_ recommended
* that you update portage now, before any other packages are updated.
* To update portage, run 'emerge portage' now.
Запустили команду emerge --oneshot portage
вот с этого места непонятки:
Total: 48 packages (48 new), Size of downloads: 218,056 kB * Error: circular dependencies: (sys-libs/ncurses-5.9-r2::gentoo, ebuild scheduled for merge) depends on (sys-libs/gpm-1.20.6::gentoo, ebuild scheduled for merge) (buildtime) (sys-libs/ncurses-5.9-r2::gentoo, ebuild scheduled for merge) (buildtime) It might be possible to break this cycle by applying the following change: - sys-libs/ncurses-5.9-r2 (Change USE: -gpm) Note that this change can be reverted, once the package has been installed. Note that the dependency graph contains a lot of cycles. Several changes might be required to resolve all cycles. Temporarily changing some use flag for all packages might be the better option.
Если я правильно понял, в USE нужно вписать -gpm. Вписал. Теперь ЮЗ выглядит так:USE="bindist -gpm"
Пробую снова. Выдает:
Total: 45 packages (45 new), Size of downloads: 211,819 kB * Error: circular dependencies: (sys-devel/gcc-4.6.3::gentoo, ebuild scheduled for merge) depends on (sys-libs/glibc-2.15-r3::gentoo, ebuild scheduled for merge) (buildtime) (sys-devel/gcc-4.6.3::gentoo, ebuild scheduled for merge) (buildtime) * Note that circular dependencies can often be avoided by temporarily * disabling USE flags that trigger optional dependencies.
Можно мне этот шаг пропустить?
Не знаю... Но пропускаю, т.к. думаю, пусть загружу систему сначала, а потом уже обновлю.
7. Выбор профиля.
Вот наконец мы приблизились к ЮЗ флагам. Итак, выполняем
eselect profile list vailable profile symlink targets: [1] default/linux/x86/10.0 * [2] default/linux/x86/10.0/selinux [3] default/linux/x86/10.0/desktop [4] default/linux/x86/10.0/desktop/gnome [5] default/linux/x86/10.0/desktop/kde [6] default/linux/x86/10.0/developer [7] default/linux/x86/10.0/server [8] default/linux/x86/13.0 [9] default/linux/x86/13.0/selinux [10] default/linux/x86/13.0/desktop [11] default/linux/x86/13.0/desktop/gnome [12] default/linux/x86/13.0/desktop/kde [13] default/linux/x86/13.0/developer [14] hardened/linux/x86 [15] hardened/linux/x86/selinux [16] hardened/linux/uclibc/x86
и выбираем себе профайл, какой нам больше нравится. Я выбрал 12. В хандбуке пишет, что выбирая профайл конфигурируются флаги ЮЗ, наиболее подходящие под этот профайл. Я хочу с поддержкой КДЕ. А вот разница между 10 и 13 никто не объясняет. Вот я и думаю, чем больше - тем лучше.
eselect profile set 12
Почитали про ЮЗ. В файле ничего не изменили, ведь уже выбрали профиль с поддержкой КДЕ. А там все уже включено, надеюсь.
Настроил часовой пояс.
cp /usr/share/zoneinfo/Europe/Brussels /etc/localtime echo "Europe/Brussels" > /etc/timezone
Выбираю ядро gentoo-sources, как и советуют для х86 в хандбуке
emerge gentoo-sources
И "О, Боже!!!" та же ошибка с зацикленными пакетами.
Total: 365 packages (365 new), Size of downloads: 1,301,232 kB * Error: circular dependencies: (sys-libs/glibc-2.15-r3::gentoo, ebuild scheduled for merge) depends on (sys-devel/gcc-4.6.3::gentoo, ebuild scheduled for merge) (buildtime) (sys-libs/glibc-2.15-r3::gentoo, ebuild scheduled for merge) (buildtime) * Note that circular dependencies can often be avoided by temporarily * disabling USE flags that trigger optional dependencies. The following USE changes are necessary to proceed: #required by dev-db/virtuoso-server-6.1.6, required by dev-libs/soprano-2.8.0[virtuoso], required by kde-base/kdelibs-4.9.5[semantic-desktop], required by kde-base/kdesu-4.9.5[handbook], required by kde-base/khelpcenter-4.9.5 >=sys-libs/zlib-1.2.7 minizip Use --autounmask-write to write changes to config files (honoring CONFIG_PROTECT).
Из сообщения понимаю, что ">=sys-libs/zlib-1.2.7 minizip" нужно записать в ЮЗ и как-то решить вопрос с зацикливанием. В общем пошел гуглить, как расциклиться.
- Для комментирования войдите или зарегистрируйтесь
> хандбук на русском
> хандбук на русском языке
http://gentoo.org/doc/ru/handbook/handook.xml. хандук, судя по всему, вовремя выпилили из-за многочисленных фейлов
> нужно ли на этой стадии что-то записывать в USE
по идее — сначала выбираете профиль и доп флаги, потом уже собираете. Если флаги меняете — пересобираете.
> export PS1="(chroot) $PS1" - вот эта строчка обязательна? По-мойму, нет.
бегая по консолям, это даст наглядность где chrooted а где нет. Можно забить, конечно.
По поводу сборки из-под «некоего окружения». Даже sysrescuecd требует маленького шаманства, ЕМНИП
export path=
после chrooting. Какие шаманства потребуются для бубунтолайва, пока неизвестно. Описанные вами ошибки с зависимостями повторяемы? А в других окружениях? Нет ли банальной ошибки при установке?>http://gentoo.org/doc/ru/han
>http://gentoo.org/doc/ru/handbook/handook.xml. хандук, судя по всему, вовремя выпилили из-за многочисленных фейлов
Ссылку исправил. http://gentoo.org/doc/ru/handbook/handbook.xml
>Описанные вами ошибки с зависимостями повторяемы?
Повторяются при попытке установить ядро-сурс и обновлении.
> А в других окружениях? Нет ли банальной ошибки при установке?
Решил портажи стереть и заново их запустить.
Стер папку /usr/portage.
Теперь создал заново папку /usr/portage
и делаю emerge webrsync. то же самое. Зацикливается на попытке установить что-либо.
Все пройдет!!! И это тоже пройдет...
cowboy написал(а): Ссылку
Правильный ответ: http://gentoo.ru/content/hochu-ustanovit-gentoo-s-chego-nachat
Разрулить ручками не пробовал?
Вариант с проверить на воспроизводимость с sysrescuecd не рассматривается?
:wq
--
Live free or die
Ты довольно бездумно
Ты довольно бездумно скопипастил команды, даже не пытаясь понять их суть. Вот несколько довольно сильных ляпов, если отбросить то что ты воспользовался вопиюще старым русским Handbook'ом
установка из под любого livecd мало чем отличается, как и сказано в Handbook
Смысла тут немного. Даже если бы в этом опусе не было такой прорвы ошибок - он всё равно устареет со скоростью света, и поддерживать его никто не будет, ведь это даже не wiki
Хм, а архитектура тойже и осталась? Какой была бинарная убунта так и стала Gentoo?
Ты точно понимаешь зачем нужен mirrorselect? Почему ты выбрал эти зеркала?
Ты точно понимаешь что ты делаешь? handbook рассчитан на gentoo live cd, там этот файл выглядит по-другому...
Хех...
Нет, понял не правильно.
Да, шаг "установка Gentoo" можно пропустить. Получится уютная понятная Ubuntu
Ты прямо в Брюсселе и живёш? Завидую...
А кудаб ей деться? Её же никто и не разрулил... несмотря на то что каждый раз в твоём случае portage подсказывает как именно её разрулить. Но ты похоже не в состоянии прочитать что он тебе пишет.
env-update
Я, надеюсь не один заметил про отсутствие этой команды (или плохо смотрел)?
Всё-таки переменные среды - весчь далеко не последняя при таких вводных...