Devicemap file ошибка

The device map file /boot/grub/device.map is in this format:

(disk) /dev/device

So, for example, on a system with a floppy and a single SCSI disk, the file would
look like this:

(fd0) /dev/fd0
(hd0) /dev/sda

I try to display its content :

cat /boot/grub/device.map 

I get this error: No such file or directory

Is it renamed or it is a new hierarchy of Linux system?

Что и почему получилось — вполне понятно, ссылки выше уже давал.
Главная ошибка — необходимо было предварительно преобразовать динамический (Dynamic) диск в базовый (Basic) в терминологии Windows.

Без этого у вас получилось примерно следующее.
1) В MBR была запись о единственном первичном (primary) разделе с типом 0x42 и размером на весь диск; в последнем МБ этого раздела лежала реальная LDM-таблица разделов этого диска;

2) После

Acronis Disk Director и с помощью него отрезал 400 с лишним ГБ от дисков C и D.

возникает вопрос, действительно ли он умеет работать с LDM и что получилось при отрезании:
а) умеет, изменены (1) размеры ФС «дисков» C: и D:, (2) границы разделов внутри LDM, (3) границы внешнего контейнера в MBR;
б) не умеет, изменены размеры только внешнего контейнера.
Почему-то кажется, что у варианта (б) больше шансов :(, ведь динамический диск не может содержать дополнительных разделов внутри MBR и/или GPT… Но это мои домыслы, тут нужно исследовать вопрос по версии ADD, его документации, а при тишине в ней на эту тему — путем натурного эксперимента.

3) После создания разделов и установки Linux то, что получилось, могло выглядеть как-то так:

Было: (сверху данные MBR, снизу — LDM)

v----------------- раздел 4 тип 0x42 ---------------v
=====================================================
^-- диск C: тип 7 --^ ^---- диск D: тип 7 ----^ ^LDM^

Стало (если была поддержка):

v~~~ расш. sda1 ~~~v
v sda 5, 6, 7, 8 v v----- раздел 4 тип 0x42 ------v
=====================================================
^-диск C:-^ ^--диск D:---^ ^LDM^

Стало (если не было поддержки):

v--- расш. sda1 ---v
v sda 5, 6, 7, 8 v v----- раздел 4 тип 0x42 ------v
=====================================================
^-- диск C: тип 7 --^ ^---- диск D: тип 7 ----^ ^LDM^

На картинке оптимистичный вариант, когда «диск D:» не был затерт, но это не гарантировано.

Вон там: http://www.glazavezde.ru/nastroyka-programm-v-korporativnyh-setyah/tonkosti-n… пишут, что ADD 11 знает про динамические диски.

4) Если не было ценных данных, или есть их резервная копия, переразметьте и переставьте обе системы.
Если были — самое время озаботиться вопросом, 1) целы ли они и 2) куда переписать то, что еще не убито.

5) Если поддержка все же была, преобразование в Basic диск в том же ADD должно помочь, если он сможет оставить и MBR, и LDM разделы в MBR варианте.

bormant ★★★★★

(04.01.18 20:02:16 MSK)



Последнее исправление: bormant 04.01.18 20:07:35 MSK
(всего

исправлений: 3)

  • Показать ответ
  • Ссылка
  • Index
  • » Newbie Corner
  • » [SOLVED] Grub-customizer doesn’t start and can’t edit grub menu

Pages: 1

#1 2018-11-30 16:12:32

gunjah292
Member
From: Hamburg
Registered: 2011-05-05
Posts: 186

[SOLVED] Grub-customizer doesn’t start and can’t edit grub menu

It is not really a problem, but I want to get rid of it. I did some customizing of the menu with grub-customizer some time ago. I now uninstalled all of the additional kernels and want a standard grub. Unfortunately I can’t edit grub via grub customizer anymore, because it doesn’t start. I get the following error.

https://i.ibb.co/98C65M6/Auswahl-046.png

I found the DEVICEMAP_FILE but coudln’t find the MKDEVICEMAP_CMD, so I tried to update grub manually. I deleted all the unused config files from /etc/grub.d and hit grub-mkconfig, but the menu entries don’t change. It even shows menu entries from kernels and operating systems that don’t exist on the harddrive anymore.

