[Diskussion] Mehrere Tools bootbar auf einem USB-Stick einrichten

Campari_Kurita

Lt. Junior Grade
Dabei seit
Jan. 2006
Beiträge
289
#2
Gibbet sowas auf für den UEFI modus?

Meine Grafikkarte kann leider keinen Bios modus Mehr, dh. ich muss den UEFI modus aktivert lassen.....dann klappt aber nur das Booten des Win 8.1 Installations Sticks oder halt der WIndows 8.1 installation.

Gibt es hier keine Möglichkeit auch irgendwie nen Dos zu booten oder so?
Z.b. um Atiflash zu benutzen.....l
 
Dabei seit
Dez. 2007
Beiträge
574
#4
Respekt zu deiner Anleitung, so weit hatte ich mich bei Yumi noch nicht eingelesen!

So lässt sich die Ultimative Boot CD einfach noch ein bisschen durch und mit ein paar Tools erweitern.
 

sini

Lieutenant
Dabei seit
Dez. 2012
Beiträge
538
#5
Hallo zusammen,
ich habe mich vor einem Jahr auch mal damit befasst. Die fertigen / automatisierten Lösungen haben mich aber alle nicht angesprochen bzw. das geliefert, was ich benötigte.

Ich habe mir dann etwas auf Basis von Grub und Firadisk gebastelt.

Clipboard02.jpg

Das schöne, mit den richtigen menu.lst Einträgen kann man so ziemlich alles booten was man möchte :D

Falls Interesse besteht, kann ich auch mal eine Schritt für Schritt Anleitung dafür schreiben, habe ja eh schon eine interne Anleitung :D

Zum Uefi Modus: Normalerweise haben die Boards einen Kompatibilitätsmodus, der ist standardmäßig an. Bisher hatte ich nur Probleme auf ganz ganz alten Rechnern. Die erkennen wohl den grub-mbr nicht, bzw. binden den USB-Stick / USB-Platte nicht richtig ein. Auf neuen Rechnern hatte ich bisher noch keine Probleme das zu starten =)
 
Zuletzt bearbeitet:
Dabei seit
Feb. 2012
Beiträge
1
#6
Hallo sini,

komme leider erst jetzt auf dieses Thema zurück und würde gerne Dein Angebot in Anspruch nehmen. Yumi läuft leider nicht zuverlässig bei mir, deshalb möchte ich mal Dein eigenes Prog testen und es mal mit der Anleitung probieren.

Im Voraus schon mal vielen Dank!

mescho
 
Dabei seit
Dez. 2015
Beiträge
3
#7
Hallo Sini

Wie mescho schon sagte habe ich heute zufällich diesen Tread gefunden, und würde gern auch auf dein Angebot zugreifen, falls es noch Gültig ist?

Schon mal vielen Dank im voraus

MfG Sicma
 

sini

Lieutenant
Dabei seit
Dez. 2012
Beiträge
538
#8
Oh hey, die Antwort von mescho habe ich gar nicht mitbekommen ... Gerne schreibe ich die Anleitung =)

Die Motivation:
Meine Motivation war es mehrere Windows-Installation auf einem USB-Stick zu haben und nach Bedarf wählen zu können. Die bekannten Tools die Multi-Boot-Sticks generieren können, haben aber leider alle ihre Fehler oder Einschränkungen. Ich wollte etwas möglichst einfaches, was man selbst zügig um ISO-Dateien erweitern kann.

Vorbereitung:
Zunächst benötigen wir einen ganz einfachen USB-Stick oder eine USB-Festplatte oder eine USB-SSD. Die Speicherkapazität sollte ausreichend groß gewählt werden (ich persönlich benutze eine 120 GB SSD und einen 64 GB USB-Stick). USB-Sticks die "Treiber" in Form eines CD-Laufwerks mitbringen oder mehrere Partition haben, sind höchst wahrscheinlich ungeeignet; naja zumindest habe ich dies nicht getestet.

