LINUX.ORG.RU

Зачем на Gentoo Stage_1, Stage_2, Stage_3?

 ,


0

1

Хочу поставить Gentoo, так как я хейтер systemd (да, я признаюсь сразу).
К тому же я давно хотел попробовать «хвалёное» «собери систему по своему вкусу, и на своё железо». В общем, созрел.
Вопрос:
Чем там отличаются эти стэйджи, читал гентувики, и смотрел обзоры. И там, и там говорится, что Stage_1 и Stage_2, нет смысла собирать, и лучше начать со Stage_3. Не совсем могу уловить смысла, раз начальные стейджи есть, то и рaзличие должно быть. Никто ж в других дистрибутивах не поставляет ядро, как отдельный этап, потом иксы, как второй этап, и потом всё это в куче на третьем стейдже... В чём тут смысл?



Последнее исправление: sania77 (всего исправлений: 1)

Stage3 сразу собрать с нуля не получится. Нужно сначала сконпелять конпелятор, ядро, базовое минимальное окружение

Harald ★★★★★
()
Ответ на: комментарий от Harald

Запутал окончательно. Зачем тогда его отдавать отдельно, как третью загрузку? Типа, просто кусками сорцы разорвали? Порциями дают?

sania77
() автор топика
Ответ на: комментарий от Harald

чушня. берёшь и собираешь в любом имеющемся бинаром дистрибутиве

anonymous
()
Ответ на: комментарий от sania77

Ты лучше сразу на мощном компьютере в чруте stage4 подготовь, потом удобней будет на N машин разворачивать: скопировал с флешки, запустил grub-install, настроил сетевые интерфейсы и запустил eix-sync && emerge -uDN world.

Eddy_Em ☆☆☆☆☆
()

Установка из stage1/stage2 не поддерживаются лет 15, на сайте выкладывают только тарболы stage3.

anonymous
()
Ответ на: комментарий от anonymous

Если хочешь всё прям у себя собрать, просто потом делай emerge -e @world пересобирай все пакеты

anonymous
()

Положа руку на сердце...

Установка (точнее сборка системы) из stage1-2 как поддерживалась, так и поддерживается. Но не для всех. Эти стейджи, это зачаток системы, нужные при портировании Gentoo на другую архитектуру, например. Т.е., в первом содержатся некие core GNU tools, которые нужно перенести на новую архитектуру, чтобы иметь возможность собрать там уже stage2, после чего уже собрать уверенно stage3 на основе stage2.

Stage3 это именно установка для пользователя, имеющая минимальный и рабочий образ системы для данной архитектуры. Как только выполните chroot /mnt/gentoo /bin/bash, Вы в этой минимальной системе и окажитесь. Далее делаем по handbook, хотя я бы поправил /etc/portage/make.conf и, далее, сделал бы emerge -uDN @system, перестроил бы toolchain (gcc, glibc, binutils и ещё кучку всего) и, далее, собрал бы минимальную систему как emerge -uDN @world. Если сразу собирать через emerge -uDN @world, то систему всё равно собирать нужно будет (если портедж так решит), но я просто предпочитаю контролировать процесс.

Stage1 и 2 это для release engeneers, которые занимаются портированием Gentoo на другие архитектуры. Если хочется, то можно найти их спецификации, но в 99.9% случаев это на фиг ненужные развлечения для пользователя.

Так что, ставьтесь из stage3 и не тратьте время. Для Вас эта работа по портированию уже проделана.

Moisha_Liberman ★★
()

Хочу поставить Gentoo, так как я хейтер systemd.

Ставь Artix-openrc.

Gentooshnik ★★★★★
()

Не зачем, а это этапы сборки. Первого уже достаточно для дальнейшей самосборки (bootstraping), но проще оставить на автоматику пару этапов. Разницу сам посмотри. stage3, вроде, включает в себя весь set @system.

https://wiki.gentoo.org/wiki/Catalyst#Specs_files
https://wiki.gentoo.org/wiki/Catalyst#Start_the_build

root #catalyst -f stage1.spec && catalyst -f stage2.spec && catalyst -f stage3.spec

boowai ★★★★
()
Ответ на: комментарий от boowai

catalyst

Не осилил каталист. Написал свою портянку на баше. Так хоть понимаю, что происходит, и могу по своему собирать stage’и.

anonymous
()
Ответ на: Положа руку на сердце... от Moisha_Liberman

чушня. берёшь и собираешь в любом имеющемся бинаром дистрибутиве

В бинарном дистрибутиве (другом) пакеты «заточены» под systemd. Так не получится.