I am really at my wit’s end here.

Mod note: Replaced oversized images — V1del

Last edited by V1del (2018-11-30 16:33:01)


KDE Plasma, ThinkPad X380 Yoga, Intel Core i7-8550U, Intel UHD Graphics 620, 512GB PCIe-NVMe SSD (OPAL 2.0), 16GB PC4-19200 (2400 MHz)

#2 2018-11-30 16:14:53

eschwartz
Fellow
Registered: 2014-08-08
Posts: 4,097

Re: [SOLVED] Grub-customizer doesn’t start and can’t edit grub menu

Yeah, that’s useless without English. https://wiki.archlinux.org/index.php/Co … s_and_code

Also useless without a clarification of what you mean by «and hit grub-mkconfig». Do you mean you took a hammer to the sector of the hard drive on which the file named grub-mkconfig is stored? Do you mean you ran a command that included, but was not exclusive to, «grub-mkconfig», but which you have failed to elaborate upon? If so, did you *also* neglect to provide the output?

Last edited by eschwartz (2018-11-30 16:16:59)


Managing AUR repos The Right Way — aurpublish (now a standalone tool)

#3 2018-11-30 16:19:45

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 19,301

Re: [SOLVED] Grub-customizer doesn’t start and can’t edit grub menu

Please post only thumbnails or links to images. https://wiki.archlinux.org/index.php/Co … s_and_code

These kinds of issues usually happen if your GRUB isn’t the one being controlled by Arch, reinstall GRUB from within Arch and make sure that your paths aren’t mixed up, is /boot a separate partition? FWIW it looks like you have an EFI partition at /dev/sda2 but are trying to fumble with a (BIOS?) installed GRUB on /dev/sda5 ? Which is it that you are booting from your UEFI what’s your output for

lsblk -f
sudo efibootmgr -v
tree /boot #Requires the tree package

Last edited by V1del (2018-11-30 16:20:50)

#4 2018-11-30 16:31:41

gunjah292
Member
From: Hamburg
Registered: 2011-05-05
Posts: 186

Re: [SOLVED] Grub-customizer doesn’t start and can’t edit grub menu

Sorry for the German picture. I now solved the issue by deleting the whole content of /etc/grub.d/ and reinstalling grub.


KDE Plasma, ThinkPad X380 Yoga, Intel Core i7-8550U, Intel UHD Graphics 620, 512GB PCIe-NVMe SSD (OPAL 2.0), 16GB PC4-19200 (2400 MHz)

Нередко возникает необходимость в установке двух принципиально разных операционных систем на один компьютер: Windows и Linux. Разумеется, подобное «соседство» будет связано с некоторыми неудобствами. Для установки, как правило, используют специальную программу GRUB. Но к сожалению, при её использовании можно столкнуться с рядом ошибок. В этой статье разберёмся с тем, как исправить ошибки загрузчика GRUB. Давайте же начнём. Поехали!

Исправление ошибок GRUB

Для начала давайте определимся с тем, что из себя представляет эта программа. GRUB — представляет собой системный загрузчик, устанавливающийся непосредственно с Линукса и записывающий все данные на первый раздел диска (MBR).

Сам rescue mode является отличительной чертой GRUB 2 от его предыдущей версии. Этот режим запускается, если программе-загрузчику не удалось найти файл «grub.cfg» либо не удалось передать управление в kernel (ядро). В итоге не удаётся найти загрузочные файлы и запустить операционную систему. Именно тогда и возникает ошибка.

Ошибка: Unknown Filesystem

Следуйте инструкциям ниже, чтобы узнать, как решить проблему с GRUB

Способ 1

Что делать в случае ошибки unknown filesystem grub-rescue? Перед вами окно, в котором можно использовать только 4 команды, их вполне достаточно, чтобы исправить все проблемы и успешно загрузиться:

  • ls — позволяет вывести всё содержимое;
  • set — применяется для установки переменных;
  • unset — очищает переменную;
  • insmod — необходима для загрузки модулей.

