Installation von openSUSE neben Windows 7: 100MB Partition von Win7, Bootloader überhalb 128GB, usw.

Hallo,
ich möchte mir neben meinem aktuell installiertem OS (Windows 7 Ultimate 64 Bit) openSuse 11.3 (die aktuelle Version) installieren. Prinzipiel ist das auch kein Problem, ich habe das schon ein paar mal gemacht und auch andere Distributionen verwendet, diesesmal ist es aber in sofern spezieller da ich zum einen auf keinen Fall riskieren möchte mein aktuelles OS nicht mehr booten zu können und zum anderen mit ein paar Komplikationen zu kämpfen habe. Deshalb will ich mich hier im Forum erstmal versichern keine Fehler zu machen mit dem was ich vorhabe.
Zum einen erstmal eine Frage zu Windows 7, dieses legt ja unter Umständen eine 100MB Systempartition an (in meinem Fall wurde sie angelegt), die wohl für die Bitlocker Verschlüsselung benötigt wird aber zum anderen, so habe ich das verstanden, auch den Bootloader beinhaltet (man kann sie zwar vor der Installation durchaus entfernen und den Bootloader somit auf die normale C Partition “verschieben”, dass habe ich allerdings nicht gemacht und ist somit nicht relevant [d.h. bei mir existiert diese Partition!]).
Die Frage ist jetzt:

  1. liegt der Bootloader jetzt nun auf dieser Systempartition oder bin ich da falsch informiert (Vorraussetzung: ich habe nichts manuell geändert d.h. der Standardfall sollte zutreffen)

openSuse installiert ja einen eigenen Bootloader, der mir dann die Auswahl lässt zwischen Opensuse und meinem akutellen OS. Im Normalfall wird mir aber während der Installation für jede erkannte Windowspartition ein Eintrag angelegt, d.h. sowohl für die 100MB Systemparition als auch für die “normale” C Partition. Die Frage ist jetzt:
2. Welche von beiden Einträgen kann ich direkt löschen, den für die 100MB Partition oder den für die C-Parition? Das ist insofern Relevant weil ich Bitlocker nutzen will und außerdem davon ausgehe das Grub bei Auswahl von Windows eben einfach an den Windows Bootloader weitergibt, der ja auf der 100MB Parition liegt. Womöglich könte Grub auch direkt das OS auf C starten? Falls ja gibt das bestimmt Probleme bei einer vollständig verschlüsselten Systempartition, weil dafür ja die 100 MB Partition wichtig ist?

Jetzt zu meinem anderen Problem, bei der installation von openSuse wurde soweit alles erkannt, da ich openSuse aber nicht auf einer Parition meiner OS Platte installieren will sondern auf einer Partition einer anderen Festplatte (auf dieser war zuvor mein Windows XP installiert und zwecks Datensicherung habe ich mir für Windows 7 einfach eine neue Platte gekauft) und dort aber auch nicht direkt auf der Platte sondern in einer zweiten Partition!
Die ersten Partition enthällt noch die Überbleibsel meines Windows XP Systems die ich in jedemfall behalten will zwecks späterer Rettung vergessener Daten. D.h. um das mal zusammenzufassen, opensuse soll auf die zweite 600 GB Partition einer zusätzlichen Platte (die erste Partition ist knapp 300GB groß und soll unangetastet bleiben, zusätzlich habe ich wie gesagt noch die 2TB Windows 7 Festplatte eingebaut die aber kurioserweise nicht als sda sondern sdb “erkannt wird”).
Wie gesagt die Paritionsvorschläge waren ok, bzw. ich habe sie ein bisschen angepasst und wollte dann installieren. In der Übersicht vor der Installation erhielt ich aber den Hinweis das der Bootloader in einer Partition überhalb von 128GB installiert werden soll und das OS somit möglicherweise nicht startet.