Ты лучше сразу на мощном компьютере в чруте stage4 подготовь, потом удобней будет на N машин разворачивать

Нет второй машины.

Так что, ставьтесь из stage3 и не тратьте время. Для Вас эта работа по портированию уже проделана.

Спасибо. Разложили всё «по полочкам». Теперь всё ясно. Первые два стейджа для совсем уж красногразных, и для экзотического железа.

stage3, вроде, включает в себя весь set @system.

Не. По хендбуку systemd «глушится» глобальным запретом на сборку под него.

Глобальное отключение и маскирование USE-флага systemd

systemdФлаг USE может быть глобально сбросить в /etc/portage/make.conf :

ФАЙЛ /etc/portage/make.conf
# Предполагается, что USE содержит дополнительные настройки флагов, представленные многоточием:
USE = "... -systemd ..."
Это дополнительная гарантия того, что пакеты с мягкой зависимостью от systemd всегда будут устанавливаться без включения функций, которые этого требуют.

Кроме того, USE-флаг можно замаскировать в /etc/portage/profile/use.mask, чтобы функция автоонмаски Portage не могла предложить его включить:

ФАЙЛ /etc/portage/profile/use.mask
systemd

Маскировка пакетов systemd
Лучшая гарантия того, что systemd не будет установлена, - это полное маскирование пакета :

Пример каталога FILE package.mask/etc/portage/package.mask/systemd
Системные приложения / systemd

https://wiki.gentoo.org/wiki/Gentoo_Without_systemd

sania77
() автор топика
Ответ на: комментарий от sania77

stage3, вроде, включает в себя весь set @system.

Не. По хендбуку systemd «глушится» глобальным запретом на сборку под него.

Не понял. В обычном stage3-amd64-20210425T214502Z.tar.xz.CONTENTS.gz от systemd вижу только sys-apps/systemd-tmpfiles и ошметки конфигурации.

У меня профиль default/linux/amd64/17.1/desktop/plasma (stable) и ничего маскировать не надо.

boowai ★★★★
()
Последнее исправление: boowai (всего исправлений: 1)
Ответ на: комментарий от sania77

stage3, вроде, включает в себя весь set @system.

Не. По хендбуку systemd «глушится» глобальным запретом на сборку под него.

set @system к systemd отношения не имеет, если конечно не выбрать make.profile с systemd

liaonau
()
Ответ на: комментарий от sania77

по моей ссылке подробный мануал.

-systemd и mask скорей перестраховка, если ставишь/обновляешь не неглядя.

boowai ★★★★
()

Первый раз ставишь Gentoo? Бери stage3. Как пообвыкнешься - потом поймешь зачем (не)нужны stage1 и stage2.

Pinkbyte ★★★★★
()

> Зачем на Gentoo Stage_1, Stage_2, Stage_3?

Затем же, зачем и в танчиках на денди. Шучу.

Устанавливать систему из Stage 3, это как класть исходный код в женщину. В результате получится человек. Stage 1, это как эволюционировать из микроорганизма. Результат будет тот же, только компилироваться будет на пару миллионов лет дольше.

ZenitharChampion ★★★★★
()

Кстати, не забудь сразу замаскировать elogind и добавить в USE "-elogind". Иначе замучаешься эту дрянь вычищать: я сегодня на одной рабочей машине обнаружил, что бездумное обновление привело к тому, что в системе завелась эта гадость. Пришлось вручную разрешать конфликты и пересобирать зависимости.

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от ZenitharChampion

+миллион!

Устанавливать систему из Stage 3, это как класть исходный код в женщину. В результате получится человек. Stage 1, это как эволюционировать из микроорганизма. Результат будет тот же, только компилироваться будет на пару миллионов лет дольше.

Порвало! =)))

Moisha_Liberman ★★
()
Ответ на: +миллион! от Moisha_Liberman

Всем спасибо за советы. Объяснили более чем.
Скоро отпуск, надеюсь, Генту мне его не испортит )))
О результатах доложусь.

sania77
() автор топика
Ответ на: комментарий от sania77

Незачто.

Спасибо. Разложили всё «по полочкам». Теперь всё ясно. Первые два стейджа для совсем уж красногразных, и для экзотического железа.

По сути да. И вон, уважаемый ZenitharChampion хорошо сказал, аж слеза от хохота навернулась. =)))

В принципе, catalyst и .spec-файлы ещё попозже может понадобиться в случае, если Вам захочется вымутить свой liveUSB, например, но это позже, сильно позже.

Moisha_Liberman ★★
()
Ответ на: комментарий от sania77

