LINUX.ORG.RU

Не могу сделать флешку загрузочной

 ,


0

1

Хочется установить обычный линукс на флешку, как на жесткий диск, чтобы вставил-поработал-вынул-ушёл. Не live-usb а именно полноценную систему. При установке указываю флешку, вроде всё проходит нормально, но в конце, когда пытается установиться grub, выдает: Error 21: «Selected disk doesn't exist» Я правильно понимаю, что эта флешка не может стать загрузочной по железным причинам и мне нужно покупать другую флешку? Или есть какой-то способ, которым можно заставить её загрузиться?

opensuse 12.2

делал так:

mount /dev/sde1 /mnt/
linux:/home/linux # chroot /mnt/
bash: install-grub: command not found
linux:/> grub-install


    GNU GRUB  version 0.97  (640K lower / 3072K upper memory)

 [ Minimal BASH-like line editing is supported.  For the first word, TAB
   lists possible command completions.  Anywhere else TAB lists the possible
   completions of a device/filename. ]
grub> setup --stage2=/boot/grub/stage2 --force-lba (hd1,0) (hd1,0) 
Error 21: Selected disk does not exist

device.map:

(hd2)	/dev/disk/by-id/usb-JetFlash_Transcend_4GB_52WDLFVB20E5SYWL-0:0
(hd1)	/dev/disk/by-id/ata-WDC_WD5000AAKS-00E4A0_WD-WCATR8012194
(hd3)	/dev/disk/by-id/usb--Pretec_08GB_042139e342302f-0:0
(hd0)	/dev/disk/by-id/ata-WDC_WD2500KS-00MJB0_WD-WCANKE829049
(hd4)	/dev/disk/by-id/usb-Generic_Flash_Disk_54D33C72-0:0

★★★★★

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

Забыли указать дистрибутив, его версию, версию GRUB и полный лог установки GRUB. device.map также не помешает.

AITap ★★★★★
()

если есть уже готовая система можно сделать её образ с оффтопа и затем распаковать на флешку
загрузиться с основы и поправить grub

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

grub> setup --stage2=/boot/grub/stage2 --force-lba (hd1,0) (hd1,0)
Error 21: Selected disk does not exist

Сделайте флешку (hd0) в device.map и ставьте GRUB на (hd0).

AITap ★★★★★
()
Ответ на: комментарий от AITap
# grub-install /dev/sde1
WARNING! You are trying to invoke the unsupported grub-install script
with a parameter. To really do this, call grub-install.unsupported.
You should rather call "yast2 bootloader" or create configuration files
appropriate for the intended target.
# grub-install.unsupported /dev/sde1
/dev/sde1 does not have any corresponding BIOS drive.
Pyzia ★★★★★
() автор топика
Ответ на: комментарий от Pyzia

sdX, а не sdXY. Ставить загрузчик нужно в MBR флешки, а не на раздел. Вы прописали предварительно в device.map, что (hd0) - это /dev/sde?

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

Спасибо за нестандартное решение, но подозреваю, что «поправить» груб я буду не в состоянии, если даже с нуля не могу его поставить. Хотя, если вы раскажете подробнее, как это сделать...

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

если linux уже установлен на флешке то
загрузить свой установленный linux дистрибутив или live-cd/usb и из терминала по очереди выполнить:

sudo -s 
mount /dev/sde1 /mnt/
mount --bind /dev /mnt/dev
mount --bind /proc /mnt/proc
mount --bind /sys /mnt/sys
chroot /mnt bash
grub-install /dev/sde
grub-mkconfig -o /boot/grub/grub.cfg
перезагрузиться и выбрать в биосе загрузку с флешки
всё должно взлететь
если нет - то писать сюда на чём остановились и дальше чего не идёт )

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

Получилось, только вместо grub-install /dev/sde прописал просто grub-install, т.к. grub-install /dev/sde выдавал то же самое, что тут В итоге выдало такое:

GNU GRUB  version 0.97  (640K lower / 3072K upper memory)

 [ Minimal BASH-like line editing is supported.  For the first word, TAB
   lists possible command completions.  Anywhere else TAB lists the possible
   completions of a device/filename. ]
grub> setup --stage2=/boot/grub/stage2 --force-lba (hd0) (hd0,0)
 Checking if "/boot/grub/stage1" exists... yes
 Checking if "/boot/grub/stage2" exists... yes
 Checking if "/boot/grub/e2fs_stage1_5" exists... yes
 Running "embed /boot/grub/e2fs_stage1_5 (hd0)"...  17 sectors are embedded.
succeeded
 Running "install --force-lba --stage2=/boot/grub/stage2 /boot/grub/stage1 (hd0) (hd0)1+17 p (hd0,0)/boot/grub/stage2 /boot/grub/menu.lst"... succeeded
Done.
grub> setup --stage2=/boot/grub/stage2 --force-lba (hd0,0) (hd0,0)
 Checking if "/boot/grub/stage1" exists... yes
 Checking if "/boot/grub/stage2" exists... yes
 Checking if "/boot/grub/e2fs_stage1_5" exists... yes
 Running "embed /boot/grub/e2fs_stage1_5 (hd0,0)"... failed (this is not fatal)
 Running "embed /boot/grub/e2fs_stage1_5 (hd0,0)"... failed (this is not fatal)
 Running "install --force-lba --stage2=/boot/grub/stage2 /boot/grub/stage1 (hd0,0) /boot/grub/stage2 p /boot/grub/menu.lst "... succeeded
Done.
grub> quit
grub-mkconfig вообще такой команды он не знает, после перезагрузки выдает: (hd1,0)/boot/message: file not found и Продолжает грузиться, в итоге застрял на таком:

udevd[108]: '/sbin/modprobe -bv pci:v{много нулей, букв, цифр}' [113] terminated by signal 9 (killed)
mount:devpts already mounted or /dev/pts busy
mount:according to mtab, devpts is already mounted on /dev/pts
Boot logging started on /dev/tty1 at .......
resume device not found (ignoring)
Waiting for device /dev/sdc1 to appear:.....Could not find /dev/sdc1.
Pyzia ★★★★★
() автор топика
Ответ на: комментарий от Pyzia

GNU GRUB version 0.97

там есть GRUB2 ?
Я делал образ уже установленного на винт арча, развернул на флешку поправил груб и всё - оно завелось
найти GRUB2 и ставить его - там много чего подпилили и добавили много новых возможностей

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

Ок, попробу впаять второй

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

Установка второго груба решила проблему окончательно, всем спасибо!

Pyzia ★★★★★
() автор топика
28 октября 2013 г.
Ответ на: комментарий от Pyzia

Достали. Трекер в какашку, уведомления... Щас в лор пойду буянить!

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