Nun habe ich aber etwas gegoogelt und festgestellt, dass dies prinzipiell ältere Systeme betrifft (ich habe ein reletiv neues System: Board: Asus Rampage 3 Extreme, neustes Bios) allerdings habe ich ja oben geschrieben, dass ich auf keinen Fall riskieren möchte mein Windows 7 nicht mehr booten zu können, deshalb will ich hier im Forum vorher abklären ob ich das dennoch machen kann oder nicht. Also:
3. kann ich dennoch installieren oder gibt es eine von 0 verschiedene Warscheinlichkeit am Ende nicht mehr ins Windows booten zu können?

Hi

Also das mit den 128 GB kannst du zu 99% ignorieren. Grub wird Linux trotzdem booten können.

In Grub trägst du für Windows diese 100 MB Partition ein. Windows bootet problemlos.

Sollten wirklich alle Stricke reißen: Windows DVD rein, davon booten, auf Computerreparatur klicken und die folgenden Befehle:
bootrec /fixmbr
bootrec /fixboot
Dann bootet Windows wieder von alleine, du wirst aber einen neuen Grub installieren müssen.

Ich garantiere hier aber ausdrücklich nicht für 100% Erfolg.

Ein Tipp aber, das macht es leichter. Du solltest die Platte von der du booten möchtest (2 tb = /dev/sdb) zu /dev/sda machen. Das kannst du machen indem du ihr einfach den ersten SATA Port zuweist (verkabelung im Gehäuse) und der zweiten Platte eben den zweiten. Hier kann es zu einigen Verwirrungen kommen, das BIOS dreht die Namen einfach um, Linux liest aber nicht das BIOS aus, sondern sammelt alle Daten selbst. Rauszubekommen an welcher Stelle umgedreht wird ist nicht ganz ohne. Verkabel sie in der richtigen Reihenfolge und alles wird viel leichter.

Gruss

erstmal vielen Dank für die Antwort, an eine Reperatur ver Windows DVD habe ich garnicht gedacht.
Allerdings wird das so einfach nichts mit der Verlegung von sdb auf sda weil die Windows 7 Platte an einem SATA 3 port hängt, wärend die Alte, also die Windows XP Platte, an einem Sata2 Port angeschlossen ist (hier natürlich am ersten).

Würde es was bringen die Sata2 Platte an einen der anderen Sata2 Anschlüsse anzuschließen?
Und welchen Vorteil hätte das die Festplatten am Ende zu vertauschen (also: sda <-> sdb)?
Das hängt vermutlich damit zusammen, dass Grub auf die Windows 7 Platte muss oder? Immherin habe ich im Bios ja eingestellt, dass von diesr Platte gebootet werden soll.

Ich empfehle das findgrub Skript, das auch nach dem Windows Bootloader sucht. Die letzte Version findest Du hier: Looking for Grub and Windows bootloader in all partitions.

Ja, das kann Grub mit chainload nicht booten. findgrub -d shaut den bootsector. Dann siehst Du auch, ob es verschluesselt ist.

In den meisten Faellen trifft es nicht zu.

Es ist mir nicht klar auf welche Platte (welches BIOS device), Du Linux installieren moechtest. Falls nicht auf die erste Platte, solltest Du - unter normalen Umstaenden, wenn Du nicht weiter tricksen willst - Grub im MBR installieren. Es geht, soweit die Windows Partition nicht verschluesselt ist und den Grub Bootloader nicht ueberschrieben wird (mit Windows passiert es frueher oder spaeter). Einige Leute installieren Grub in den erweiterten Partition der zweiten Platte - die dann aktiv sein soll -, aendern die Boot Reihenfolge im BIOS und haben damit erfolg.

Um schlechte Ueberraschungen zu vermeiden, wuerde ich beim openSUSE Partitionsetup auf jeden Fall IMMER die letzte Option (‘Create partition setup’ - fuer Experte) waehlen, statt irgendwelche mehr oder weniger kluge Vorteile anzupassen.

