LINUX.ORG.RU

root=UUID без initrd, как?


0

3

Недавно проскакивала новость что теперь ядро Linux может загружаться и «брать корень» по UUID или label-у без применения initrd, теперь этот код уже внутри ядра. Я тогда обрадовался этой новости, а теперь реально попытавшись применить эту возможность на самосборном ядре, вижу что оно либо не работает либо не включено что-то в конфиге ядра.

Параметр указываю так: root=UUID=60d73bda-*** (полностью не пишу, но его взял я из grub.cfg, и проверил в /dev/disk/by-uuid что все верно)

Вопрос: как брать по UUID (или label, тоже хорошо)? Что включать в ведре?

Насколько я понял, так включили поддержку загрузки по GUID для GPT, а вот DOS-овская разметка в пролёте. Параметр называется root=PARTUUID= если ты об этом.

Nao ★★★★★ ()

Загрузки по UUID файловой системы в ядре нет. Только, как указали выше, по UUID раздела на диске, размеченном GPT. У меня на большинстве серверов GRUB с ядром на флешке, а диски размечены в GUID, так что этот метод вполне работает.

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

У меня на большинстве серверов GRUB с ядром на флешке

OMG! Можно поинтересоваться: зачем?

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

а, ясно, да я уже нашел что только GPT и вообще PARTUUID...

задача чтобы со своим ядром не париться с initrd и при этом чтобы диски не путались ^_^

но может быть хотя бы по LABEL можно теперь грузить? не? вариант с label был бы даже более предпочтителен чем даже с UUID

I-Love-Microsoft ★★★★★ ()
Ответ на: комментарий от Deleted

Мне так удобственнее :)
Ну, скажем, не на большинстве, но имеются.
Я не люблю инитрд, а с флешки к примеру можно как раз делать сабж, т.е. грузиццо по PARTUUID и иметь вместо MBR на массивах нормальный GPT.

Ну и другие всякие удобства иметь /boot на флешке.
Дома к примеру у меня RAID10 в качестве рут фс, без флешки пришлось бы шаманить или юзать груб2 шаманский :)

В общем на любителя.

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

не, это для тех у кого инфракрасные глаза =))) но за совет большое спасибо, хороший вариант на самом деле

I-Love-Microsoft ★★★★★ ()

У меня кстати и с gpt не получилось по ююйду раздела грузануться, но я сильно не старался и не разбирался, в чём накосячил.

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

там есть особенность что только через gdisk можно получить правильный UUID =) обычный UUID который есть в /dev он для этой штуки неверный...

а вообще это бред, если простейший скриптик из initrd может определять UUID дисков, то почему это нельзя так же изящно запихнуть прямо в ядро?..

I-Love-Microsoft ★★★★★ ()
Ответ на: комментарий от I-Love-Microsoft

> там есть особенность что только через gdisk можно получить правильный UUID =) обычный UUID который есть в /dev он для этой штуки неверный...
в /dev/disk/by-uuid UUIDы файловых систем
а gdisk говорит GUID GPTшных разделов.

Nao ★★★★★ ()
Ответ на: комментарий от I-Love-Microsoft

Я через него и смотрел, так как по другому не знаю как увидеть. Все остальное емнип это ююйды для файловой системы.

Lumi ★★★★★ ()
Ответ на: комментарий от I-Love-Microsoft

Писаки ведра заявили помнится, что раз такая функциональность уже есть в инитрд, то дублировать ее в ядре они не хотят.

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

очень жаль что они забыли про embedded на x86, ведь там применение initrd вообще ненужно, и в то же время диски все равно путаются без него в некоторых случаях

ну хорошо, а embedded на ARM и прочих, я так понимаю данной проблеме не подвержены, ибо метишь в GPT и всё пучком, так?

I-Love-Microsoft ★★★★★ ()
Ответ на: комментарий от I-Love-Microsoft

> ну хорошо, а embedded на ARM и прочих, я так понимаю данной проблеме не подвержены, ибо метишь в GPT и всё пучком, так?
Никто тебе не мешает использовать GPT на x86

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

Никто тебе не мешает использовать GPT на x86

Насколько мне известно, GPT поддерживается биосами не каждой материнской платы... или я что-то упустил? :)

I-Love-Microsoft ★★★★★ ()
Ответ на: комментарий от I-Love-Microsoft

> Насколько мне известно, GPT поддерживается биосами не каждой материнской платы... или я что-то упустил? :)
А зачем тебе поддержка от биоса?
Биос грузит код в нулевом кластере и передаёт ему управление. На этом биос заканчивается.

http://en.wikipedia.org/wiki/GUID_Partition_Table

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

всё, спасибо, вопросов нет =) стало быть светлое будущее уже наступило, а я отстаю... :)

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