LINUX.ORG.RU

Как загрузиться в генту?

 , ,


0

1

Развернул я дома архив с гентой, собранной в чруте на работе (разворачивал из-под диска с бубунтой). Сделал grub-install. Перезагрузился. Попал, понятное дело, в консоль grub. Согласно вики пишу:

probe -s UUID -u $root
linux /boot/vmlinuz-3.14.0-gentoo rw root=UUID=$UUID 1
initrd /boot/initramfs-3.14.0
boot
грузится ядро, а потом вместо перехода в уровень 1 почему-то стартует уровень 3, который вылетает с ошибкой
INIT: no more processes left in this runlevel

Если я в строчке «linux...» пишу boot=/bin/bash, вываливается какая-то ошибка ядра, которую я не успеваю прочитать, т.к. компьютер перезагружается.

Судя по тому, что в первый раз ядро таки грузилось, проблема скорее всего не в нем, а в неправильных файлах в /etc/inittab (у меня вообще почему-то вместо sysvinit стартует openrc, хотя вроде бы я его удалял). С этим-то разобраться можно будет.

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

Итак, вопрос: как мне загрузиться в однопользовательский режим?

☆☆☆☆☆

у меня вообще почему-то вместо sysvinit стартует openrc, хотя вроде бы я его удалял

Ну иди ставь обратно.

Ты подумай зачем ты удалил пакет с системой инициализации дистрибутива, тем более нового для тебя, в котором ты ничего пока не понимаешь.

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

у меня вообще почему-то вместо sysvinit стартует openrc, хотя вроде бы я его удалял

Нет бы установить систему и пользоваться, но нам надо секаса!

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

Ты подумай зачем ты удалил пакет с системой инициализации дистрибутива, тем более нового для тебя, в котором ты ничего пока не понимаешь.

Не надо демагогии! Я хочу sysvinit, и мне всякие openrc не нужны!

Сейчас задача — загрузиться в однопользовательский режим. А init=/bin/bash почему-то не работает.

Есть ли возможность как-то еще в обход неработающей системы инициализации загрузиться? Кстати, chroot из-под бубунты мне сделать не получилось (что-то процесс отваливался в корку).

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

Без понятия. Вижу только, что в openrc какие-то уж больно страшные стартовые скрипты.

Eddy_Em ☆☆☆☆☆
() автор топика

Попробовал с ядром 3.9.2 (завалялось). Пишет, что

/bin/bash - no such file or directory

Забавно. Сейчас буду искать, какого хрена его там нет.

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

Я хочу sysvinit, и мне всякие openrc не нужны!

Ну дак openrc - это не инит, а набор функций для sysvinit.

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

Не надо демагогии! Я хочу sysvinit, и мне всякие openrc не нужны!

Ну иди пили свой дистрибутив. Ну или читай документацию по sysvinit и разбирайся что и как должно быть.

Ну и вообще это нездоровый подход не разбираясь в теме сразу лезть менять основы.

Сейчас задача — загрузиться в однопользовательский режим. А init=/bin/bash почему-то не работает.

Процессор, на котором собиралась система по архитектуре совпадает с тем, на которому она сейчас запускается или хотя бы должен быть младше. В противном случае ты должен был почитать про march и mtune в cflags на предмет оптимизации кода, генерируемого компилятором, под процессор.

Если ты там ничего не указал, то в march и mtune подставилось native, а это значит, что код оптимизирован именно под тот процессор, на котором происходила сборка и запустится либо только на нём, либо на более новой модели, которая обратно совместима с ним.

kostik87 ★★★★★
()

пишу boot=/bin/bash, вываливается какая-то ошибка ядра, которую я не успеваю прочитать, т.к. компьютер перезагружается.

Добавь panic=300 к опциям, делов-то

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

Не надо демагогии! Я хочу sysvinit, и мне всякие openrc не нужны!

А, у тебя нестандартный init? Ну, тогда ты знаешь как его дебажить.

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

Естественно, ядро я под amd64 собирал, чтобы можно было везде эту систему развернуть. Нет смысла пилить "оптимизации" ядра под конкретный процессор семейства.

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