Danke nochmals für die Hilfe, ich möchte aber gleich klarstellen, dass ich nicht einfach so an den Paritionseinstellungen rumgespielt habe, ich habe nur die vorgeschlagene Reduktion einer der Primären Paritionen entfernt sowie die Festlegung der Mount-Punkte der erkannten Windows Paritionen geändert (wie gesagt liegt meine Windows 7 Festplatte auf sab und somit wurde die eigentliche Windows 7 Festplatte nicht als C sondern als E oder so gemountet) desweiteren habe ich die Linuxparition eben auf die 2. Partition der alten XP Platte verschoben.

Würde es etwas bringen die Daten auf der alten Windows XP Platte (sda) anderweitig zu sichern und dann vollständig neu zu Paritionieren? Mit der Folge das ich Opensuse dann direkt auf die erste Partition der sda Platte installiere? Das müsste doch den 128GB Hinweis vermeiden oder (ist sowieso nicht relevant, dass ist klar)?

Das Problem ist nur die angesprochene 100MB Parition von Windows 7 auf sdb. Um die Probleme mit Bitlocker zu vermeiden kann ich auf eine Verschlüsselung der Systemparitition verzichten, wenn ich das aber richtig verstehe muss Grub auf die 100MB Partition richtig?
Die alternative wäre die Bootreihenfolge so zu ändern (im Bios), dass ich Standardmäßig von SATA 1 also der sda Platte boote?
Wie würde der Installer jetzt aber bei der aktuellen Konfiguration den Bootloader installieren? Würde es den auf die sda Platte schreiben und in der Folge garnicht booten weil ja sowieso im BIOS sdb als Bootplatte eingestellt ist?

sda, sdb, etc bedeutet nicht viel. Wichtiger sind BIOS devices (0x80, 0x81) und/oder Grub devices (hd0, hd1). Normalerweise entspricht sda hd0. Es gibt aber Ausnahmen, je nachdem wie die Platten verkabelt sind und wo man Linux installiert.

Wie schon erwaehnt kannst Du diesen Hinweis ignorieren.

Also … - bin auch kein Windows Benuzer - aber so viel ich weiss sollte die Windows Partition die erste sein. Wenn der Windows Bootloader (BOOTMGR) die Systemdateien auf der ersten Platte sucht, diese aber die zweite geworden ist, klappt es nicht.

Das aber auf gar keinen Fall !!!

Es gibt ein trick. James hat seine Method hier erlautert : Looking for Grub and Windows bootloader in all partitions.

Die Windows7 ist auf SATA1 verkabelt, Die Bootreihenfolge ist aber geaendert und es wird von der zweiten Platte gebootet (wo sich Linux befindet). Ob sich die Linux Partition sda oder sdb nennt ist vom /boot/grub/system.map abhaengig und ist auch nicht so wichtig. Nirgendwo sollte man Device Namen verwenden (wie z. B. in /etc/fstab) sondern Disk UUIDS oder Labels. Dann spielen Device Namen keine Rolle. Grub hat dann einen Eintrag, der Windows bootet, z.B.:

root (hd0,0)
chainloader +1

Es koennte aber, je nach system.map (hd1,0) heissen. (findgrub zeigt Dir alles. Dafuer brauch man aber erstmal Linux)

Ich habe’s nicht versucht (werde auch nicht, da ich Windows nicht brauche). Aber wenn man, statt die Windows Partition, die erste Platte chainload, deren MBR ein Standardbootcode enthaltet - wie von bootrec /fixmbr erstellt - und die Windows Bootpartition aktiv ist - waere auch das Booten einer verschluesselten Windows Partition kein Problem, da es dann nicht direkt von Grub gebootet wird. (Reine Spekulation, aber so denke ich’s mir)

root (hd0)
chainloader +1

Auf jeden Fall in die “Advanced Boot Options” reinschauen. (deswegen auch immer die letzte Option im Partitionsetup waehlen - wirklich!) Es ist naemlich der wichtiger Teil. Du entcheidest, wo Du Grub (stage1) installierst, entweder in MBR oder im Linux root Parition (falls es eine Primaere Partition ist), ansonsten im Bootsector der erweiterten Partition… aber unter keinen Umstaenden im Bootsector einer Windows Partition ! Du kannst auch Grub mehrmals ( = an verschieden Stellen) installieren, z. B. im MBR der Platte, auf der Linux installiert geht (nicht der Windows 7 Platte !)

