LINUX.ORG.RU

установка загрузчика в raw-образ

 ,


0

2
dd if=/dev/zero of=$IMAGE_FILE bs=1M count=128
sudo parted $IMAGE_FILE mktable msdos
sudo parted $IMAGE_FILE mkpart primary 1 110M
sync
partprobe

sudo kpartx -a $IMAGE_FILE
sleep 1
sudo mkfs.ext3 -L "shit" /dev/mapper/loop0p1

sudo mount /dev/mapper/loop0p1 $INSTALL_DIR
sudo chmod 777 $INSTALL_DIR
mkdir $INSTALL_DIR/boot

GRUB=grub-install
sudo $GRUB --boot-directory=$INSTALL_DIR/boot --modules="ext2 part_msdos" /dev/loop0

Так вот, в результате я вижу ошибку grub-install: error: disk `lvm/loop0p1' not found. Это в версии из git, а от Ubuntu там hostdisk/loop0p1 not found.

Но ведь и разделы создаются (что видно по fdisk -l $IMAGE_FILE), и файловая система прекрасно создается и монтируется (что видно по mount).

Неделю-две назад, видимо до обновления системы, всё РАБОТАЛО с (GRUB) 2.02~beta2! Собрал grub даже из git а всё то же самое (там тоже в master 2.02~beta2). Что могло поломать работу? У меня Ubuntu 14.04.3 LTS 64-bit.

★★★★★

Последнее исправление: I-Love-Microsoft (всего исправлений: 1)

Смена ядер 3.13 и 3.19 не влияет на ошибку...

I-Love-Microsoft ★★★★★
() автор топика

Хм... а так работает:

#!/bin/bash

export LANG=C
sudo ls -l /mnt
mount | grep mnt
IMAGE_FILE=test.img
INSTALL_DIR=/mnt
GRUB=grub-install
echo "-----"

dd if=/dev/zero of=$IMAGE_FILE bs=1M count=32
sudo parted $IMAGE_FILE mktable msdos
sudo parted $IMAGE_FILE mkpart primary 1 30M
sync
partprobe

sudo kpartx -a $IMAGE_FILE
sleep 1
sudo mkfs.ext3 -L "test" /dev/mapper/loop0p1

sudo mount /dev/mapper/loop0p1 $INSTALL_DIR
sudo chmod 777 $INSTALL_DIR
mkdir $INSTALL_DIR/boot

sudo $GRUB --boot-directory=$INSTALL_DIR/boot --modules="ext2 part_msdos" /dev/loop0

echo "-----"
sudo umount /dev/mapper/loop0p1
sudo kpartx -d $IMAGE_FILE
sudo ls -l /mnt
mount | grep mnt

I-Love-Microsoft ★★★★★
() автор топика

Никто не ответил, но будь я проклят - оно просто снова заработало без объяснения причин. Видать был какой-то сбой, хотя я все файлы чистил до нуля и перезагружал N раз... Елки палки.

I-Love-Microsoft ★★★★★
() автор топика
Ответ на: комментарий от Hi

Установка GRUB в образ. Вот и вся задача.

Потом внезапно всё сломалось по неведомой мне до сих пор причине, тупо стало вываливаться с «grub-install: error: disk `lvm/loop0p1' not found», пересобирал всё, перезагружал N раз. А потом так же неведомо починилось, опять же я ничего не делал для починки. А установка GRUB в образ мне очень нужна в ежедневной работе...

I-Love-Microsoft ★★★★★
() автор топика
Последнее исправление: I-Love-Microsoft (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.