LINUX.ORG.RU

Не отображается Шиндовс в grub

 , ,


0

1

После установки arch не появился windows в grub, os prober установил

sudo grub-mkconfig -o /boot/grub/grub.cfg

вводил не помогло

sudo fdisk -l
Disk /dev/sda: 931.5 GiB, 1000204886016 bytes, 1953525168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: dos
Disk identifier: 0x3b06f5a8

Device     Boot     Start        End    Sectors   Size Id Type
/dev/sda1  *         2048    1026047    1024000   500M  7 HPFS/NTFS/exFAT
/dev/sda2         1026048  409602047  408576000 194.8G  7 HPFS/NTFS/exFAT
/dev/sda3       409602048  630171647  220569600 105.2G  5 Extended
/dev/sda4       630171648 1953521071 1323349424   631G  7 HPFS/NTFS/exFAT
/dev/sda5       409604096  417992703    8388608     4G 82 Linux swap / Solaris
/dev/sda6       417994752  630171647  212176896 101.2G 83 Linux

Partition table entries are not in disk order.



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

Boot Repair

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

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

Смотри:

/dev/sda3       409602048  630171647
/dev/sda4       630171648 1953521071
/dev/sda5       409604096  417992703
/dev/sda6       417994752  630171647
записи sda5 и sda6 записаны после sda4, хотя по номерам начального и конечного сектора должны идти перед sda4, т.е. по номерам секторов должны быть разделы sda3, sda5, sda6, sda4.

Ты случаем не использовал Acronis Disk Director или что-нибудь такое?

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

Загрузись с LiveCD какого-нибудь, выполни

fdisk -l 
что бы увидеть таблицу разделов.

А затем запусти fdisk /dev/sda и удали записи о проблемных разделах и потом заново создай разделы в правильной последовательности с темиже номерами начального и конечного сектора и типом файловой системы. Создава в последовательности в зависимости от номера начального и конечного сектора. Нужно пересоздать записи для sda4, sda5, sda6.

При удалении записей в fdisk удаляются именно лишь записи о разделах при создании разделов (записей) с теми же параметрами разделов, что и в выводе что ты поместил на форуме или увидел в выводе fdisk -l всё будет в порядке.

Далее, если в fdisk указаны разделы, а не UUID, то поправь записи.

После этого os-prober заработает.

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

Может ли влиять на это, то что у меня в fstab всего 3 раздела


# /dev/sda6
UUID=db6d1702-a6a3-4880-924c-7fce3f7bcaa4	/         	ext4      	rw,relatime,data=ordered	0 1

# /dev/sda1
UUID=A17B-BED2      	/boot     	vfat      	rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro	0 2

# /dev/sda5
UUID=2a4c897b-8844-4673-9013-0d22758f4ed4	none      	swap      	defaults,pri=-2	0 0

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

И что?

Ты прочитал всё что я написал и посмотрел на номера секторов?

Повторяю ещё раз:

/dev/sda3       409602048  630171647 5 Extended
/dev/sda4       630171648 1953521071 7 HPFS/NTFS/exFAT
/dev/sda5       409604096  417992703 82 Linux swap / Solaris
/dev/sda6       417994752  630171647 83 Linux
У sda4 номер начального сектора 630171648, он больше номеров начальных секторов 409604096, 417994752, разделов sda5 и sda6 соответственно.

В любом случае это неправильно.

Ты использовал Acronis Disk Director? Ну так вот переделай таблицу разделов. С помощью fdisk.

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

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

Даже если бы у тебя в таблице разделов было всего два раздела, допустим основных, 1, 2,

------------------------------------------------
|          part 1      |     part 2            |
------------------------------------------------
затем бы ты уменьшил раздел 1 и создал бы между 1 и 2 разделом ещё один раздел, то новая cхема разделов, а точнее очерёдность записей в таблице разделов должна быть
------------------------------------------------
|   part 1    |   part 2    |    part 3        |
------------------------------------------------
а не
------------------------------------------------
|   part 1    |   part 3    |    part 2        |
------------------------------------------------
Повторяю, исправляй очерёдность записей в таблице разделов, просто удали записи о разделах и создай в правильной последовательности.

Ну и ещё раз спрашиваю, чем ты менял таблицу разделов? Это был Acronis Disk Director? Просто знать что не нужно использовать никогда.

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

Это сделал точно не manjaro Linux, а то средство которым ты редактировал таблицу разделов. Подозреваю, что это был Acronis Disk Director.

Ты можешь ответить на вопрос, это он или нет? И что ты использовал?

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