Tools:
Für die Durchführung benötigen wir diverse Tools. Ich verlinke diese hier einfach mal Quer:


Vorgehensweise:
  1. Datenträger formatieren (ich benutze NTFS; bitte kein FAT oder FAT32, die sind zu anfällig für Fehler!)
  2. Einen Ordner namens ISO erstellen
  3. Erste ISO-Datei hineinkopieren
  4. Datenträger mit defragler Defragmentieren und ISO-Datei an das Ende verschieben

Die Defragmentierung ist unbedingt notwendig. Die ISO-Dateien müssen ohne Fragmente auf dem Datenträger liegen. Wo genau ist egal, es bietet sich aber an den Datenträger von hinten zu befüllen. Die ISO-Dateien besser einzeln übertragen und nach jeder defragmentieren; vermeidet dumme Probleme. (Ja das gilt auch für Flash-Speicher!). In Defragler gibt es eine Option die die Daten gezielt an das Laufwerksende verschiebt.
Tipp: mit Dateien beginnen die nicht mehr modifziert oder häufig erneuert werden (z.B. originale ISO-Dateien, Kaspersky Rescue Disk usw.); sonst defragmentiert man das Laufwerk später zu Tode.

Clipboard10.jpg

  1. Diese beiden Schritte so lange wiederholen bis alle ISO-Dateien auf dem Laufwerk sind
  2. Ordner "FiraDisk" (inklusive Inhalt) auf den Datenträger kopieren
  3. Datei "grldr" auf den Datenträger kopieren
  4. Datei "Menu.lst" auf den Datenträger kopieren
  5. Die Datei "install.cmd" auf den Datenträger kopieren
  6. Alle restlichen Ordner und Inhalte (Tools, Installer usw.) auf den Datenträger kopieren

Damit sind schon einmal alle Dateien auf dem Stick. Das sollte in etwa so aussehen:
Clipboard11.jpg


Nun widmen wir uns dem Boot-Sektor

Mit dem Tool "RMPrepUSB" können wir den Grub-Bootloader in MBR und PBR schreiben.
  1. Das Programm „RMPrepUSB.exe“ starten
  2. Laufwerk im Programm auswählen und ggf. Warnung über große Datenträger ignorieren
    Clipboard12.jpg
  3. Auf „Installiere GRUB4DOS“ klicken.
  4. Jeweils 1x mit Ja und Nein durchlaufen lassen (MBR, Partitionstabelle). Die Datei grldr darf nicht mehr kopiert werden, wir benutzen eine neuere Version.

Clipboard13.jpg

Fertig.


Menu.lst
Die Menu.lst ist fast das Wichtigste an der ganzen Geschichte. Auf ihr basieren nicht nur die Boot-Menü-Einträge, sondern sie definiert auch die Art der Aufrufe.

Eintrag für Windows-Installations-ISO-Dateien
Code:
title Win7AIO
debug off
set MYISO=Win7_SP1_AIO.iso
dd if=()/firadisk/au.xml of=()/AutoUnattend.xml
dd if=()/firadisk/spaces.txt of=()/firadisk/ISONAME.CMD
write ()/firadisk/ISONAME.CMD SET MYISO=\\iso\\%MYISO%\r\n
map --mem (md)0x800+4 (99)
map /ISO/%MYISO% (0xff)
map (hd0) (hd1)
map (hd1) (hd0)
map --hook
write (99) [FiraDisk]\nStartOptions=cdrom,vmem=find:/ISO/%MYISO%;\n\0
chainloader (0xff)/BOOTMGR || chainloader (0xff)
Für Windows-Boot-Manager von Datenträger
Code:
title Win7PE_SE 0.10 von Stick
chainloader /BOOTMGR
Für Windows-PE-Umgebung boot aus ISO-Datei
Code:
title Win7PE_SE 0.10 von ISO
find --set-root /ISO/Win7PE_x86_0.10.iso
map --mem /ISO/Win7PE_x86_0.10.iso (hd32)
map --hook
root (hd32)
chainloader /BOOTMGR
Für MemTest86+ von ISO-Datei
Code:
title MemTest86+ 4.20
kernel /Boot/IMG/MEMTEST.BIN
lock
Für gparted von ISO-Datei
Code:
title gparted 0.17.0-1
find --set-root /ISO/gparted-live-0.17.0-1-i486.iso
map /ISO/gparted-live-0.17.0-1-i486.iso (0xff) || map --mem /ISO/gparted-live-0.17.0-1-i486.iso (0xff)
map --hook
root (0xff)
kernel /live/vmlinuz  boot=live config union=aufs noswap noprompt vga=788 ip=frommedia findiso=/ISO/gparted-live-0.17.0-1-i486.iso toram=filesystem.squashfs
initrd /live/initrd.img
Für Kaspersky Rescue Disk
Code:
set KRD10ISO=/rescue/rescue.iso
																				# Anmerkungen: Weder Datei- noch Ordnernamen dürfen geändert werden!!!