Потому что там эта конфигурация поддерживается?

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

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

зная что там systemd по умолчанию...

Нет, у меня была sysvinit. Потому что с тех пор, как школокарчик на поцтеровысер перешел, я перестал обновляться. А вот — поломал два месяца назад домашний линукс (что-то там хотел поставить, да криво). Хочу генту. Похоже, не так все просто, как казалось...

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

Похоже, не так все просто, как казалось...

Делай вещи по-порядку... Читай по буквам: поставь Gentoo в умолчальной минимальной конфигурации с OpenRC по хэндбуку, а потом впиливай/выпиливай что тебе нужно. Хоть сам OpenRC.

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

Я хочу sysvinit, и мне всякие openrc не нужны!

Ты хоть разницу то знаешь? :)

А это не важно. Пацаны сЛОРа одобряют.

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

Блин, это ж недели 2 колупаться с компьютером! А я-то просто в фоновом режиме на работке все развернул в чруте и обновлял периодически.

Грусть-печаль-тоска ☹

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

*facepalm*

Откуда ж я знаю как в этом чертовом grub2 работать? А в бубунте нет grub'а нормального. Понатыкали, понимаешь, всякого нового говна, что нормальный человек ничего поделать не может!

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

Откуда ж я знаю как в этом чертовом grub2 работать?

o_O. Причём здесь опции ЯДРА и загрузчик? o_O

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

Мне нужен дистрибутив:

  • где система инициализации — sysvinit
  • нет systemd
  • нет networkmanager
  • нет pulseaudio
  • нет зондов
  • свежий софт
Eddy_Em ☆☆☆☆☆
() автор топика
Ответ на: комментарий от Pinkbyte

А если stage3 развернуть в корень со всей этой байдой, как думаешь — смогу загрузиться и потом уже все подправить как надо?

Eddy_Em ☆☆☆☆☆
() автор топика

Почему-то подумалось, что «загрузиться в генту» это еще один вариант «нажраться в зюзю» и пр, о сильной интоксикациии. «Ну что, дорогой муженек, опять по случаю пятницы загрузился в генту со своими корешами, такими же гентушниками»?

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

Ставь по обычному и не выпендривайся.

Ну и real_init - это параметры, обрабатываемые init сценарием из состава initramfs, собранного genkernel, у тебя так?

Или опять ещё один сферический конь в вакууме, у тебя самосборный initramfs или вообще скопированный из arch linux, ведь там же он работал, значит и здесь должен ...

В общем подытожу, ты пытаешь сделать сразу несколько дел, не читая документацию, может и читал но бегло, поставить дистрибутив, плюс сразу внести довольно серьёзные изменения.

Так не получится.

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

нет systemd
нет networkmanager
нет pulseaudio
нет зондов
свежий софт

Это примерно как приз Джойса - пройти через Дублин, не пройдя мимо ни одного паба. Набрать полный комплект свежего софта, который бы не был завязан на systemd/nm/pa. В теории - возможно...

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

Это и на практике реально — в генте!

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

Ставь по обычному и не выпендривайся.

Ладно, будем еще полгода без компьютера сидеть, пока жена сама туда хрюнделя какого-нибудь не впендюрит.

Eddy_Em ☆☆☆☆☆
() автор топика

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

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

Потому что это параметр, который обрабатывает сценарий init в initramfs, собранный genkernel.

Тебе вряд ли удастся поставить Gentoo, ты как особенно «мыслшишь», если это можно так назвать.

Проще говоря берёшь мысли и идеи с потолка. При чем не читаешь документацию.

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

Чего там пол года сидеть, когда ты собирал систему в chroot, ты конечно же прочитал документацию в Gentoo Handbook и дошёл до раздела про FEATURES.

В котором тебя заинтересовал buildpkg, ты конечно же в make.conf прописал строчку:

FEATURES="$FEATURES buildpkg"

И при сборке системы в chroot получил в директории /usr/portage/packages, относительно chroot директории, архивы с бинарными пакетами.

Теперь проделав всё это ты легко можешь установить систему за 15 минут со stage3.