Я этой штукой ни разу в жизни не пользовался

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

Слушай, прочитай ещё раз ВНИМАТЕЛЬНО что я тебе написал.

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

Удаление и создание записей из таблицы разделов лишь вносит изменения в таблицу разделов.

Данные с дика не удаляются.

Но ИСПОЛЬЗУЙ утилиту fdisk и именно её.

Заодно установи пакет с драйвером ntfs-3g.

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

DMDE что показывает? Есть красные надписи?

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

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

А ты менял свою таблицу чем-то кривым.

Чем вспомнил?

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

Всё это было бы правдой, если бы у него 4-й раздел был расширенным. Но у него расширенный раздел — 3-й, соответственно логические (нумеруются с 5) «внутри» 3-го, и затем уже идёт первичный 4-й.

-----------------------------------------------------------------
|     1 [P]     |     2 [P]     |     3 [E]     |     4 [P]     |
-----------------------------------------------------------------
|               |               | 5 [L] | 6 [L] |               |
-----------------------------------------------------------------
Thetan ★★★
()
Ответ на: комментарий от Thetan

У него сейчас так:

/dev/sda3       409602048  630171647 5 Extended
/dev/sda4       630171648 1953521071 7 HPFS/NTFS/exFAT
/dev/sda5       409604096  417992703 82 Linux swap / Solaris
/dev/sda6       417994752  630171647 83 Linux
А должно быть
/dev/sda3       409602048  630171647 5 Extended
/dev/sda5       409604096  417992703 82 Linux swap / Solaris
/dev/sda6       417994752  630171647 83 Linux
/dev/sda4       630171648 1953521071 7 HPFS/NTFS/exFAT
А в идеале лучше даже так
/dev/sda3       409602048  1953521071 5 Extended
/dev/sda5       409604096  417992703 82 Linux swap / Solaris
/dev/sda6       417994752  630171647 83 Linux
/dev/sda7       630171648 1953521071 7 HPFS/NTFS/exFAT

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

А должно быть

Почему должно?

А в идеале лучше даже так

Ты же понимаешь, что номер первичного раздела не может быть больше 4?

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

Почему должно?

Потому что:

Device     Boot     Start        End    Sectors   Size Id Type
/dev/sda1  *         2048    1026047    1024000   500M  7 HPFS/NTFS/exFAT
/dev/sda2         1026048  409602047  408576000 194.8G  7 HPFS/NTFS/exFAT
/dev/sda3       409602048  630171647  220569600 105.2G  5 Extended
/dev/sda4       630171648 1953521071 1323349424   631G  7 HPFS/NTFS/exFAT
/dev/sda5       409604096  417992703    8388608     4G 82 Linux swap / Solaris
/dev/sda6       417994752  630171647  212176896 101.2G 83 Linux

Partition table entries are not in disk order.

Ты же понимаешь, что номер первичного раздела не может быть больше 4?

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

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

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

Теперь понял. Но зачем же так мучиться? Достаточно ведь просто помнить. И сообщение это скорее просто предупреждение, чем ошибка.

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

Если хочется исправить, то, видимо, придётся на мегабайт сократить 6-й и переделать 4-й в логический.

Thetan ★★★
()

Я сильно сомневаюсь, что проблема в порядке разделов.

А не добавляется — ну добавь вручную или лучше просто снеси винду, ибо зачем тебе она?

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

После установки винды и восстановления граба из livedvd у меня тоже не видна винда (забавно пишется), хоть os-prober и установлен. Загружаюсь в установленный linux, переустанавливаю grub, потом update-grub и тогда только появляется. Винда нужна, на ней много нужного софта, это скорее linux можно снести в принципе.

anonymous
()

ошибки есть после обновления конфига граба? скрытое меню в грабе отключено?

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

Раздел с Виндой примонтировал в /mnt/win os-prober ничего не говорит. Вот вывод с sudo grub-mkconfig -o /boot/grub/grub.cfg

Generating grub configuration file ...
Found linux image: /boot/vmlinuz-linux
Found initrd image: /boot/initramfs-linux.img
Found fallback initrd image(s) in /boot: initramfs-linux-fallback.img
done

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

Я его установил. Создал пункт Windows пареметры запуска

set root='(hd0,msdos1)'
chainloader +1


Мне при выборе Windows в grub выскакивает ошибка, нету загрузочного диска или что на подобии этого
Sorax_Grand
() автор топика
Ответ на: комментарий от Sorax_Grand

grub не умеет грузить Windows напрямую, он умеет лишь вызывать Windows загрузчик, чтобы уже он грузил ядро Windows.

