LINUX.ORG.RU

Как загрузиться с флэшки и попасть на /dev/sda4


0

1

Проблема возникла вследствии того что первый раз при установке Debian на новый ноутбук в ходе попытки объяснить что загрузчик мне не нужен HDD потому что не хотелось затереть Windows Висту, а на флэшке. Подробности не буду рассказывать, вобщем затёр мне этот LILO или GRUB загрузочный сектор на hd0. Если бы ДОС видел HDD вопросов бы не было, но теперь мне никак не подступиться как только из Линукса к контролеру SATA.

Загрузчик я не установил по окончанию установки Debian, но было такое сообщение: ..системный загрузчик не установлен. Вам придётся загружать ядро /vmlinuz вручную с раздела /dev/sda4 и передать ему в качестве аргумента root = /dev/sda4

1.Можно ли загрузиться с флэшки и попасть на /dev/sda4?

2. Может быть с загрузочного диска Debian в ходе установки можно это выполнить как-то правку загрузочного сектора hd0?



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

Допустим переставлю эту Debian. Что дальше делать? Мне надо войти в Висту не переустанавливая. При переустановке винда затрёт Debian и так по кругу.

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

Ну, тогда восстанови виндовый загрузчик потом поставь дебиан по уму и будешь грузиться в обе системы, как тебе такой вариант?

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

Установите в Debian загрузчик grub2 и os-prober, после чего обновите конфигурацию загрузчика, в результате чего будет найдена ваша установленная Windows и вы сможете вызывать загрузчик Windows из grub2 и спокойно запускать windows.

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

Благодарю за помощь, kostik87.

Хотелось бы узнать подробнее о механизме при помощи которого можно: «Вам придётся загружать ядро /vmlinuz вручную с раздела /dev/sda4 и передать ему в качестве аргумента root = /dev/sda4»

Может кто-нибудь подсказать ссылку на подробности сей многоумной процедуры?

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

Хотелось бы узнать подробнее о механизме при помощи которого можно

Вам нужно запустить загрузчик, который умеет грузить Linux. Ставите загрузчик, например на Flash накопитель, после чего пишете конфигурацию для загрузчика. В ней описываете где находится ядро загружаемой системы, в параметрах ядра указываете 'root=/dev/sdXY', где /dev/sdXY - корневой раздел, указываете initrd, загружаетесь.

Но вам опять же не нужно таким способом загружать систему. Достаточно загрузиться с какого-либо LiveCD, затем смонтировать корневую файловую систему, после чего выполнить в неё chroot и установить загрузчик стандартными средствами операционной системы.

Почитайте в Internet про процедуру chroot.

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

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

2. Я так и делаю, загружаюсь с вечно Живого СиДи-рома. В графическом экспертном режиме и смотрю на картину разделов на HDD. Пока упёрся в пробему что в rescue mode не удаётся восстановить метку B на hd0 (очевидно обозначающую что он bootable). Когда выбираю сохранить изменения произведённые над «partion table», установщик возмущается и возвращает меня обратно. Короче: на этом месте я вырубил питание. Такого тупого ответа в эксперном mode я не ожидал. Буду пробовать ещё, уже как установка с нуля с повторным копированием фалов на раздел для установки.

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

Продолжение хождения по мукам

Навтыкал я флэшек в ноутбук во все 3 гнезда и запустил установку снова в графическом экспертном режиме. Картина разделов и устройств такова:

V SCSI1 (0,0,0)(sda) - 500.1GB ATA ST500...

> #1 первичн. 1.0 GB B ntfs

> #2 первичн. 79.1 GB ntfs

> #3 первичн. 217.6 GB ntfs

> #4 первичн. 134.9 GB ntfs

> неиспол. 67.5 GB неиспол.

V SCSI5 (0,0,0)(sdb) - 4.1 GB Jet Flash... 4GB

> #1 первичн. 4.1 GB B

(файловой системы не найдено, хотя там она есть, либо FAT32 либо ext2)