Ещё вопросы задавайте по ходу дела,

т.к. отдыхать-то тоже надо. Если сложности появятся – пишите. Гентари мужики иной раз резкие и с плохим характером (это просто «тактовая частота» мозга задрана от души), но по большей части отзывчивые. =)

Moisha_Liberman ★★
()
Последнее исправление: Moisha_Liberman (всего исправлений: 1)
Ответ на: комментарий от Eddy_Em

Кстати, не забудь сразу замаскировать elogind и добавить в USE «-elogind». Иначе замучаешься эту дрянь вычищать: я сегодня на одной рабочей машине обнаружил, что бездумное обновление привело к тому, что в системе завелась эта гадость.

Спасибо за ценный совет, Эдуард! Как всегда - с меня чай/кофе. Скоро буду в ваших краях, непременно отблагодарю.

Владимир

anonymous
()
Ответ на: комментарий от boowai

Спасибо, почитаю, что за зверь такой этот mdev. А то уж больно очково дальше на udev сидеть: того и гляди, туда кусок systemd запихнут!

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от anonymous

пролит свет на причины нелюбви эдуарда к systemd

anonymous
()
Ответ на: комментарий от ZenitharChampion

Stage 1, это как эволюционировать из микроорганизма. Результат будет тот же, только компилироваться будет на пару миллионов лет дольше.

А ты профи. Как тебя ещё не засмеяли на этом форуме?

shleemypants
()
Ответ на: комментарий от Eddy_Em

Кстати, не забудь сразу замаскировать elogind и добавить в USE «-elogind»

Не мелочись! Начинай с USE=«-*».

shleemypants
()
Ответ на: комментарий от shleemypants

Да нормально всё. =)))

«Тактовая частота» головного мозга задрана, поэтому и реагируют несколько резче, чем ожидается.

И это вы ещё бсдшников не видели – там вообще альтернативная реальность. =)))

Moisha_Liberman ★★
()

Я сегодня впервые в своей жизни сразу после установки генты смог загрузиться в нее и даже сеть заработала! Обычно приходилось по нескольку раз ядро пересобирать, т.к. постоянно какой-нибудь модуль забывал отметить. В менюшке make menuconfig сейчас уже столько предустановлено, что уже наоборот приходится: не думать часами, какие галочки поставить, а думать, какие галочки поснимать!

Ставил почти как обычно, за малым исключением: т.к. SSD PCI-x'ная, не получилось ее к своему компу подключить, пришлось сначала подключаться клавиатурой и монитором к мини-ПК, грузиться с sysresque, настраивать сеть и лишь потом разворачивать stage3 и делать чрут.

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от shleemypants

Он достаточно длинный, поэтому если что пропустил - не обессудь.

gcc (+ arm-none-eabi), sdcc, cmake, make, sublime-text, qt-creator, leafpad, mc.

texstudio, texlive, libreoffice.

KiCAD, LibreCAD, FreeCAD, Gimp, ImageMagick, feh.

firefox, thunderbird, chrome.

i3wm, xfce4-terminal, coreutils, Octave.

Gentoo@openrc, pure alsa, X.

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от shleemypants

Подо все используемое ебилды есть, но кикад я ставлю с гита, чтобы на всех рабочих компах была одна и та же версия (а то были проблемы при переносе проектов между разными версиями). Ну и элементную базу для кикада напрямую с гита утягиваю — тоже чтобы везде было одинаково.

Свои ебилды приходится лишь под свои велосипеды делать. Раньше не делал ебилдов, но замучился, что после обновлений нет-нет, да какой-нибудь велосипед склеит ласты…

Eddy_Em ☆☆☆☆☆
()
Последнее исправление: Eddy_Em (всего исправлений: 1)
Ответ на: комментарий от Eddy_Em

Тогда почему ты прошел мимо Crux? там очень достойная core и Xorg ветки. На левое ПО (CAD) пишешь сборку сам. Говна нет. Версии последние, люди адекватные.

После Crux Gentoo вообще кажется Убунтой. Ни влево ни вправо.

shleemypants
()
Ответ на: комментарий от shleemypants

Так уж исторически сложилось. Да и у генты самый большой объем реп по сравнению с другими дистрибутивами.

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от Eddy_Em

Так ты просто долго не вникал. Они переходят на Systemd.
В документации написано, что OpenRC используется только потому, что надо много переписывать, как документации, так и скриптов. А так всех устраивает SystemD. В конце года тю-тю.

shleemypants
()
Ответ на: комментарий от shleemypants

Ну вот когда в генте нельзя будет openrc использовать, тогда и буду переходить на другой дистр.