set kernel=(0xff)/boot/rescue root=live:UUID=A1234-1234 rootfstype=auto vga=791 init=/init kav_lang=en udev liveimg splash quiet doscsi nomodeset
set initrd=(0xff)/boot/rescue.igz
map %KRD10ISO% (0xff) || map --mem %KRD10ISO% (0xff) 
map --hook > nul 
kernel %kernel% 
initrd %initrd%
boot
title Manuelle ISO Auswahl (Primaer fuer WIN-Installationsimages ausgelegt)
Code:
# find the ISO folder by looking for a marker file
debug off
find --set-root /ISO/choose_an_iso
clear
echo
# list all files in the /ISO folder so the user can see them
ls ()/ISO/
echo
# Ask user which iso they want (name is converted to uppercase as /u is specified)
set /p /u ask=Enter iso filename WITH NO .ISO EXTENSION (e.g. Win7Pro32 ) :  
if "%ask%"=="" echo No iso file specified! && configfile /menu.lst
clear
# check if user entered a valid filename with no ISO extension!
ls /ISO/%ask%.iso || echo Cannot find /ISO/%ask%.iso !!! && pause --wait=3 && configfile (bd)/menu.lst
echo Loading /ISO/%ask%.iso - please wait ...
#set root drive to USB stick
find --set-root /firadisk/loadiso.cmd
map --mem (md)0x800+4 (99)
#dd if=()/firadisk/au.xml of=()/AutoUnattend.xml
dd if=()/firadisk/spaces.txt of=()/firadisk/ISONAME.CMD
write ()/firadisk/ISONAME.CMD SET MYISO=\\iso\\%ask%.iso\r\n
find --set-root /ISO/%ask%.iso
# run the grub4dos map command and specify the iso file we want to load
map /ISO/%ask%.iso (0xff)
map (hd0) (hd1)
map (hd1) (hd0)
map --hook
# Specify the same iso file for when firadisk runs in winpe
find --set-root /firadisk/loadiso.cmd
write (99) [FiraDisk]\nStartOptions=cdrom,vmem=find:/ISO/%ask%.iso;\n\0
chainloader (0xff)/BOOTMGR || chainloader (0xff)
clear
Des weiteren können Absätze in der Liste mit dem folgenden Befehl eingefügt werden:
Code:
title
root ()
Die folgenden beiden Einträge sind selbsterklärend:

Code:
title Neustarten
reboot
Code:
title Herunterfahren
halt

Benutzung:
Sobald die "menu.lst" an die vorhandenen ISO-Dateien angepasst wurde, ist der Datenträger einsatzbereit. Die Windows PE-Umgebungen startet wie von einer CD / DVD aus der ISO heraus. Manchmal funktioniert dies jedoch nicht. In diesem Fall behelfe ich mir mit einer entpackten PE-Umgebung die per bootmgr durch Grub gestartet wird.

Windows Installations-ISO-Dateien starten ebenfalls wie von CD / DVD. Hier gibt es jedoch etwas zu beachten. Per default haben diese keine Treiber für die DVD / CD Emmulation von Firadisk an Board und können somit nicht auf die Installations-Daten zugreifen. Im Ordner "Firadisk" gibt es hierfür eine Skript-Datei Namens "LOADISO.cmd". Um diese zu laden geht man wie folgt vor:

  • ISO-Datei laden lassen bis erstes grafisches Setup-Fenster erscheint
  • Die Taten Shift+F10 drücken
  • die CMD öffnet sich
  • Laufwerksbuchstaben des Sticks suchen (wenn keine Partitionen / Laufwerke vorhanden ist es immer c:) (am leichtesten wie folgt: c: => dir => d: => dir => e: => dir usw. ...)
  • cd firadisk eintippen + Enter
  • loadiso.cmd eintippen + Enter
  • blaues Fenster erscheint, Treiber werden geladen
  • Setup kann wie von DVD/CD fortgesetzt werden

Für die Faulen unter uns. einfach im root des USB-Sticks eine Datei install.cmd (o.ä.) mit folgenden Inhalt anlegen:

Meine ganze Menu.lst sieht wie folgt aus:
# Version 2014-02-15

#
# Service-Multiboot
#

color white/black black/white

# display this heading
write (md)0x220+1 !BAT\necho -n -P:0000 $[0133] ------------------------ Service-Multiboot ------------------------ \0
initscript (md)0x220+1

title Win7PE_SE 0.10 von Stick
chainloader /BOOTMGR


title Win7PE_SE 0.10 von ISO
find --set-root /ISO/Win7PE_x86_0.10.iso
map --mem /ISO/Win7PE_x86_0.10.iso (hd32)
map --hook
root (hd32)
chainloader /BOOTMGR


title Win8PE_SE von ISO
find --set-root /ISO/Win8PE_x64.iso
map --mem /ISO/Win8PE_x64.iso (hd32)
map --hook
root (hd32)
chainloader /BOOTMGR


title
root ()

title MemTest86+ 4.20
kernel /Boot/IMG/MEMTEST.BIN
lock


title gparted 0.17.0-1
find --set-root /ISO/gparted-live-0.17.0-1-i486.iso
map /ISO/gparted-live-0.17.0-1-i486.iso (0xff) || map --mem /ISO/gparted-live-0.17.0-1-i486.iso (0xff)
map --hook
root (0xff)
kernel /live/vmlinuz boot=live config union=aufs noswap noprompt vga=788 ip=frommedia findiso=/ISO/gparted-live-0.17.0-1-i486.iso toram=filesystem.squashfs
initrd /live/initrd.img


title Kaspersky Rescue Disk 10 (Hinweis: Dieses Laufwerk wird nicht gemountet)
set KRD10ISO=/rescue/rescue.iso
set kernel=(0xff)/boot/rescue root=live:UUID=A1234-1234 rootfstype=auto vga=791 init=/init kav_lang=en udev liveimg splash quiet doscsi nomodeset
set initrd=(0xff)/boot/rescue.igz
map %KRD10ISO% (0xff) || map --mem %KRD10ISO% (0xff)
map --hook > nul
kernel %kernel%
initrd %initrd%


title
root ()


title Windows 7 SP1 AIO
debug off
set MYISO=Windows_7_Sp1_AIO.iso
#dd if=()/firadisk/au.xml of=()/AutoUnattend.xml
dd if=()/firadisk/spaces.txt of=()/firadisk/ISONAME.CMD
write ()/firadisk/ISONAME.CMD SET MYISO=\\iso\\%MYISO%\r\n
map --mem (md)0x800+4 (99)
map /ISO/%MYISO% (0xff)
map (hd0) (hd1)
map (hd1) (hd0)
map --hook
write (99) [FiraDisk]\nStartOptions=cdrom,vmem=find:/ISO/%MYISO%;\n\0
chainloader (0xff)/BOOTMGR || chainloader (0xff)


title Windows 8 AIO
debug off
set MYISO=Windows_8_AIO.iso
#dd if=()/firadisk/au.xml of=()/AutoUnattend.xml
dd if=()/firadisk/spaces.txt of=()/firadisk/ISONAME.CMD
write ()/firadisk/ISONAME.CMD SET MYISO=\\iso\\%MYISO%\r\n
map --mem (md)0x800+4 (99)
map /ISO/%MYISO% (0xff)
map (hd0) (hd1)
map (hd1) (hd0)
map --hook
write (99) [FiraDisk]\nStartOptions=cdrom,vmem=find:/ISO/%MYISO%;\n\0
chainloader (0xff)/BOOTMGR || chainloader (0xff)


title Windows 8.1 AIO
debug off
set MYISO=Windows_8.1_AIO.iso
#dd if=()/firadisk/au.xml of=()/AutoUnattend.xml
dd if=()/firadisk/spaces.txt of=()/firadisk/ISONAME.CMD
write ()/firadisk/ISONAME.CMD SET MYISO=\\iso\\%MYISO%\r\n
map --mem (md)0x800+4 (99)
map /ISO/%MYISO% (0xff)
map (hd0) (hd1)
map (hd1) (hd0)
map --hook
write (99) [FiraDisk]\nStartOptions=cdrom,vmem=find:/ISO/%MYISO%;\n\0
chainloader (0xff)/BOOTMGR || chainloader (0xff)


title Windows 7 Prof x64 Standardimage Stand: 2014-04-19
debug off
set MYISO=Windows_7_Prof_x64_2014-04-19.iso
#dd if=()/firadisk/au.xml of=()/AutoUnattend.xml
dd if=()/firadisk/spaces.txt of=()/firadisk/ISONAME.CMD
write ()/firadisk/ISONAME.CMD SET MYISO=\\iso\\%MYISO%\r\n
map --mem (md)0x800+4 (99)
map /ISO/%MYISO% (0xff)
map (hd0) (hd1)
map (hd1) (hd0)
map --hook
write (99) [FiraDisk]\nStartOptions=cdrom,vmem=find:/ISO/%MYISO%;\n\0
chainloader (0xff)/BOOTMGR || chainloader (0xff)


title Windows 7 Prof x64 Standardimage Stand: 2014-09-11
debug off
set MYISO=Windows_7_Prof_x64_2014-09-11.iso
#dd if=()/firadisk/au.xml of=()/AutoUnattend.xml
dd if=()/firadisk/spaces.txt of=()/firadisk/ISONAME.CMD
write ()/firadisk/ISONAME.CMD SET MYISO=\\iso\\%MYISO%\r\n
map --mem (md)0x800+4 (99)
map /ISO/%MYISO% (0xff)
map (hd0) (hd1)
map (hd1) (hd0)
map --hook
write (99) [FiraDisk]\nStartOptions=cdrom,vmem=find:/ISO/%MYISO%;\n\0
chainloader (0xff)/BOOTMGR || chainloader (0xff)


title Windows 7 Prof x64 Standardimage Stand: 2015-02-08
debug off
set MYISO=Windows_7_Prof_x64_2015-02-08.iso
#dd if=()/firadisk/au.xml of=()/AutoUnattend.xml
dd if=()/firadisk/spaces.txt of=()/firadisk/ISONAME.CMD
write ()/firadisk/ISONAME.CMD SET MYISO=\\iso\\%MYISO%\r\n
map --mem (md)0x800+4 (99)
map /ISO/%MYISO% (0xff)
map (hd0) (hd1)
map (hd1) (hd0)
map --hook
write (99) [FiraDisk]\nStartOptions=cdrom,vmem=find:/ISO/%MYISO%;\n\0
chainloader (0xff)/BOOTMGR || chainloader (0xff)