Достаточно распаковать stage3, срез portage и положить в /usr/portage/packages дерево собранных бинарных пакетов, а в /var/lib/portage/ файл world, в котором перечислен список устанавливаемых пакетов, в make.conf прописать те же use флаги, с которым собирались пакеты и в /etc/portage/package.use, после чего набрать:

emerge -auvDN -k y world
и у тебя установится система из бинарных пакетов.

Теперь тебе осталось лишь прописать загрузчик.

Всё, за 15-20 минут у тебя установленная Gentoo.

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

Поздравляю.

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

Все я читаю. Но, как оказалось, хреново читаю.

Просто о компиляции генты на домашнем компьютере никакой речи и быть не может: у меня даже на работе одно лишь ядро часа полтора собирается, а дома оно будет целый день компиляться! Т.е. все пару-тройку тысяч пакетов я буду компилять месяц!

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

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

ты конечно же в make.conf прописал строчку:


FEATURES="$FEATURES buildpkg"

Конечно же, первый раз про это слышу.

Спасибо, как только выдастся время, попробую генту поставить таким образом: скажем, загрузиться в rescueCD (т.к. в бунте не работает chroot), развернуть stage3, выполнить базовую настройку, а потом стянуть уже все нужное с работы.

Может быть, даже получится сделать эдакий бинарный репозиторий на работе, чтобы руками не тягать туда-сюда пакеты.

Ну, авось до конца этого года сделаю...

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


Мне нужен дистрибутив:


  • где система инициализации — sysvinit

  • нет systemd

  • нет networkmanager

  • нет pulseaudio

  • нет зондов

  • свежий софт



Все аргументы могу понять. Кроме первого. У тебя очень много свободного времени, что ли? Зачем тебе разбираться с системой инициализации в дистрибутиве?

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

Я бы и дальше арчиком пользовался, если бы его мейнтейнеры не были продажными шлюшками-школоло.

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

системд-хейтер, а Джента - Эдди_Эм-хейтер. она просто ненавидит школоту.

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

в первом приближении генту можно установить вообще без конпеляния, распаковав stage3, а ядро с initrd взять из livecd

qbe
()

Обидно, все-таки, что линукс скатился в унылое говно!

Когда-то все было просто: взял диск ASP linux, поставил. Если надо — докачал нужные пакеты из интернета. Ничего компилять не надо было, все работало из коробки.

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

Eddy_Em ☆☆☆☆☆
() автор топика

А что насчет freeBSD?

Понятно, что для работы она не годится (всяких куд там нет), но по идее для дома-то вполне? Не?

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

Если твоё взаимодействие с инитом не выходит за стандартные рамки, то не заморачивайся и ставь генту по хендбуку.
OpenRC няшка. Тёплая и ламповая.

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

подметил такую тенденцию: все поцтерингоподелияхейтеры отличаются редкостным рукожопием и беспомощностью

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

И на практике тоже. У меня гента и у меня (внезапно!) самый наисвежайший сфот, а поцтеринга и его свистоперделок даже близко нет.

ЗЫ USE="-pottering"

ЗЫЫ Няшь-мяшь приз Джойса наш!

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

Развернул я дома архив с гентой, собранной в чруте на работе (разворачивал из-под диска с бубунтой)

Я бы попробовал chroot'нуться с диска с бубунтой и установить openrc.

По поводу загрузчика, у меня если делать make install ядра, то в grub почему-то идет запись с UUID. Если make install не делать, а ручками скопировать ядро и сгенерировать конфиг через grub2mkconfig -o /boot/grub/grub.conf - то будет не UUID, а нормальное /dev/sdaХ и все загружается.

Правильно сказали, что - не правильно начал. Надо было получить минимально рабочую систему, обжиться, потом удалять все, что тебе не нужно. А то сейчас есть все шансы, что станешь генту-хейтером, говорить что там все ломается даже не успев обновиться и вообще компилируется день и ночь. :)

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

Набрать полный комплект свежего софта, который бы не был завязан на systemd/nm/pa.

Эм... 2 десктопа с KDE4 и Raspberry с OpenBox говорят о том что это не просто возможно, а еще и чрезвычайно легко.

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