.iso erstellen aus zwei .bin Dateien

Hi,

ich hab ein minimalistisches Betriebsystem in Assembler geschrieben (Kann nur paar Befehle wiedergeben) und das in 2 Dateien gepackt -> kernel.asm und boot.asm und folgendermaßen „kompiliert“ -> nasm -f bin -o kernel.bin kernel.asm und das gleiche mit der boot.asm, dann habe ich einmal: cat boot.bin kernel.bin > pro.img probiert und dass gleiche nochmal mit pro.iso.

Ein weiterer Versuch war -> ccd2iso pro.img pro.iso , da kam die Fehlermeldung Sector grösse muss 2352 sein (ist aber 581)

Da ich das Image auch nicht mounten kann hilft auch kein -> sudo dd if=/dev/sr1 of=Image.iso ,als Beispiel.

Ich wollte das Betriebsystem erstmal in der VirtualBox testen, bevor ich damit weiter mache.

Wie krieg ich mein Betriebsystem zum laufen, oder wo lag der Fehler bei der obrigen Vorgehensweise???

Gruß

Hallo 3quin0x,

cat boot.bin
kernel.bin > pro.img probiert und dass gleiche nochmal mit
pro.iso.

Der normale Weg, um eine iso-Datei zu erstellen, ist eigentlich mkisofs bzw. genisoimage
http://linuxwiki.de/mkisofs
http://wiki.ubuntuusers.de/genisoimage
und natürlich
man mkisofs

Wenn dein Mini-Betriebssystem noch nicht richtig läuft, hilft dir das aber auch nicht :wink:

Viele Grüße
Marvin

Hi Marvin,

danke für deine Antwort, die iso wird jetzt zumindest von VirtualBox auch als solche erkannt. Bloss das booten klappt noch nicht. Aber ich glaube den Fehler gefunden zu haben. Ich bräuchte ein FloppyImage…war meine Vorgehensweise mit cat, zur Erstellung eines Images korrekt? Weil VirtualBox es nicht als FloppyImage erkannt hat?

Gruß, 3quin0x

Hallo 3quin0x,

Bloss das booten klappt
noch nicht.
bräuchte ein FloppyImage

Ja, und ISOLINUX kann dir dabei helfen:
http://syslinux.zytor.com/wiki/index.php/ISOLINUX
Wenn gar nichts geht, kannst Du es ja auch mit dem dort schon erwähnten Smart BootManager versuchen:
http://btmgr.sourceforge.net/

…war meine Vorgehensweise mit cat,
zur Erstellung eines Images korrekt?

naja, dein

cat boot.bin kernel.bin > pro.img

macht eigentlich nichts weiter, als die zwei Dateien boot.bin und kernel.bin zusammenzuhängen und das Ergebnis in die eine Datei pro.img zu schreiben. Da wird in der Regel natürlich kein Image draus. Und ob Du die neue Datei pro .img oder pro .iso nennst, ist auch egal. Beide Dateien sind am Ende völlig identisch.

Viele Grüße
Marvin

Hi Marvin,

danke und funktioniert(naja halbwegs, aber das ist ein Assembly-Problem)! Inspiriert von deinem Link, kam ich auf die Idee mir einen Multiboot-USB-Stick zu basteln, und komm deshalb nicht um eine weitere Frage drumherum.

Im Bootmenu(Grub) werden die entsprechenden Linux-Iso’s(Privatix,Kubuntu,BT5) angezeigt, die cfg-Dateien sind alle korrekt und auch deren Verweise, alles ist am richtigen Platz. Jedoch kommt nach der Auswahl aus dem (glaube ich vesamenu.c32) der Error 60: File for drive emulation must be in one contiguous disk aera (hd0,0)(map (images/kubuntu.iso (0xff)

Es kann, soweit ich glaube, nur an der vesamenu.c32 liegen, welche ich neu erstellen müsste (habe versucht meine Multiboot-USB-Stick, mit den isobooter 2.0.1, zu erweitern, mit den oben genannten Distributionen).

Bei wiki.ubuntuusers stieß ich dann auf den tftpd-hpa server(ist der nicht nur für Netzwerkinstallationen?) mittels PXlinux.0, hab alles nach der Anleitung gemacht, aber wie erstell ich jetzt die vesamenu.c32 oder besser gefragt wie kompilier ich diese (das erstellen ist ja dort beschrieben)??? Oder hast du einen anderen Tipp zur Vorgehensweise bzw. Link??

Gruß, 3quin0x

Hallo 3quin0x,

Jedoch kommt nach der Auswahl aus dem (glaube
ich vesamenu.c32) der Error 60: File for drive emulation must
be in one contiguous disk aera (hd0,0)(map (images/kubuntu.iso
(0xff)
Es kann, soweit ich glaube, nur an der vesamenu.c32 liegen

Nicht daß ich wüsste. Error 60 liegt genau an dem, was da steht
_File for drive emulation must be in one contiguous disk aera _
Mit anderen Worten: Dein kubuntu.iso ist fragmentiert. Wie Du das hingekriegt hast, weiss ich jetzt auch nicht. Aber das kannst Du beheben. Am einfachsten geht es mit einem Defragmentierungstool. Da sowas bei Linux höchst selten ist, musst Du wohl zu einem Windows-Programm greifen. Entwder contig, wenn Du keine Scheu vor der Kommandozeile hast :wink:
http://technet.microsoft.com/en-us/sysinternals/bb89…
oder wincontig für die Liebhaber von grafischen Oberflächen (dahinter steckt einfach nur contig)
http://wincontig.mdtzone.it/en/index.htm
Du kannst auch alles von deinem Stick auf die Festplatte retten, dann den Stick defragmentieren/formatieren und ganz zum Schluß, wenn garantiert nichts mehr geändert wird (auch nicht in den Menu-Einträgen), alles wieder auf den Stick zurückspielen. Das sollte dann auch alles schön am Stück und unfragmentiert sein, denke ich jedenfalls.
Hier gibt es noch eine Anleitung (obwohl Anleitung fast schon zuviel gesagt ist, ein paar Punkte eben)
http://dokuwiki.ruusan.org/howto/usbstick_multiboot_…
Und weil dort und bei mir schon auf so furchtbar viele Windows-Werkzeuge verwiesen wird :wink: noch ein ähnlicher Link zu einer halbwegs Windows-freien Zone:
http://www.pendrivelinux.com/multiboot-create-a-mult…
Und so sollte es auch gehen:
http://www.developers-guide.net/c/126-iso-images-von…
Eine dritte Möglichkeit wäre unetbootin:
http://unetbootin.sourceforge.net/
Ausprobieren musst Du aber alles selbst, das habe ich nicht getan.

Bei wiki.ubuntuusers stieß ich dann auf den tftpd-hpa
server(ist der nicht nur für Netzwerkinstallationen?)

Oh je, Du machst ja Sachen :wink: Den kenne ich tatsächlich nur für Netzwerkinstallationen. Der Zusammenhang mit Multiboot von einem USB-Stick einrichten erschliesst sich mir jetzt nicht so richtig. Dazu kann ich leider nichts sagen.

Oder hast du einen anderen Tipp zur Vorgehensweise bzw. Link?

Naja, die obigen Links. Helfen die dir weiter?

Viele Grüße
Marvin

Hi Marvin,

Danke nochmal, der Link mit pendrivelinux, hat geklappt. Hab jetzt meinen Multiboot-USB-Stick…:smile:

Gruß, 3quin0x