Es muss Dir erstmal klar sein, wer sda und sdb sind. Wie gesagt, es kommt darauf an. Es ist auch moeglich, dass sda beim naechsten Boot mal als sdb auftaucht. (Ja, es kommt vor.) Besonders bei Anderungen der Verkabelung und /oder BIOS Reihenfolge, sowie IDE/SATA Mischung, muss man gut aufpassen. Einfach gut aufpassen (Advanced Boot Options).

Auf jeden Fall in die “Advanced Boot Options” reinschauen. (deswegen auch immer die letzte Option im Partitionsetup waehlen - wirklich!) Es ist naemlich der wichtiger Teil. Du entcheidest, wo Du Grub (stage1) installierst, entweder in MBR oder im Linux root Parition (falls es eine Primaere Partition ist), ansonsten im Bootsector der erweiterten Partition… aber unter keinen Umstaenden im Bootsector einer Windows Partition ! Du kannst auch Grub mehrmals ( = an verschieden Stellen) installieren, z. B. im MBR der Platte, auf der Linux installiert geht (nicht der Windows 7 Platte !)

Es muss Dir erstmal klar sein, wer sda und sdb sind. Wie gesagt, es kommt darauf an. Es ist auch moeglich, dass sda beim naechsten Boot mal als sdb auftaucht. (Ja, es kommt vor.) Besonders bei Anderungen der Verkabelung und /oder BIOS Reihenfolge, sowie IDE/SATA Mischung, muss man gut aufpassen. Einfach gut aufpassen (Advanced Boot Options).

… genau da fiel mir ein, wie ich’s gemacht hatte (nur dass bei mir auf der ersten Platte auch ein Linux ist, aber das spielt ja keine Rolle):

Die erste Platte (mit Windows 7) nicht verändern, sondern von der zweiten Platte die XP-Reste sichern und diese ganze Platte für suse verwenden.
Angenommen, diese Platte ist “sdb”.
Während der Installation darauf achten, dass “sdb” bootfähig gemacht und Grub in den MBR von “sdb” installiert wird.
Der Bootloader auf der ersten Platte “sda” bleibt unangetastet.
Danach hast Du 2 bootfähige Platten,
Das ergibt allerdings auch einen kleinen Nachteil:
Bei jedem Booten musst Du in’s BIOS (Boot-Menu), und die Platte auswählen, von der Du booten willst.

Wenn Du jegliches Risiko ausschalten willst, bau vor der Installation die Platte mit Deinem Windows 7 aus und nach der Installation wieder ein.
Linux ist in der Hinsicht sowas von gutmütig dass es ihm sowieso egal ist, und Windows wird den kleinen Besch… gar nicht bemerken.

greetz

stef

Nicht unbedingt. Das waere auch zu umstaendlich.

  • Windows auf SATA1
  • Linux auf SATA2 (ob da auch eine andere NTFS partition liegt, spielt keine Rolle)
  • in BIOS, SATA2 als erster Boot device einstellen.
  • SATA1 MBR wie schon gesagt nicht anfassen.
  • Grub in SATA2 MBR und/auch im Bootsector der Linux root partition

Die Frage ist dann: wer ist hd0 ? Die Platte die am SATA1 haengt (manche Mainboards haben auch SATA0) oder die, die im BIOS die Bootprioritaet hat. Darauf gibt es keine eindeutige Antwort. Es kommt vom Mainboard davon ab.

Wenn man darauf besteht, Linux auf sdaX Partitionen zu haben, kann man - bevor man Grub installiert/wiederinstalliert eine /boot/grub/system.map schreiben :

(hd1)    /dev/sda
(hd0)    /dev/sdb

Erst dann Grub neu installieren und /boot/grub/menu.lst dementsprechend aendern.
Ob Linux auf sda oder auf sdb liegt haengt davon ab, wie (und wenn) das Linux Setup eine system.map Datei erstellt hat. Manche Distros tun, andere nicht. OpenSUSE normalerweise schreibt eine, benutzt aber keine sda, sdb-Namen, sondern disk-by-IDS oder by-UUIDS Eintraege.

Nun, mit dem folgenden Eintrag in Grub bootmenu

root (hd0)
chainloader +1

wird wieder von der erste Platte gebootet - als waere sie die erste im BIOS. Deswegen klappt es mit Windows auch. Dann sollte es weiter auch egal sein, ob die Windows Partition verschluesselt ist oder nicht.

  • Ich mache es selber nicht, habe an Windows weder Zeit noch Interesse. Aber so habe ich es verstanden von Leuten, die diese Methode verwenden.

Ich muss mir die Tipps erstmal genau durchlesen, aber eine Sache ist vieleicht wichtig: die Windows 7 Platte hängt nicht an SATA1 sondern am Sata 3 (6GB/s) Port davon habe ich zwei auf dem Board die andere Platte hängt an einem Sata 2 Port, genauer an SATA1.

Dann solltest Du vllt. bevor Du suse installierst, es erst mal im Live-Modus starten, dann in suse über “Yast” den “Partitionierer” starten und dir, natürlich ohne etwas zu partitionieren, die Typen und Grössen der Platten notieren.
Dann unter Windows über die Systemsteuerung die gleichen Infos besorgen und die Daten vergleichen, um die richtige Platte rauszufinden.
Auf die Weise kannst Du sie zu Beginn der Installation wunderbar zuordnen.

edit:
@ please_try_again:
tolle Lösung - wieso kam ich da nicht drauf ?

stef

Wenn ich das richtig verstehe kann ich also folgendes machen:

  1. die alte Windows XP Platte leerräumen und im Bios als Boot Platte einstellen
  2. dann während der openSUSE Installation die neue Boot-Platte Partitionen/Formatieren und dort dann auch opensuse installieren bzw. als Installations-Partition wählen
  • wenn ich das so mache, dann solte Grub auch automatisch auf dieser Partitio/Platte installiert werden und nicht auf der Windows 7 Platte?
  1. unter Umständen nach der Installation die Grub Konfiguration anpassen.

Ja - wenn Du es so machst wie von “please_try_again” beschrieben wird es funzen.
Du brauchst aber im BIOS nix einzustellen; Du gibst ja Grub mit dem zusätzlichen Eintrag in die menu.lst den Befehl, von welcher Platte es booten soll.
Dann solltest Du, wenn Du den Rechner hochfährst, das Bootmenu von Grub angezeigt bekommen mit den Einträgen aller installierten OS/Kernels.
Dort kannst Du dann wählen, was Du booten willst.

greetz
stef

Ja, aber automatisch sollte man keinem Installer trauen. YasT installiert Grub bestimmt nicht im MBR der Windows Platte, nicht mal im MBR der anderen Platte. Standardweise nimmt er seine root/boot Partition oder die erweiterte Partition (und macht diese Partitions aktiv). Ich wuerde aber nicht davon ausgehen, dass YaST in jeder Situation das richtige macht. Das tut er eben nicht. Jeder Rechner ist verschieden. Aber, Du entscheidest wo der Grub bootlader geschrieben wird. Es ist zwar zwei Clicks vom Hauptdialog entfernt - es faellt nicht auf ! -, ich weiss auch nicht genau wie es auf Deutsch heisst, hat aber mit “Boot Optionen” zu tun. Dort kannst Du alles einstellen, wo Grub installiert wird und welche Partition aktiviert werden soll. Ich wuerde auch nicht damit rechnen, dass YaST bei Windows 7 den richitigen Eintrag in Bootmenu einfuegt, aber das kann man spaeter machen. Ein Chainload des anderen Platte MBR, wie ich es schon erwaehnt habe, muss man auf jeden Fall selber schreiben - So klug ist YaST auch nicht. :wink:

Richtig - man sollte ihn “nicht einfach so machen lassen”.
Bei mir **hat **Yast auf der entsprechenden Platte einen MBR agelegt und Grub dort installiert, aber ich musste es ihm während der Installation (aufpassen!) schon sagen.

Auch wenn Yast standardmässig vorgeht und seine root/boot oder die erweiterte Partition aktiv macht, wäre es i.O.

sabo’s grösste Sorge war ja, dass die Win 7 Platte und deren MBR nicht angetastet werden.

stef

Das mag YaST ‘unter Umstaenden’ auch gern tun. (In diesem Fall nicht). Dennoch schreibt es nicht den Grub bootloader an dieser Stelle sondern ein ‘Generic Bootcode’ - das gleicht einem bootrec /fixmbr. Es stoert Windows keineswegs, ganz im Gegenteil. Wenn man aber mehrere Linux Distros betreibt und sich schon einen anderen Grub im MBR befindet, sieht es dagegen ganz anders aus. Tja, auf dieser Welt, wie auch im openSUSE Setup, scheint doch alles auf Windows zugeschnitten .

Also nochmal keine Sorge. Windows Partitonen Boosektor fasst YaST nicht an, MBR in der Regel auch nicht, und wenn schon “standardweise” mit einem Generic Bootcode, genau das, was Windows an dieser Stelle haben will. (das gilt aber nicht fuer andere Linux Distros, nur openSUSE). Solltest Du unaufgepasst Grub im MBR der Windows Partition schreiben - was allerdings auch moeglich ist - waere es schnell mit einem bootrec /fixmbr repariert.

Wenn ich aber nicht umstelle, dann wird doch vom Bios der Windows Bootloader geladen, weil ja die Windows 7 Platte als Bootplatte eingestellt ist. Grub liegt doch auf der anderen Platte an die das BIOS ja garnicht “weitergibt”, oder habe ich das völlig falsch verstanden?

Ja. Das ist auch der Sinn der Sache.

:slight_smile: also entweder stehe ich jetzt völlig auf dem Schlauch oder wir reden aneinander vorbei.
Um das zu klären schreibe ich mal was ich denke, bitte sagt mir wo mein Denkfehler liegt.

Wenn ich wie oben beschrieben, openSUSE auf die andere Platte installiere (und damit auch den Bootloader Grub) aber weiterhin die jetzige Windows 7 Festplatte im Bios als Boot Device eingestellt habe, dann wird mir openSUSE niemals gebootet weil am Bootloader auf der Windows 7 Platte ja nichts geändert wurde und das BIOS eben immer noch einfach an den Windows Bootloader (oder MBR) “weitergibt”.
Deshalb muss ich doch im BIOS die openSUSE Platte (also die Platte auf der Grub liegt) als Bootplatte einstellen, Grub erst lässt mir dann die Wahl zwischen opsenSUSE und Windows 7. Liegt ich hier falsch oder nicht? Falls nicht dann verstehe ich den Hinweise von schnuddel55 nicht der ja meint ich sollte im BIOS nichts ändern, also die Windows 7 Festplatte (auf der ja nichts geändert wurde) weiterhin als 1. Boot Device stehen lassen.

Richtig. Aber viele Leute wollen es auch so haben: Windows und Linux dual booten, aber doch die Moeglichkeit behalten, irgendwann es schnell und einfach rueckgängig zu machen. (deswegen, “der Sinn der Sache”). Ich glaube, sie sorgen sich um ihren Windows. Ich kann’s auch nicht verstehen. :wink:

Richtig. Wir haben auch nichts anderes gesagt.

Ich glaube, er meinte, dass Du dann nicht jedesmal den BIOS umstellen brauchst. So hat er selber naehmlich frueher gemacht, wenn ich richtig verstanden habe. Einmal musst Du die Linux Platte als Boot Device einstellen. Dann brauchst Du nicht mehr im BIOS Setup fummeln.

Alles klar, dann war das ein Missverständnis. Ich will auch nicht jedesmal im BIOS das Boot Device ändern, deshalb kann ruhig immer Grub geladen werden.

Jedenfalls werde ich dann im laufe dieses Wochenendes mal installieren, wenn es Probleme gibt melde ich mich nochmal. Danke aber schonmal für die Hilfe.