title
root ()

title Manuelle ISO Auswahl (Primaer fuer WIN-Installationsimages ausgelegt)
# find the ISO folder by looking for a marker file
debug off
find --set-root /ISO/choose_an_iso
clear
echo
# list all files in the /ISO folder so the user can see them
ls ()/ISO/
echo
# Ask user which iso they want (name is converted to uppercase as /u is specified)
set /p /u ask=Enter iso filename WITH NO .ISO EXTENSION (e.g. Win7Pro32 ) :
if "%ask%"=="" echo No iso file specified! && configfile /menu.lst
clear
# check if user entered a valid filename with no ISO extension!
ls /ISO/%ask%.iso || echo Cannot find /ISO/%ask%.iso !!! && pause --wait=3 && configfile (bd)/menu.lst
echo Loading /ISO/%ask%.iso - please wait ...
#set root drive to USB stick
find --set-root /firadisk/loadiso.cmd
map --mem (md)0x800+4 (99)
#dd if=()/firadisk/au.xml of=()/AutoUnattend.xml
dd if=()/firadisk/spaces.txt of=()/firadisk/ISONAME.CMD
write ()/firadisk/ISONAME.CMD SET MYISO=\\iso\\%ask%.iso\r\n
find --set-root /ISO/%ask%.iso
# run the grub4dos map command and specify the iso file we want to load
map /ISO/%ask%.iso (0xff)
map (hd0) (hd1)
map (hd1) (hd0)
map --hook
# Specify the same iso file for when firadisk runs in winpe
find --set-root /firadisk/loadiso.cmd
write (99) [FiraDisk]\nStartOptions=cdrom,vmem=find:/ISO/%ask%.iso;\n\0
chainloader (0xff)/BOOTMGR || chainloader (0xff)
clear

title
root ()

title Neustarten
reboot


title Herunterfahren
halt

Nachwort:

Viel Text um nichts. Mir ist gerade aufgefallen, dass es bei rmprepusb.com bereits eine Anleitung gibt, siehe:
http://www.rmprepusb.com/tutorials/firawiniso

Meine Version ist etwas praxisorientierter. Dort wird auch beschrieben wie man z.B. Prouct-Keys usw. hinterlegt (ich habe das über ei.cfg usw. geregelt und nutzte das nicht; ebenso verzichte ich auf die "AutoUnattend.xml", die führt manchmal zu Problemen).
 
Zuletzt bearbeitet:
Dabei seit
Dez. 2015
Beiträge
3
#9
Hallo Sini
Vielen Dank für die Anleitung.
Aber bei mir wil Defragler die SSD nicht Optimieren?
Hast du eine Idee? Ich habe die Einstellungen von Defragler so übernommen wie du geschrieben hast.

MfG Sicma
Ergänzung ()

Ach und noch eins, für alle, mich Eingeschlossen, die der Englischen Gramatik nicht so mächtig sind ist deine Anleitung Goldrichtig.:)
 

sini

Lieutenant
Dabei seit
Dez. 2012
Beiträge
538
#10
Du musst schon das richtige Defragmentieren benutzen (Rechtsklick auf Laufwerk => Defrag Laufwerk).

Dann kommt bei mir das folgende Fenster:
Clipboard0111.jpg

Und dann fängt der an :D

p.s. ich nutze dafür noch Verison 2.16.809 x64, vielleicht machen die neuen Versionen das ja gar nicht mehr ^^
p.p.s das einzig knifflige an der Sache ist lediglich die Menu.lst mit Inhalt zu füllen :D
 
Zuletzt bearbeitet:

sini

Lieutenant
Dabei seit
Dez. 2012
Beiträge
538
#12
Uhm das LoadISO.cmd funktioniert nur wenn der Rechner davon gebootet wurde und das aus dem Windows Setup gestartet wird. Das hat nur den einen Zweck. Unter einem installierten Windows tut das Teil rein gar nichts =)
 
Top