V SCSI6 (0,0,0)(sdc) - 16 GB Kingston DT 101 II

> #1 первичн. 16 GB B fat32 V SCSI8 (0,0,0)(sdc) - 8 GB Kingston DT 101 II

> #1 первичн. 8 GB B fat32

Я сохранил Снимок экрана (есть такая кнопка) в файл /var/log/partman_choose_partiton.0.png Почему-то не предложил сохранить на флэшке. Видимо секретная информация. :)

Как видно из картины, в предыдущем сеансе Debian всё-таки выполнил моё пожелание, пометил загрузочным первый раздел, хотя делал вид что оно игнорируется. Это тот случай когда одна рука не знает что делает другая. Ну и слава богу, посмотрю как это отразилось на возможности загрузки Windows Vista. Сообщу позже.

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

Пока в интернете не нашёл работающего под виндой способа создать загрузочную флэшку для Linux

syslinux только в случае UEFI есть нюансы.

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

Есть такая опция в BIOS (точнее в том урезаном варианте что установил производитель) кажется совмещённая с lagacy, выбирается только приоритет.

Запустил я загрузку с HDD, выдаёт : BOOTMGR is missing Press Ctrl+Alt+Del to restart

Успел всё-таки LILO нагадить больше чем я предполагал.

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

Скачал загрузчик на http://www.xpud.org/download.en.html#tab-2 Большой, тот что для CD Живого диска (64 Mb) , установщик и установил на флэшку. Запустил на ноутбуке. Высыпалась на консольном экране серия сообщений его загрузки и в конце кусор: sh 4.0# Когда я предложил ему загрузиться с /dev/sda4 он ответил Permition denied. Дал я ему комнду exit - не понимает, дал команду die - тоже не берёт. Вот команду halt и hende hoh - sh понял сразу. :)

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

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

Вопрос решён. Помог Acronis_WinPE_Boot_USB_Sergei_Strelec.iso записанный на CD-RW при помощи программы UltraISO. Оказывается файл BOOTMGR лежит на втором диске, там где Vista установлена. Тот раздел я поставил загрузочным и Vista загрузилась. Я почему-то считал что первый скрытый для простого пользователя диск был загрузочным. На всякий случай я скопировал его содержимое на флэшку. Может быть когда-нибудь пригодится.

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

Если по порядку то:

Установка Linux твой Windows не затрет если ты конечно сам не скажешь это сделать. Обычно на этапе разметки диска задается вопрос, что делать с ОС которая нашлась на харде. Если не затирать\форматировать разделы уже существующей ОС, а устанавливать на свободное место, то Linux встанет второй системой, Grub установится на HDD и пропишет все что нужно для загрузки обоих ОС.

Для создания установочных флешек из под Windows можно пользовать universal usb installer или unetbootin

Если хочешь иметь две операционки в рабочем состоянии наиболее простое восстановить Win, установить Debian, при установке Grub загрузчик все пропишет. Второй вариант восстанавливать Grub используя Rescue CD USB носители или Live дистрибьютивы. Один из сходу найденных рецептов восстановления Grub Здесь

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

igroost, спасибо за советы. Буду пробовать. Установил всё как надо, только загрузчик не установил, что допустимо. Как раз интересно создать свой загрузчик который не известно по каким физическим законам должен достать бут сектор находящийся на расстоянии 400 Gb, если конечно не самому не управлять SATA контролёром, загрузив сначала в себя намалую часть kernel. Хотелось бы узнать мнение специалистов по данному вопросу.

Интересное отношение, конечно, самих авторов Debian к юзерам. Казалось бы можно предложить записать загрузчик на флэшку (а не на fd0), тем более что всё у системы есть в распоряжении. Так нет же, пусть мол пользователь помучается сам.

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

поставил бы grub2 на дискету, кнопка 'c', потом такие кнопки: linux /vmlinuz root=/dev/sda4 ro <enter>initrd /initrd.img <enter>boot. Потом в консольке бы grub-install /dev/sda4 под рутом.

