Война с гентой
May. 15th, 2013 09:43 pm![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
Таки скопировал я на старый 72-гиговый винт генту, которую ставил в чруте на работе. И что бы вы думали? Фигвам!
Сначала у меня возникла проблема с невозможностью запуска openrc: я удалил симлинк из /run/, и все заработало. Парадокс: какой идиот этот симлинк туда пихал?
Пока грузилось, я обратил внимание на то, что этот сраный openrc жутко тормозной: несмотря на то, что пока еще никаких сервисов он не запускает (я без понятия, как с этим говном работать), начальная загрузка заняла минуты две!!!
Потом у меня возникли проблемы вида "Id 'c2' respawning too fast". Судя по гуглу, это из-за того, что ведро собрано криво. Идиотизм! Я его собирал с genkernel! Куда же ровней?
Ну, а надпись "No directory, logging in with HOME=/" вообще поставила меня в тупик: это как? В /etc/passwd все ОК. Чего этой дуре надо?
Вопрос гентушникам, которые, быть может, читают мой журнал: как в генте минимальной кровью вернуть кошерный sysvinit вместо этого говеного тормозного openrc?
И еще вопрос: как вы в этой сраной генте живете, если она по умолчанию вообще никаких настроек не предлагает? Неужто забиваете сначала /etc материалами из гугола? Я уже понял, что гента вообще не пригодна для первой системы (т.е. установить ее куда-то, где ничего нет, тупо развернув из минимального заранее подготовленного образа, невозможно)!
UPD.
Блин! Проблема с тупизной решилась добавлением в строчку загрузчика этого:
devfs=nomount
Чудеса в решете!
А еще я не понял, почему root=/dev/disk/by-label/GENTOO этому чертовому openrc не понравилась!
Но попасть в генту я не смог: после введения логина и пароля agetty перезапускался (а на фоне мелькал матюг про HOME=/)! Попробовал загрузиться с init=/bin/bash, и получил веселое "выпадение ведра в осадок", а перед матюгами trace'а — странное сообщение
Pid: 1, comm: bash Not tainted …
Завтра продолжу войну.
Сначала у меня возникла проблема с невозможностью запуска openrc: я удалил симлинк из /run/, и все заработало. Парадокс: какой идиот этот симлинк туда пихал?
Пока грузилось, я обратил внимание на то, что этот сраный openrc жутко тормозной: несмотря на то, что пока еще никаких сервисов он не запускает (я без понятия, как с этим говном работать), начальная загрузка заняла минуты две!!!
Потом у меня возникли проблемы вида "Id 'c2' respawning too fast". Судя по гуглу, это из-за того, что ведро собрано криво. Идиотизм! Я его собирал с genkernel! Куда же ровней?
Ну, а надпись "No directory, logging in with HOME=/" вообще поставила меня в тупик: это как? В /etc/passwd все ОК. Чего этой дуре надо?
Вопрос гентушникам, которые, быть может, читают мой журнал: как в генте минимальной кровью вернуть кошерный sysvinit вместо этого говеного тормозного openrc?
И еще вопрос: как вы в этой сраной генте живете, если она по умолчанию вообще никаких настроек не предлагает? Неужто забиваете сначала /etc материалами из гугола? Я уже понял, что гента вообще не пригодна для первой системы (т.е. установить ее куда-то, где ничего нет, тупо развернув из минимального заранее подготовленного образа, невозможно)!
UPD.
Блин! Проблема с тупизной решилась добавлением в строчку загрузчика этого:
devfs=nomount
Чудеса в решете!
А еще я не понял, почему root=/dev/disk/by-label/GENTOO этому чертовому openrc не понравилась!
Но попасть в генту я не смог: после введения логина и пароля agetty перезапускался (а на фоне мелькал матюг про HOME=/)! Попробовал загрузиться с init=/bin/bash, и получил веселое "выпадение ведра в осадок", а перед матюгами trace'а — странное сообщение
Pid: 1, comm: bash Not tainted …
Завтра продолжу войну.
no subject
Date: 2013-05-16 03:10 am (UTC)no subject
Date: 2013-05-16 04:31 am (UTC)Правда, у меня перерывы большие.
Ничего, эта подлюка таки сдастся в конце-концов! ☺
(а ведро, похоже, придется пересобирать: сдается мне, что genkernel — бажная жопа)
no subject
Date: 2013-05-16 06:52 am (UTC)И да, зачем ты вообще собирал на одной машине систему для другой? Процессоры хоть одинаковые? Я один раз собрал с sse4_2 на машине, где его нету - глюков огрёб...
no subject
Date: 2013-05-16 07:14 am (UTC)Почему? У нас сейчас не одномегабайтные жесткие диски: от того, что у меня будет валяться пара десятков мегабайт неиспользуемых модулей, мне хуже не станет!
А вся эта "оптимизация под конкретный процессор" судя по реальным тестам — бред чистой воды!
> зачем ты вообще собирал на одной машине систему для другой?
Дома у меня сильно тормозной компьютер, а на работе — ОК. Да и не могу же я дома жужжать компьютером неделю! А на работе за двое суток все скомпилялось.
На процессоры насрать: все равно архитектура и там, и там — x86_64. А вот насчет всех этих sse, блин, ты прав! Надо проверить. А то, может, у меня genkernel и глючит из-за чрезмерной оптимизации.
Не знаю, что я сразу не подумал про pf-sources. Сейчас буду ставить.
no subject
Date: 2013-05-16 07:23 am (UTC)Опять make genkernel?
no subject
Date: 2013-05-16 07:28 am (UTC)И да, я всё собираю в ядро, без модулей - мне так больше нравится.
no subject
Date: 2013-05-16 07:32 am (UTC)Это же бульбец! А что, готовых решений нет, подходящих на все случаи жизни? Зачем эти сложности?
> я всё собираю в ядро
У меня в случае успеха эта гента "переедет" как минимум на два компьютера + 1 ноутбук. Естественно, нужна универсальная установка.
no subject
Date: 2013-05-16 07:42 am (UTC)А то что-то меня по этому поводу "в гугле забанили".
no subject
Date: 2013-05-16 07:56 am (UTC)Сложности всего один раз, плюс генкернел вроде бы initrd требовал, что есть некошерно :) Я его один раз всего собирал. menuconfig отнимает полчаса чтения выхлопа lspci/lsusb и продумывания системы. Ну, может, потом тебе поддержка чего-то нового вроде нового принтера понадобится, перебрать придётся :)
И да, вот: What's OpenRC?
OpenRC is a dependency-based rc system that works with whatever init is provided by the system, normally /sbin/init. However, it is not a replacement for /sbin/init. The default init used by Gentoo Linux is sys-apps/sysvinit.
Можно systemd прикрутить, но лично я считаю это наркоманией.
no subject
Date: 2013-05-16 08:34 am (UTC)> What's OpenRC?…
Оно очень тормозное + зачем-то на стадии загрузки сканирует модули ядра. Каждый раз. Это жесть!
Ну и ни хрена не понятно, как с этой заразой работать: с sysvinit-то все просто — запихал симлинки в нужный тебе /etc/rcX.d, получай старт нужного демона на нужном уровне запуска. А тут что-то я не врубился, куда симлинки запихивать. В арчике как-то проще настройка была.
Да и с сеткой что-то в генте настройка странная…
no subject
Date: 2013-05-16 08:50 am (UTC)У меня опенрс почему-то не тормозит. Может, модулей нету, сканировать нечего? Симлинки никуда пихать не надо, для этого есть rc-update. Если очень хочется, есть /etc/runlevels.
С сеткой всё проще, чем в редхате, по-моему.
/etc/conf.d/net
dns_domain_lo="domain.local"
config_eth0=( "dhcp" )
dhcpcd_eth0=( "-t 60" )
no subject
Date: 2013-06-30 10:44 am (UTC)Скорее всего криво сохранилась гента при переносе (копировании), для подобных целей применяю rsync.
Для обновления конфигов запускать etc-update.