Ядро паники с & ldquo; Не удается открыть корневое устройство & rdquo; error, где я могу добавить & ldquo; root = & rdquo; вариант?

Ubuntu использует несколько репозиториев и даже ppa для пакетных программ.

См. https://help.ubuntu.com/community/Repositories/Ubuntu

https: / /help.ubuntu.com/community/Repositories/Ubuntu

Как и при установке, все эти пакеты доступны при запуске live CD / USB. «Проблемы, которые могут возникнуть у вас, - это то, что все, что вы установили, будет потеряно при перезагрузке, и если вы установите много пакетов или обновите их, вы можете потерять место.

Чтобы установить ограниченные дополнительные функции, см.

https://help.ubuntu.com/community/RestrictedFormats

Существует даже ссылка, которую вы просто щелкаете, чтобы установить

Если вы используете обычный, запас Ubuntu : Нажмите здесь, чтобы установить пакет с ограниченными возможностями ubuntu

8
задан 26 February 2012 в 11:48

2 ответа

Вы не предоставили много информации с журналами и так далее, но я предполагаю, что, скорее всего, эта ошибка, с которой вы сталкиваетесь, связана с тем, что ядро ​​запутано с помощью диска IDE / SATA. Выполнение быстрого поиска Google привело меня к ссылке 1, ссылка 2, ссылка 3

Ниже приведена выдержка из ссылки, на которую ссылается одна из ссылок выше:

Скорее всего одна из наиболее часто возникающая проблема (но как только вы ее решили, вы, скорее всего, больше не увидите ее снова):
Unable to mount root fs on unknown-block(0,0)
или
VFS: Cannot open root device "sda3" or unknown-block(8,3)
Please append a correct "root=" boot option; here are the available partitions:
  sda driver: sd
    sda1 sda2
Значения 0,0 или 8,3 могут быть разными в вашем случае - это относится к устройство, к которому ядро ​​пытается получить доступ (и который не работает). Вообще говоря, можно сказать, что если первая цифра равна 0, то ядро ​​не может идентифицировать аппаратное обеспечение. Если это еще одна цифра (например, 8), она не может идентифицировать файловую систему (но имеет доступ к аппаратным средствам). Проблема в том, что загружаемое вами ядро ​​не может перевести параметр root=/dev/..., который вы ему дали (внутри конфигурации загрузчика), в реальную доступную файловую систему. Это может привести к нескольким причинам: в конфигурации ядра отсутствуют драйверы для вашего контроллера жесткого диска (случаи 1, 4, 5), в конфигурации ядра отсутствуют драйверы для шины, используемой вашим контроллером жесткого диска, в конфигурации ядра отсутствуют драйверы для файла система, используемая устройством, неверно идентифицирована в вашем корневом параметре (случаи 2, 3). Решение проблемы легко, если вы знаете, в чем причина. Вы, скорее всего, этого не сделаете, так что быстро проверим. Откройте мастер настройки ядра (команда make menuconfig), чтобы вы могли соответствующим образом обновить конфигурацию ядра. Проверьте, есть ли у вас встроенная (а не в виде модуля) поддержка шины / протокола, которую использует ваш контроллер жесткого диска. Скорее всего, это поддержка PCI, поддержка SATA (которая находится под поддержкой устройства SCSI), ... Проверьте, есть ли у вас встроенная (а не как модуль) поддержка используемого контроллера жесткого диска. Один из самых частых случаев: вы выбрали поддержку вашего протокола жесткого диска (IDE, SATA, SCSI, ...), но забыл выбрать сам драйвер контроллера жесткого диска (например, Intel PIIX). Попробуйте запустить следующую команду lscpi и вставьте ее вывод на http://kmuto.jp/debian/hcl/. Сайт покажет вам, какие драйверы ядра вам нужно выбрать для вашей системы. В меню menuconfig вы можете ввести «/», чтобы открыть функцию поиска, и введите имя драйвера, чтобы узнать, где он находится. # lspci -n Проверьте, есть ли у вас встроенная (а не как модуль) поддержка файловой системы (ов), которую вы используете. Скажем, ваша корневая файловая система использует btrfs (что я определенно не рекомендую), но вы ее не выбрали или не выбрали для ее сборки в качестве модуля, тогда вы получите сообщение об ошибке. Убедитесь, что поддержка файловой системы встроена в ядро. Проверьте, указывает ли параметр ядра для root= на правильный раздел. Это не так глупо, как кажется. Когда вы загружаетесь с одним ядром, он может отображать ваши диски как / dev / sda, тогда как ваше (настроенное) ядро ​​ожидает, что оно будет / dev / hda. Это происходит не потому, что ядра несовместимы друг с другом, а из-за используемых драйверов: более старые драйверы используют синтаксис hda, новый sda. Попробуйте переключить hda с помощью sda (и hdb с sdb и ...). Кроме того, последние ядра дают обзор разделов, найденных на устройстве. Если это так, это может помочь вам определить, был ли вы неправильно выбран раздел (в примере, приведенном в начале этого раздела, найдено только два раздела, тогда как ядру было поручено загрузить третью). Если это не так, это, скорее всего, из-за того, что ядро ​​не знает устройство для начала (поэтому он не может пытаться отображать разделы). Проверьте, является ли ядро, загружаемое загрузчиком, правильным ядром. Я видел людей, которые после создания первого ядра (которое не загружается) забывают, что им нужно смонтировать /boot перед перезаписыванием ядра новым. В результате они копируют ядро ​​в корневую файловую систему (/), тогда как загрузчик по-прежнему ожидает, что образ ядра будет находиться в разделе /boot.
8
ответ дан 25 May 2018 в 17:40
  • 1
    Привет, прошло много времени, но спасибо. У меня был неисправный CD-Rom, и все было хорошо! – lucacerone 13 March 2012 в 23:36

После прочтения этого ответа, который объясняет, что происходит, попробуйте использовать [Boot-Reapir CD] [1] [1]: https://help.ubuntu.com/community/Boot-Repair

Отлично справился с тем, что «устройство неверно идентифицировано в вашем параметре root = (случаи 2, 3)».

0
ответ дан 25 May 2018 в 17:40

Другие вопросы по тегам:

Похожие вопросы: