davidcallanan / os-series

803 stars 118 forks source link

Problem with boot loader #72

Open HesamGit opened 1 year ago

HesamGit commented 1 year ago

I use WSL2 to use docker and the build runs without any error message. However, I cannot load the final iso file since qemu cannot find the boot sector. I checked the hexdump of kernel.bin and it does not contain '55 aa' in whole file as against a simple boot loader. I also added -nographic since WSL2 does not have gui.

If I run qemu with cdrom (sudo qemu-system-x86_64 -cdrom kernel.iso -nographic):

Booting from Hard Disk...
Boot failed: not a bootable disk
Booting from Floppy...
Boot failed: could not read the boot disk
SeaBIOS (version 1.13.0-1ubuntu1.1)  
iPXE (http://ipxe.org) 00:03.0 CA00 PCI2.10 PnP PMM+07F8CA10+07ECCA10 CA00
Booting from Hard Disk...
Boot failed: could not read the boot disk
Booting from Floppy...
Boot failed: could not read the boot disk
Booting from DVD/CD...

If I run directly binary with qemu (sudo qemu-system-x86_64 kernel.bin -nographic):

Booting from Floppy...
Boot failed: could not read the boot disk
Booting from DVD/CD...
Boot failed: Could not read from CDROM (code 0003)
Booting from ROM...
iPXE (PCI 00:03.0) starting execution...ok
iPXE initialising devices...ok
iPXE 1.0.0+git-20190109.133f4c4-0ubuntu3.2 -- Open Source Network Boot Firmware 
-- http://ipxe.org
Features: DNS HTTP HTTPS iSCSI NFS TFTP AoE ELF MBOOT PXE bzImage Menu PXEXT
net0: 52:54:00:12:34:56 using 82540em on 0000:00:03.0 (open)
  [Link:up, TX:0 TXE:0 RX:0 RXE:0]
Configuring (net0 52:54:00:12:34:56)...... ok
net0: 10.0.2.15/255.255.255.0 gw 10.0.2.2
net0: fec0::5054:ff:fe12:3456/64 gw fe80::2
net0: fe80::5054:ff:fe12:3456/64
Nothing to boot: No such file or directory (http://ipxe.org/2d03e13b)
No more network devices
No bootable device.
GrooverMD commented 1 year ago

Use Oracle VM Virtualbox. Much easier then Qemu. Machine->New. Give it a name, default settings. Under Machine->Settings point the Storage->Optical Drive to your built ISO. Happy days.

Andrej123456789 commented 1 year ago

Just because something has GUI that doesn't mean we need to use it. Qemu on native GNU/Linux is way more faster than VirtualBox + probably he/she made mistake setting Qemu or Makefile or some other mistake