LINUX.ORG.RU

Установка Manjaro на USB-HDD

 , ,


0

1

Всем доброго времени суток!

После установки дистрибутива Manjaro xfce 17.1.6 на USB-HDD и перезагрузке системы она отказывается грузится.

Грузится граб и после выбора ОС пишет следующее http://images.vfl.ru/ii/1520967832/3335a6ff/20945612.jpg

Пробовал грузиться и с USB 2.0 и c USB 3.0 результат тот же.

Как научить систему видеть жесткий диск по USB и корректно грузиться с него?



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

Ответ на: комментарий от Niroday

Содержимое /etc/fstab у меня такое http://images.vfl.ru/ii/1520976849/2716de26/20946896.jpg

blkid

/dev/sda1: UUID=«215bdccb-f754-45ff-b833-362a61124d6a» TYPE=«ext4» PARTUUID=«59589d6e-01» /dev/sda2: UUID=«4f4bc105-7f84-4125-9224-7b969a7f5562» TYPE=«swap» PARTUUID=«59589d6e-02» /dev/sda3: UUID=«5c58b270-1b8f-4cc0-82e1-16467d1d5cc0» TYPE=«ext4» PARTUUID=«59589d6e-03»

Colgra
() автор топика

Ядро увидит USB диск несколько позже, секунд через 5-25, надо где-то при формировании инитрд запросить доп.задержку.
Где и как это делается в вашем дистрибутиве — не могу знать.

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

Ядро, initrd, dtb и прочий хабар в память читает и запускает загрузчик же своими силами. дальше уже ядро само должно найти все устройства, в том числе и носитель с rootfs.

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

Добавь к параметрам ядра параметр rootdelay=N, где N - количество секунд ожидания.

В Grub выбери пункт для загрузки, нажми клавишу «e», найди строку в которой указаны параметры ядра, там будет что-то вроде «root=UUID=.... splash», допиши в неё через пробел параметр и нажми клавишы для продолжения загрузки, они будут написаны внизу экрана.

Если система загрузится, то отредактируешь /etc/grub/default и обновишь конфиг загрузчика или /boot/grub/grub2.cfg.

Если система не загрузится всё равно - значит в initrd нет модулей для USB контроллера.

kostik87 ★★★★★
()

ТС, тебя грузят какой-то хернёй, просто во время установки системы на usb-диск отключи все другие накопители, тогда никаких путаниц не будет

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

У него и так никакой путаницы нет.
Просто к моменту, когда инитрд проверяет доступность корня, USB-устройство ядром еще не успело проинициализироваться и не видно, о чем ТС-у радостно сообщает то, что там выполняет роль init (читай systemd сам или что-то им запущенное).

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

Если в течение какого-то времени от появления консоли USB-устройства не появятся, то инитрд был собран без поддержки USB, смотрите как это исправить (в Slackware для этого ключик -u, плюс -m со списком модулей, как у вас — смотрите сами).

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

... и -w для задания задержки для инициализации устройств.

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

Посмотри содержимое /proc/modules, если там нет модулей поддержки USB контроллера, то посмотри есть ли они в /lib/modules/версия_ядра/

Если и там нет, то смотри документацию по Arch Linux и разбирайся как пересобрать initrd и добавить в него модули поддержки USB контроллера и добавить их в загрузку.

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

Так же ты можешь попробовать сам распаковать initrd, добавить модули и запаковать его.

Смотри пример вот здесь: загрузочные скрипты в tiny core linux (комментарий)

Помимо копирования файлов модулей в initrd нужно так же скопировать modules.dep и указать имя файла модуля для загрузки в соответствующий файл.

Но в целом всё проще будет сделать согласно документации Arch Linux.

Удачи.

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