У тебя есть раздел /dev/sda1 размером в 500 Мб, обычно если есть такая разметка, то загрузчик ставится не на раздел с директорией Windows, а на этот 500 мегабайтных раздел.

Поэтому нужно указывать set root на первый раздел, а не второй.

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

Как я могу быть уверен в том, что именно у тебя что-то есть )

Ты же настраивал свою систему. Тебе виднее что ты и как настроил у себя в системе.

Если chainloader не срабатывает, то возможно и нет.

Попробуй руками проверить: в момент работы загрузчика нажми клавишу «c», ну и пробуй вводить команды

set root='(hd0,msdos1)'
chainloader +1
после нажимай ctrl+x, ну или вроде бы можно набрать команду boot. Ну и пробуй со всех разделов.

Если Windows не запустится, то читай как восстанавливать загрузчик Windows.

Тебе понадобится установочный диск, ну либо WinPE для Windows 10.

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

Какой boot раздел? Первый, /dev/sda1?

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

Есть livecd для Windows 10, называется adminpe, вот инструкция: http://adminpe.ru/pehelper_windows-gpt-to-mbr-migrate/

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

Пробуй, там же поищи инструкцию по созданию загрузочной флешки, ну либо запиши iso образ на dvd диск.

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

Не получается восстановить загрузчик. Пишет количество установленых ос Windows 0. Если по другому то диск с windows заблокирован. А если писать в консоли с livecd установочного. bcdboot d:\Windows /s h: /f BIOS Сбой при копировании файлов заагрузки

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

В любом случае, если ты форматировал /dev/sda1 и затёр раздел с загрузчиком, то это уже тема другого форума, поддержки Windows.

Разбирайся как восстановить загрузчик, ну либо переустанавливай Windows.

А потом уже приходи сюда с темой восстановления загрузчика Linux, ну либо найдёшь как восстановить в Internet или переустановишь Linux.

Удачи.

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

Неправильная конфигурация загрузчика.

Вот примерная конфигурация для Linux:

menuentry 'Debian GNU/Linux' --class debian --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-c921ba4b-e5d9-49fc-a5b8-8fc28d37227b' {
        load_video
        gfxmode $linux_gfx_mode
        insmod gzio
        if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
        insmod part_msdos
        insmod lvm
        insmod ext2
        set root='lvmid/rWGjO3-L7u7-8euL-dh9g-fKjs-uQVU-Rmi93V/RdChla-1h84-ItqZ-n2H8-OK6y-rC8V-S0qrzF'
        if [ x$feature_platform_search_hint = xy ]; then
          search --no-floppy --fs-uuid --set=root --hint='lvmid/rWGjO3-L7u7-8euL-dh9g-fKjs-uQVU-Rmi93V/RdChla-1h84-ItqZ-n2H8-OK6y-rC8V-S0qrzF'  8189b8c1-01b8-4af1-b35d-eb3ea5d26e69
        else
          search --no-floppy --fs-uuid --set=root 8189b8c1-01b8-4af1-b35d-eb3ea5d26e69
        fi
        echo    'Загружается Linux 3.16.0-4-686-pae …'
        linux   /vmlinuz-3.16.0-4-686-pae root=/dev/mapper/vg0-root ro  quiet
        echo    'Загружается начальный виртуальный диск …'
        initrd  /initrd.img-3.16.0-4-686-pae
}

Читай в Arch Linux wiki раздел про настройку загрузчика.

https://wiki.archlinux.org/index.php/GRUB

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

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

Строка «you need to load the kernel first» означает, что в конфигурации пункта меню загрузчика для запуска Linux не загружено ядро.

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

В общем, повторяю следуй официальной инструкции по установке загрузчика, ссылку я тебе дал, вот ещё раз: https://wiki.archlinux.org/index.php/GRUB

Для корректной установке загрузчика если /boot находится на отдельном разделе, то в /etc/fstab установленного Arch Linux нужно указать корректный раздел для /boot, далее смонтировать раздел /boot и следую указанной инструкции установить загрузчик и сгенерировать конфиг.

Всё это делается в chroot.

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

За тебя понять что и как правильно делать не получится, тебе придётся самостоятельно понять как нужно сделать правильно следуй инструкции и обдумай что я написал тоже.

Если для тебя всё это сложно, то ставь Linux, который сам создаёт разметку разделов, устанавливает систему, устанавливает загрузчик и делает настройку.

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

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

зачем вот такие авы как у тебя ставить лучшше скажи, сам0му т0 глаз не режыт?

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