А вообще, я считал, что мейнтейнеры генты в основном вменяемые и вестись на systemd не будут.

Eddy_Em ☆☆☆☆☆
()
Последнее исправление: Eddy_Em (всего исправлений: 1)
Ответ на: комментарий от shleemypants

Gentoo тоже есть и с musl и

c uClibc и с glibc. Есть и аналоги kali типа pentoo. Правда, это своя такая ветка типа кальки, но тоже есть.

Moisha_Liberman ★★
()
Ответ на: комментарий от shleemypants

Ну да... "Нормально"... =)))

Люди, сидящие на системе, где дров маловато априорно не могут быть нормальными. =)))

У меня вот сейчас 5.12, вот тут да, с дровами нормально, насколько может быть нормально в Linux. С софтом тоже нормально. =)

Ну и подход со сборкой из сырцов, понятное дело, тоже остаётся в силе.

Они переходят на Systemd.

Можно и не переходить для своего оверлея, если. Правда, тогда придётся мейнтейнить больше обычного, но посмотрим ещё, в общем.

Moisha_Liberman ★★
()
Ответ на: Ну да... "Нормально"... =))) от Moisha_Liberman

У меня вот сейчас 5.12

ага, нормально. А выключить все заплатки можешь? А нормально, что ядро работает в 2 (в два) раа медленнее 4.19? А нормально, что ты не можешь воткнуть LTS kernel, там тоже вшили «заплаточки», чтобы мой комп за 2к$ работал по скорости, как за 500$? Вот нет разницы…
А нормально, что регрессия в 5.12 дикая? А нормально, что «Ну и подход со сборкой из сырцов, понятное дело, тоже остаётся в силе» уже ничего не решает?

Для затравки: https://www.phoronix.com/scan.php?page=article&item=linux-416-54&num=8

shleemypants
()
Ответ на: комментарий от shleemypants

Фигассе...

А нормально, что ядро работает в 2 (в два) раа медленнее 4.19?

Это где же такие ядра берутся-то? У меня вообще сборка стоит с флагом «experimental», когда вливается патч, позволяющий при конфиге ядра выставить определённый процессор. Вот этот, см. «Additional CPU optimizations for GCC». Ну или вот он отдельно.

В остальном, то что ядро, идущее по дефолту «тупит», это как раз полностью нормально. Все понимают (ну, «почти» все) что ядро охрененно выросло в размерах из-за того, что нужно поддерживать херову гору железа и в случае «ядро по дефолту» оно просто обязано загружаться и работать в принципе почти где угодно. И ни кто не знает какая именно у Вас конфигурация на хосте. Или конфигурации на хостах. И что Вы хотите включать, а что нет. Там одних кодовых страниц поддержка на два экрана. А сетевые карты у Вас тоже все поддерживаются? Прямо по списку или одна-две? В реале если.

Так же почти все понимают что нужна точная настройка ядра на используемое железо и в ядре по-дефолту в любом случае дохренищи лишнего, что стоит на фиг поотключать в конфиге. А для сервера я бы вообще ещё и make localyesconfig, чтобы вообще только то вкомпилировалось бы в ядро, что нужно и не в виде модулей, поддержку которых на серваке вообще имеет смысл отключать, а как монолит.

Да, я понимаю что «люди не хотят пердолиться с конпилянием ведра». Не хотят и ненадо – тогда нефиг жалиться. Грузим дохренилиард говна в память, скрипим зубами и ни в каком случае не компилим ядро.

Для более умных есть genkernel и там даже предыдущий конфиг ядра можно сохранять и использовать.

Ну а так-то ещё и отладочные функции ядре можно вспомнить. Они тоже по-дефолту активны. Часто ядрышко отлаживаете? =)))

Moisha_Liberman ★★
()
Последнее исправление: Moisha_Liberman (всего исправлений: 1)
Ответ на: Фигассе... от Moisha_Liberman

Я скажу так:
Тесты проводить не мастак, но…
До Intel вмешательства в ядро - 26 градусов в простое.
После - 40.

Больше железа? Да взял и собрал. Только вот патчи теперь вшиты.
Многие опции неотключаемы в ветке 5.x. Мало того, теперь они добрались до видео (смотри мои темы, их очень много :)).

Часто ядрышко отлаживаете?

Иногда приходится. Это не отменяет всего выше. И последние эксперименты показали, какая тухлая контора: «мы де, на слово вам верили, а вы айайай, теперь блокируем».

Я это к чему? Не надо на BSDунов гнать ;)

shleemypants
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.