Также можно сделать доступным ряд других команд. Сделать их доступными можно, загрузив модуль «normal». Для этого пропишите:

insmod normal

После этого станут доступны:

  • dump — для очистки памяти;
  • exit — команда выхода из загрузчика;
  • chainloader — необходима, чтобы указать последующей команде boot передать управление цепочечному загрузчику;
  • kfreebsd — несколько команд, позволяющих загрузить ядро FreeBSD, его модули;
  • rmmod — позволяет выгрузить указанный модуль ядра;
  • multiboot.

Первым делом нужно отыскать модули, чтобы загрузить их. Для этого введите:

ls

Результатом выполнения команды будет следующее:

(hd0) (hd0,msdos3) (hd0,msdos2) (hd0,msdos1) (hd1) (hd1,msdos2) (hd1,msdos1)

Из этого можно сделать вывод, что загрузчик не может определить файловые системы дисков, поэтому определяет их как msdos. Теперь необходимо угадать видимые диски. В конкретном примере перед вами два диска: hd0 (с тремя разделами) и hd1 (с двумя разделами). Допустим, вы знаете, что Linux инсталлирован на диск, который имеет три раздела. В таком случае вам нужен диск с индексом «0».

GRUB даёт названия разделам в обратном порядке. В связи с этим, неясно как трактовать запись: «(hd0,msdos3)». Ведь можно посчитать это как первым разделом, так и третьим. К счастью, из этой ситуации можно выйти при помощи такого синтаксиса команды: «(hd0,1)». Обратите внимание, что в программе-загрузчике GRUB отсчёт дисков идёт с 0, а разделов с 1.

Допустим, что Линукс хранится в первом разделе, тогда он будет обозначаться (hd0,1). В этом случае команда, которую необходимо прописать, будет иметь вид:

set prefix=(hd0,1)/boot/grub
set root=(hd0,1)

Теперь модули могут быть загружены. Использовать их можно только после загрузки.

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

ls /boot/grub

В результате выполнения на экране появится список md файлов.

Далее, пропишите:

insmod ext2
insmod normal
normal

После этого загрузчик будет переведён в режим полной функциональности. Затем автоматически будут найдены разделы с операционной системой, и откроется меню программы.

Теперь остаётся загрузить Linux. Делается это при помощи команды:

grub-install /dev/sda

Ноутбук с ОС Linux

Способ 2

Всё сильно упрощается, если использовать Live CD – загрузочный диск с системой Linux. Он может быть записан на флешке, на внешнем винчестере или на обычном диске – это неважно, главное, чтобы с него можно было загрузить компьютер.

После загрузки Linux стандартным способом устанавливается бесплатная утилита Boot Repair. Она предназначена именно для устранения ошибок загрузки с помощью загрузчика Grub и очень проста в использовании – достаточно кликнуть по кнопке.

Заметим, что иметь Live CD для линуксоида всегда полезно и даже необходимо. Это зачастую избавляет от множества проблем, так как позволяет загрузить полноценную систему с внешнего носителя и использовать весь её инструментарий. Скачать такой диск с любой версией Linux не представляет сложностей, в комплекте обычно идёт инструкция по записи его на флешку.

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

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

Загрузчик я оставляю Убунтовский, GRUB2.

Подключил диск, установил вроде бы Arch, зашел в Ubuntu, делаю

update-grub

и вижу

grub-probe: error: Cannot find a GRUB drive for /dev/sdb1.  Check your device.map.

и еще несколько похожих ошибок, отличающихся только цифрами.

Гугл подсказал, что, после добавления нового диска, надо обновить файл /boot/grub/device.map. Делается это так:

sudo grub-mkdevicemap --no-floppy

или без --no-floppy если вы используете дисковод.

Понравилась статья? Поделить с друзьями:
  • Device harddiskvolume2 ошибка
  • Deviantart ошибка 403
  • Devenv exe visual studio ошибка
  • Developer error standoff 2 читы как исправить ошибку
  • Devamd64 exe ошибка