Как раз интересно создать свой загрузчик который не известно по каким физическим законам должен достать бут сектор находящийся на расстоянии 400 Gb

Ты всё сделал не так. Гроб надо было ставить на /dev/sda4, нихрена с твоей ыстой не случилось бы. Короче с кривыми руками и ногам нема покоя.

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

дал команду die - тоже не берёт

А что, есть такая команда?

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

Ну так он же при этом снимет флаг bootable с диска C: И опять мне его ставить придётся. Я хочу Linix загружать только с флэшки или с CD-ROMa.

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

Вопрос решён. Помог Acronis_WinPE_Boot_USB_Sergei_Strelec

Самое правильное решение из всех. Теперь этим Акронисом создай архивы систем (с Линуксами он тоже великолепно работает!!!), положи их куда придумаешь (на логдиск D:, на флешку или на DVD-диск) и можешь повышать IQ дальше - теперь можно тупо вернуть все системы назад, в рабочее состояние. Кстати, если собьёшь FAT-таблицу и не увидишь своих разделов на винте-Acronis Expert (в составе сборника) тебе поможет лучше, чем проги типа testdisk

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

Помог Acronis_WinPE_Boot_USB_Sergei_Strelec.iso

Тогда на винфак, чо.

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

zekka
()
Ответ на: Вопрос решён. Помог Acronis_WinPE_Boot_USB_Sergei_Strelec от albyts

Да, albyts, он помог потому что я нашёл вашу статью и сайт где описаны его необыкновенно целительные свойства. Придумано здорово. Для ремонта системы самое то. Дан .iso файл и программа для клонирования. Этого достаточно для людей не обременённых повышенным IQ или ЧСВ.

К сожалению, никто ничего другого кроме общих и абстрактных советов не смог дать. У меня нет под рукой Линукса работающего, где бы можно было тренироваться стучать по клавишам чтобы создать загрузочный девайс. Многие опубликованные в интернете примеры сырые и малопригодны для повторения применительно к современному железу и пользователю не знакомому с языком изъяснения командами Линукс.

Надеюсь что найдутся люди с повышенным IQ которые восполнят этот пробел. :)

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

Я использую 2 простых способа создания загрузочной флешки с Linux в Windows:

  • Запись гибридного ISO, а у основных дистрибутивов они все такие года 2 уже, на флешку с помощью Win32 Disk Imager. Только нужно убрать фильтр файлов по расширению *.img при выборе файла для записи. Либо сменить расширение образа ISO -> IMG. Но есть один нюанс: меняется таблица разделов на флешке, её потом нужно будет сменить обратно для обычного использования.
  • Есть ещё более простой для новичков способ - LiLi, он даже сам образ скачивать умеет. Он не меняет разметку флешки, только форматирует её в FAT32.
yurikoles ★★★
()
Последнее исправление: yurikoles (всего исправлений: 1)
Ответ на: комментарий от yurikoles

Win32 Disk Imager - это тоже хорошо, надо опробовать. Дело не в том что нечем писать, нет объяснения что именно писать, какие файлы и что должно запускаться из загрузочной записи. В этом смысле полезная программа UltraISO, ею можно открыть диск (если его лейбл не на русском, иначе валится), сохранить его образ на свой жёсткий диск или даже на флэшку, потом записать его на чистую CD-DVD болванку. И подобного рода програм сейчас много. Отформатировать как загрузочный тоже есть варианты, их поменьше но они есть. Можно даже вручную в WinHex первый сектор логического диска записать если есть откуда содрать. И этого добра хватает, я так и делаю после того как например Винда затрёт мой досовский заргузчик на флэшке на свою в ходе установки. В принципе, зная что должно быть на загрузочном диске, можно вручную накидать туда файлов и всё будет работать. Это если достаточно файловой системы FAT32. Надо попробовать поэкспериментировать. И в зависимости от результата делать дальнейшие выводы.

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

