Dualboot oBSD und Win7

Dieses Thema im Forum "OpenBSD - Installation, Pakete und Anwendungen" wurde erstellt von overflow, 13 April 2012.

  1. overflow

    overflow Member

    Registriert seit:
    21 April 2008
    Beiträge:
    30
    Ort:
    Köln
    Hallo liebe Foren-Freunde,

    seit knapp 6 Stunden bin ich mit der Installation von oBSD und Win7 beschäftigt.
    Beim booten von win7 erhalte ich immer die Meldung "Fehler bei der Startauswahl" und solle doch bitte die Windowsinstallation reparieren.

    Anscheinend funktioniert der bootmgr nicht richtig.

    Ich hoffe, dass ihr mir helfen könnt.

    Ich bin wie folgt vorgeganngen.

    - openBSD Partition erstellt/reserviert
    - rest für Windows genutzt und installiert
    - openBSD installiert
    - grub installiert
    - /grub/menu.lst engelegt
    Code:
    default 0 timeout 5
    
    title Windows XP
    root (hd0,1)
    chainloader +1
    
    title OpenBSD
    root (hd0,0)
    chainloader +1
    - /usr/local/sbin/grub-install --no-floppy hd0 ausgeführt

    Vielen Dank,
    wünsche ein erholsames Wochenende
  2. darktrym

    darktrym Wecker auf 5:25

    Registriert seit:
    21 August 2006
    Beiträge:
    1.060
    Ort:
    Gera, Thüringisches Vogtland
    Probier mal:

  3. CommanderZed

    CommanderZed OpenBSD User

    Registriert seit:
    1 Juni 2005
    Beiträge:
    858
    Ort:
    Weyhe
    Also ich habe das einfacher gemacht:

    Windows 7 installiert
    OpenBSD isntalliert, den OpenBSD-Loader auf die OpenBSD Partition installiert und dann lt. OpenBSD FAQ den Windows-7-Boot-loader modifiziert um OpenBSD zu starten.

    Soweit ich mich erinnere, hatte ich immer massive Probleme wenn Windows 7 nicht zuerst installiert war.
  4. overflow

    overflow Member

    Registriert seit:
    21 April 2008
    Beiträge:
    30
    Ort:
    Köln
    @darktrym: Danke hilft dennoch nicht...

    Kurz hier paar Details:
    fdisk sd0:
    Partition 0: openbsd
    Partition 1: windows system die zwingend mitangelegt wird
    Partition 2: windows 7 Partition
    Partition 3: frei

    Bootflag ist auf Partition 1 (Windows System Partition) gesetzt.


    cat /grub/device.map
    (hd0) /dev/rsd0c

    Was ich mich jetzt frage spreche ich die Windows Systempartition oder die eigentlich Windowspartition an ?
    Habe beides (hd0,1) und (hd0,2) ausprobiert.

    @CommanderZed: Schaue mir mal die FAQ gleich an, würde aber lieber das Problem so lösen...
  5. logout

    logout New Member

    Registriert seit:
    23 April 2011
    Beiträge:
    101
    Ort:
    Hamburg
    Versuch es mal mit einem Eintrag in der /grub.d/40_custom.
    Hat bei mir so funktioniert.
  6. bluescreen

    bluescreen verstört

    Registriert seit:
    3 Oktober 2005
    Beiträge:
    355
    Ort:
    /home
    Hallo !


    Vielleicht hilft dass hier :

    menu.lst :

    title Windows 7
    root (hd1,0)
    map (0x81) (0x80)
    map (0x80) (0x81)
    makeactive
    chainloader +1

    So startet Linux meine Win7 Installation !

    Gruss
  7. rhurlin

    rhurlin FLEX OS

    Registriert seit:
    16 November 2003
    Beiträge:
    46
    Ort:
    Northeim
    Etwas OT, bringe es aber trotzdem an dieser Stelle. Da es viele Leute ärgert, hier ein Kommentar zu Deiner Bemerkung, dass Windows7 bei der Installation zwingend eine "System"-Partition mit anlegt. Dass ist nur bedingt richtig und kann z.B. folgendermaßen umgangen werden:

    Die Platte vor Installation von Win7 mit einem Partitionierer (z.B. gparted) in vier (gerne auch primäre) Partitionen aufteilen. Dabei (in Deinem Fall) nur die zweite Partition NTFS formatieren. Wahrscheinlich kann dieser Schritt sogar entfallen. Wichtig ist jedoch, dass kein freier Platz mehr zur Verfügung steht, den Windows sich zusätzlich greifen kann.

    Danach Windows installieren, jedoch zu Beginn die Platte nicht neu von Windows einteilen lassen. Statt dessen in den Windows Partitionierer wechseln und der Installationsroutine lediglich erlauben, die zweite Partition zu verwenden. Bei Bedarf kann diese auch gerne noch einmal aus der Installationsroutine heraus formatiert werden. Habe auf diese Art etliche Dual-Boot-Systeme eingerichtet, in denen Windows nur exakt eine Partition verbrät. Die dritte und vierte Partition können nach Abschluß der Windows Installation natürlich auch NTFS formatiert werden ...

    Hoffe, dass dies bei der nächsten Installation nützlich ist. Spart auf jeden Fall einen Partitionseintrag ;-)
  8. Lixos

    Lixos Member

    Registriert seit:
    31 Januar 2009
    Beiträge:
    59
    Zu diesem Thema gibt es sowohl hier im Forum als auch im Forum unter FreeBSD.org eine ausführliche Anleitung mit EasyBCD. Ich bitte um Nutzung der Suchfunktion.
    Desweiteren besteht das allgemeine Problem darin, dass oBSD bestimmt wie FreeBSD auch die aktive Windows - Partition während der Installation deaktiviert. Dies muss händisch korrigiert werden.
    Allgemein wird gemunkelt, dass Microsoft seit Windows Vista eine Prüfsumme von der Partitionstabelle erstellt und bei Veränderung dieser Prüfsumme z.T. nicht mehr startet. Deshalb ist es günstig das BSD auf eine eigene Festplatte zu installieren.
  9. CommanderZed

    CommanderZed OpenBSD User

    Registriert seit:
    1 Juni 2005
    Beiträge:
    858
    Ort:
    Weyhe
    Nein, das ist falsch - OpenBSD fragt natürlich wohin der Boatloader installiert werden soll und setzt nicht auf aktiv/inaktiv solange man es nicht selbst macht.

    OpenBSD + Windows 7 /XP mit dem Windows-eigenen Boot-loader ist so ziemlich das unkompliziertes, auch bei updates / neuinstallationen, was man sich vorstellen kann.

    /edit
    Ich persöhnlich neige allerdings dazu einfach einen 2. Rechner zu nehmen - aber das kommt natürlich auch stark auf den Einsatzzweck an ;)
  10. Azazyel

    Azazyel Member

    Registriert seit:
    2 Juni 2005
    Beiträge:
    555
    Wobei man - je nach Einsatzzweck - die zahlreichen Segnungen der Virtualisierung nicht außer Acht lassen sollte. :D
  11. overflow

    overflow Member

    Registriert seit:
    21 April 2008
    Beiträge:
    30
    Ort:
    Köln
    Sorry für die späte Rückmeldung.
    Viel Arbeit wenig Zeit :)

    Vorab möchte ich mich für die zahlreichen Beiträge bedanken!

    Ich habe etliches versucht.
    Leider bisher ohne Erfolg und kann mir leider nicht erklären woran es liegt.
    Da ich sowieso eine kleine 120 GB SSD Platte habe,
    ist es nicht so tragik eine weitere Platte für oBSD zu besorgen.

    Einsatzzweck ist nur zum Spielen von Diablo 3.
    Kein surfen ! kein arbeiten ! Netzwerkverkehr nach außen komplett gesperrt,
    sowie jegliche Ports. Nur Diablo 3 benötigte Einstellungen werden zugelassen.

    Eine Virtualisierung kommt leider wg. der minimalen VGA Unterstützung nicht in Frage.

    Ich hätte gern dennoch gewusst, was ich falsch gemacht habe...
  12. oenone

    oenone Programmierer

    Registriert seit:
    30 November 2002
    Beiträge:
    2.551
    Ort:
    Bremen
    Dann wirst du keinen Spaß mit Diablo 3 haben..
  13. hades

    hades the unseen one Mitarbeiter

    Registriert seit:
    22 Dezember 2006
    Beiträge:
    502
    Ort:
    Biberach an der Riß
    Warum denn nicht? Er schreibt doch
    .
  14. dettus

    dettus Bicycle User

    Registriert seit:
    9 August 2004
    Beiträge:
    2.549
    Ort:
    nuernberg
    hi!

    also, weil ich mich jetzt auch die letzten zwei tage mit dual-boot rumgeaergert habe... ich habs hingekriegt ;)
    ERSTMAL: du musst bei openbsd darauf achten, dass die datei /boot irgendwo weit vorne auf der platte liegt. frag mich jetzt nicht wo genau.
    aber wenn du mit windows die partitionen solange vergroesserst, verkleinerst und verschiebst, kannst du dir ganz vorne eine 1gb partition bauen, das reicht.
    diese partition wird dann dein /, alles andere kannst du auf partitionen kloppen wie du lustig bist.

    du legst dir also UNTER WINDOWS (datentraegerverwaltung) eine raw, eine ntfs, eine raw-partition an.

    probier aus ob der danach noch bootet.



    DANN, das geheimnis meines erfolges:
    nach dem booten vom installer habe ich (s)hell und dann
    Code:
    % dd if=/dev/sd0c of=/tmp/backup.img bs=512 count=1
    
    gemacht. dieses backup.img habe ich dann weggesichert. OBERWICHTIG!

    dann kam
    Code:
    % fdisk -e /dev/rsd0c
    
    und die beiden raw-partitionen auf cylindergrenzen ab- bzw. aufgerundet. und die typen auf A6 geaendert. NICHT den typen der ntfs-partition!

    danach machst du ein
    Code:
    % dd if=/dev/sd0c of=/tmp/openbsdmbr.img bs=512 count=1
    
    bevor du irgendwas anderes machst guckst du ob dein rechner noch in das betriebssystem mit dem virenscanner bootet.
    wenn nicht, einfach wieder openbsd booten, den mbr zurueckspielen
    Code:
    % dd if=backup.img of=/dev/sd0c UND FRAGST DICH WAS HAST DU FALSCH GEMACHT?
    

    wenn alles geklappt hat: wieder das offene bsd booten, und ganz normal installieren. nur dass / halt auf der vorderen partition liegen muss.
    der sollte dann direkt nach openbsd rein booten.


    ich habe dann einfach den windows-bootloader benutzt.
    dazu musst du erstmal wieder den master boot sektor kopieren
    Code:
    % dd if=/dev/rsd0c of=openbsd.bin bs=512 count=1
    
    openbsd.bin kopierst du dir wieder sonstwohin.

    und den alten openbsd-mbr wieder zurueckspielen.
    Code:
    % dd if=openbsdmbr.img of=/dev/sd0c
    
    wenn du jetzt bootest kommt wieder windows. aber die partitionstabelle ist die mit openbsd.

    unter windows musst du das opensbd.bin jetzt nach c:\ legen. geht nur als admin.
    und dann benutzt du das kranke bcdedit um den bootloader zu confen:
    Code:
    C:\> dir \openbsd.bin
    C:\> bcdedit /create /d "OpenBSD" /application BOOTSECTOR
    
    diese ellenlange zahl die rauskommt ist die {ID}. keine ahnung warum die progger bei winzigweich nicht einfach was kuerzeres genommen haben. aber egal.
    Code:
    C:\> bcdedit /set {ID} device partition=C:
    C:\> bcdedit /set {ID} path \openbsd.bin
    C:\> bcdedit /displayorder {ID} /addlast
    C:\> bcdedit /timeout 10
    
    beim naechsten mal booten hast du dann einen auswahlscreen mit windows 7 und openbsd.und ersteres zickt dann auch nicht rum.
    einfach, wa?!

    und @lixos: easybcd kostet unnoetiges geld.
    Zuletzt bearbeitet: 23 April 2012
  15. CommanderZed

    CommanderZed OpenBSD User

    Registriert seit:
    1 Juni 2005
    Beiträge:
    858
    Ort:
    Weyhe
    Also ich hab mir das irgendwie sehr viel einfacher gemacht, Dettus - k.A. ob das "falsch" war.

    Also zuersteinmal die /boot Partition innerhalb der xyz-grenze ist ein eine sehr alte Geschichte, die auf modernen Desktop-Systemen (sagen wir mal um sicherzugehen mit Rechnern ab 2004) nicht mehr auftauchen sollte. Ich denke unter gaaanz selten merkwürdigen umständen könnte das noch immer auftauchen, aber bei meinem Windows 7 / OpenBSD dualboot-System z.B: auf meinem T60 mit 500GB Platte liegt OpenBSD in den letzten 80GB - ohne irgendwelche Probleme - das gleiche hatte ich vor Jahren schon auf anderen Systemen ohne Probleme.
    /edit
    (Kleine Anmerkung: Ein Rechner auf dem D3 läuft sollte mit einiger Sicherheit in diese Kategorie fallen *gg*)
    ((Edit kleine Anmerkung 2: Ich habe das mit AHCI gemacht bei dem T60 - AHCI sollte heutzutage glaub ich generell verwendet werden))

    Insgesamt bin ich eigentlich nur Schritt-für-Schritt nach http://www.openbsd.org/faq/faq4.html#Multibooting und dann den entsprechenden Abschnitt je nach Windows-Partition vorgegangen.

    1. Windows installieren, genug Platz für OpenBSD am Ende lassen, noch keine weiteren Partitionen erstellen (und bei der Plattenaufteilung platz für eine Primäre Partition lassen - maximal sind insgesamt 4 erlaubt!)

    2. OpenBSD-Installation starten, mit FDISK eine weitere partition für OpenBSD erstellen und mit dem Disklabel dann ganz nach wunsch aufteilen. Die Windows-Partition sollte weiterhin als "aktiv" makiert bleiben.

    3. OpenBSD wie gewohnt installieren, dabei dadrauf achten den boot-loader nich auf die ganze Festplatte sondern nur auf die OpenBSD-Partition zu schreiben

    4. Den dd if=/dev/rsd0a of=openbsd.pbr bs=512 count=1 lt. Anleitung ausführen und die dabei erstellte datei irgendwo ablegen so das windows rankommt. (Der befehl stimmt so nicht und muss auf den meisten Systemen angepasst werden, das ist lt. Anleitung aber so gewollt!)

    5. Die in der FAQ unter Windows-7 empfohlenen Schritte durchführen.

    Die Methode ist eigentlich relativ Narrensicher und erfordert kein derart komplexes Partitionslayout wie z.B. bei Dettus.
    Sollte irgendetwas schiefgehen kann man z.B. OpenBSD auch mal "zwischendrinn" booten in dem man die OpenBSD partition unter Windows auf aktiv setzt, genauso auch umgekehrt.
    Sollte irgendetwas schiefgehen kann mithilfe der Windows7-boot-cd relativ problemlos der mbr e.t.c. wiederhergestellt.

    Bei updates brauchst du dann später nur dadrauf achten das du nicht ausversehen irgendetwas an den Windows-Partitionen änderst.
    Zuletzt bearbeitet: 23 April 2012
  16. dettus

    dettus Bicycle User

    Registriert seit:
    9 August 2004
    Beiträge:
    2.549
    Ort:
    nuernberg
    die kranke bootpartition (RICHTIG krank wenn du mich fragst ;) ) habe ich vorgeschlagen weil der bootloader beim installieren halt doch gemeckert hatte.
    und das bloedsinnige partions-gebastel habe ich gemacht weil der windows-bootloader sonst nciht mitspielen wollte.
  17. overflow

    overflow Member

    Registriert seit:
    21 April 2008
    Beiträge:
    30
    Ort:
    Köln
    Ich werde ein wenig mit meiner neuen 2. Platte herum experimentieren.

    Vielen Dank für die zahlreiche/freundliche Beteiligung.
  18. casualx

    casualx New Member

    Registriert seit:
    5 Februar 2012
    Beiträge:
    35
    hab mich vorletzt auch mal mit so bootloader problemen rumgeärgert...als (zwischen)lösung hilft dir villeicht GAG
    http://gag.sourceforge.net/

    hatte mit grub legacy ähnliche geschichten...mit grub2 ist das problem weg und hab gerade auf der maschine geschaut mein eintrag sort sieht so aus

    menuentry "OpenBSD" {
    set root=(hd0,1)
    chainloader +1
    }
    Zuletzt bearbeitet: 1 Mai 2012