<div dir="ltr">Hello Hao,<br><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Jul 13, 2017 at 4:39 AM, Hao Lee <span dir="ltr">&lt;<a href="mailto:haolee.swjtu@gmail.com" target="_blank">haolee.swjtu@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hi,<br>
<br>
I encounter a problem when making a bootable disk image because GRUB<br>
always enters a<br>
rescue shell.<br>
<br>
I want to create a disk image and install GRUB 2 on it and then use<br>
Bochs to run it. The steps are as follows.<br>
<br>
System Environment:<br>
OS: Fedora 25 x86<br>
GRUB version: grub2-install (GRUB) 2.02~beta3<br>
Bochs version: 2.6.9<br>
<br>
1. Create a empty disk image.<br>
<br>
dd if=/dev/zero of=hd.img bs=$((16*63*512)) count=100<br>
<br>
2. Create a primary partition.<br>
<br>
fdisk -u -C100 -S63 -H16 hd.img<br>
<br>
The partition  table is:<br>
Device     Boot Start    End Sectors  Size Id Type<br>
hd.img1          2048 100799   98752 48.2M 83 Linux<br>
<br></blockquote><div><br></div><div>Hint: when you run: /usr/bin/file hd.img what do you see ? </div><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
3. Attach the whole image to /dev/loop0 and attach the first partition<br>
to /dev/loop1<br>
<br>
sudo losetup /dev/loop0 hd.img<br>
sudo losetup -o $((2048*512)) /dev/loop1 hd.img<br>
<br>
4. Format the first partition to ext4 and mount it to /mnt/<br>
<br>
sudo mkfs.ext4 /dev/loop1<br>
sudo mount -t ext4 /dev/loop1 /mnt<br>
<br>
5. Create GRUB directory.<br>
<br>
sudo mkdir -p /mnt/boot/grub2<br>
<br>
6. Install GRUB 2<br>
<br>
sudo grub2-install --boot-directory=/mnt/boot /dev/loop0<br></blockquote><div><br></div><div><br></div><div>2nd hint: ask yourself does the grub *core.img&quot; have the required module built-in by default ? </div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
7. Start Bochs.<br>
<br>
bochs -f test.bxrc<br>
<br>
These steps are straight and simple. However, GRUB always enters a<br>
rescue shell instead of entering normal mode.<br>
When I use the set and ls command to show more information, I can only<br>
see (hd0) and the first partition (hd0,1) is disappeared. The screen<br>
output is as follows:<br>
------------------------------<wbr>----------------------<br>
Bochs BIOS - build: 02/16/17<br>
ata0 master: Generic 1234 ATA-6 Hard-Disk (  49 MBytes)<br>
Press F12 for boot menu.<br>
Booting from Hard Disk...<br>
.<br>
error: no such device: c5b2c483-70c2-4212-840b-<wbr>da5f965d0555.<br>
error: unknown filesystem.<br>
Entering rescue mode...<br>
grub rescue&gt; set<br>
prefix=(hd0)/boot/grub2<br>
root=hd0<br>
grub rescue&gt; ls<br>
(hd0)<br>
grub rescue&gt;<br>
------------------------------<wbr>----------------------<br>
<br>
Could someone help me out? Many thanks!<br></blockquote><div><br></div><div>Yes *someone* can and will help you. Please watch till the very end. You will not be disappointed :)</div><div><br></div><div><a href="https://youtu.be/6oqTu8utMe4">https://youtu.be/6oqTu8utMe4</a><br></div><div><br></div><div>Good luck and hope this helps - Aruna</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
Regards,<br>
Hao Lee<br>
<br>
______________________________<wbr>_________________<br>
Kernelnewbies mailing list<br>
<a href="mailto:Kernelnewbies@kernelnewbies.org">Kernelnewbies@kernelnewbies.<wbr>org</a><br>
<a href="https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies" rel="noreferrer" target="_blank">https://lists.kernelnewbies.<wbr>org/mailman/listinfo/<wbr>kernelnewbies</a><br>
</blockquote></div><br></div></div>