В последнее время я часто сталкиваюсь с затиранием MBR. Как чинить его в Windows XP: загрузиться с установочного диска, консоль восстановления, fixboot, fixmbr. Как чинить его в Windows 7: загрузиться с диска восстановления, и программа предложит «просто почини это и перезагрузись». Как чинить это в Linux с GRUB. Загружаешься с LiveCD, пишешь «su» и «grub» (в линуксах с настроенным sudo - «sudo grub»), и пишешь:

grub> find /boot/grub/stage2
(hd0,1)
grub> root (hd0,1)
grub> setup (hd0)
grub> quit

И выходишь из консоли администратора командой exit (если в системе не настроен sudo).

Как чинить Linux с GRUB2. Загружаешься с LiveCD и выполняешь от администратора:

mkdir /mnt/1
mount -t /dev/sda2 /mnt/1

Это было подключение жёсткого диска. Устройство «sda2» заменить на нужное. Если диск уже примонтирован в /media/disk или /run/media/livesession/disk, то можно в следующей команде просто использовать этот каталог вместо /mnt/1.

mount -t proc none /mnt/1/proc
mount -t sysfs sys /mnt/1/sys
mount -o bind /dev /mnt/1/dev
chroot /mnt/1 /bin/bash

Если тут последовало «нет прав для выполнения исполняемых файлов», то отключай /run/media/livesession/disk и подключай вручную в /mnt/1. Причина в параметре noexec.

chroot> grub-install
bash: grub-install: command not found
chroot> grub2-install

Одна из этих команд должна сработать. После этого exit и или перезагрузка сразу, или:

umount /mnt/1/dev
umount /mnt/1/sys
umount /mnt/1/proc
umount /mnt/1

Не забывай использовать функции «копировать/вставить» и автодополнение команд и имён файлов по клавише Tab. Вот собственно и всё. Да, это страшная консоль, но работает.

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

Как вообще отказаться от правки загрузочного сектора отрихтованного Windows на жёстком диске? А вот как:

Grub2 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Grub2Win is a tool that lets you boot grub2 from Windows. It supports booting grub2 directly from Windows 8, Windows 7, XP, 2000 and Vista. Download this simple set of scripts and instructions that allow you to get grub2 booting quickly.

All the files for Grub2Win reside on the Windows C: drive so you don't have to depend on the availability of any Linux partition to boot your computer. The Windows MBR is not touched so multiboot of Windows and Linux can be accomplished safely.

Grub2 supports extremely large disks (over 4 TB) and GPT partitions allowing you to have many OS images on a single physical disk drive. Grub2 also supports search, advanced scripting and many partition types. Supported filesystems include Btrfs, ext4, ext3, ext2, NTFS, Fat and Mac hfsplus. Booting from CD and USB is also supported by grub2.

Grub2Win boot is controlled by native BCD in Windows 8, Windows 7, Windows 2008 Server and Vista. In Windows XP and 2000 it is controlled by ntldr and boot.ini.

Help and messages can be displayed in 23 major languages. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ из readme.txt http://sourceforge.net/projects/grub2win/files/

Осталось только налить и выпить?

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

В моём дистрибутиве 2-х летней давности Grub2 ещё не было.

Тем не менее, загрузчик от Ubuntu Grub2 я установил из виндовса и он работает. Несмотря на то что загрузчик при установке Debian я не ставил. И правильно сделал. Grub2 вышел на указанный раздел диска и после довольно продолжительной операции сканирования и доводки система загрузилась. Если остался лог загрузки и я его найду, будет интересно на него посмотреть.

Ещё ранее я просмотрел состояние файлов загрузив LiveCD Edubuntu 11. Хотел убедиться что файл vmlinuz лежит в корневой директории. Лежит, но не сам файл, лежит ярлык на него, а сам файл имеет в имени ещё номер версии и лежит в другой папке.

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