PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Windows streikt - hal.dll



Seiten : [1] 2

Juuro
26.11.05, 04:19
Ich hab heute erfolgreich OpenSuse 10.0 installiert. Jetzt wollte ich grad mal schaun ob mein Windows noch läuft, aber Pech gehabt:
Die Datei <Windows root>\system32\hal.dll fehlt.
Ich hab mir nun schon angelesen das man die XP CD einlegen soll und mit der [R]-Teste den Reparier-Assistenten starten soll. Der sagt mir aber leider, dass es keine korrekt installierten Festplatten oder Partitionen gibt.
Gibts es eine Möglichkeit wieder an mein Windows ranzukommen?

PS: Ich hab Windows in einer 20 GB Partition. in einer anderen 125 GB Partition sind Daten. Beide sind in NTFS formatiert.

kreol
26.11.05, 04:24
Fahr mal das SuSE hoch und poste die Ausgabe von fdisk -l (kleines L).


Kreol

Juuro
26.11.05, 04:32
Disk /dev/sda: 160.0 GB, 160041885696 bytes
255 heads, 63 sectors/track, 19457 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System
/dev/sda1 * 1 16192 130062208+ 7 HPFS/NTFS
/dev/sda2 16909 19456 20466810 f W95 Ext'd (LBA)
/dev/sda3 16193 16321 1036192+ 82 Linux swap / Solaris
/dev/sda4 16322 16908 4715077+ 83 Linux
/dev/sda5 16909 19456 20466778+ 7 HPFS/NTFS

Partition table entries are not in disk order

kreol
26.11.05, 05:17
Hm, wenn Du grub verwendest: Was steht denn in der /boot/grub/menu.lst? Und kannst Du sda1 mounten?

Kreol

Juuro
26.11.05, 12:20
Das steht in der menu.lst:


# Modified by YaST2. Last modification on Fr Nov 25 20:11:44 UTC 2005

color white/blue black/light-gray
default 0
timeout 8
gfxmenu (hd0,3)/boot/message

###Don't change this comment - YaST2 identifier: Original name: linux###
title SUSE LINUX 10.0
root (hd0,3)
kernel /boot/vmlinuz root=/dev/sda4 vga=0x31a selinux=0 resume=/dev/sda3 splash=silent showopts
initrd /boot/initrd

###Don't change this comment - YaST2 identifier: Original name: windows###
title Windows
chainloader (hd0,0)+1

###Don't change this comment - YaST2 identifier: Original name: floppy###
title Diskette
chainloader (fd0)+1

###Don't change this comment - YaST2 identifier: Original name: failsafe###
title Failsafe -- SUSE LINUX 10.0
root (hd0,3)
kernel /boot/vmlinuz root=/dev/sda4 vga=normal showopts ide=nodma apm=off acpi=off noresume selinux=0 nosmp noapic maxcpus=0 edd=off 3
initrd /boot/initrd


Ähm, wie mounte ich sda1?

Schonmal vielen Dank für deine Bemühungen!

hp_tux
26.11.05, 20:10
Hallo,


Ähm, wie mounte ich sda1?
nun, poste doch bitte mal die Ausgabe von

grep sda1 /etc/fstab

Gruß

hp_tux

Juuro
27.11.05, 00:40
Öhm das ist folgendes:

/dev/sda1 /windows/C ntfs ro,users,gid=users,umask=00 02,nls=utf8 0 0

kreol
27.11.05, 01:34
Dann wird sda1 schon beim Systemstart gemountet. Das kannst Du mit 'mount' prüfen, da sollte '/dev/sda1 on /windows/C ... ' angezeigt werden. Falls nicht, kannst Du das Laufwerk mit mount /windows/C einbinden.

Wenn das Laufwerk gemountet ist, kannst Du mit cd /windows/C in das Verzeichnis wechseln, dort sollte die Dateistruktur von Deinem Win liegen. Mit ls kannst Du nach der Datei suchen bzw sehen, ob irgendwelche weitere Auffälligkeiten an anderen Dateien zu bemerken sind.

Dein Problem scheint aber nicht so selten zu sein. Google mal nach hal.dll, da wird das ausgiebig besprochen.

Mit fällt nur noch ein, die hal.dll ggf. händisch auf sda1 (also /windows/C/system32/hal.dll) aufzuspielen. Das ist unter Linux aber schwierig, weil auf ntfs Partitionen nur eingeschränkt/nicht geschrieben werden kann.... Afaik hat die neue Knoppix einen (eingeschränkten) Schreibsupport, das weiß ich aber nicht genau.

Ansonsten versuche die Daten von sda1 zu sichern und spiele Win neu auf. Was besseres fällt mit leider nicht ein.

Btw.: Für Partitionen, auf die sowohl Win als auch Linux zugreifen sollen bietet sich FAT32 an, da können beide OS lesen und schreiben...


Kreol

Juuro
27.11.05, 01:37
Okay! Vielen Dank! Wahrscheinlich werd ich alles komplett löschen und dann beides neuaufspielen, so lange bis beides läuft! ;)

kreol
27.11.05, 01:45
Warum willst Du ein laufendes SuSE killen? Windows läßt sich auch nachinstallieren, Du mußt 'nur' den mbr anschließend neu einrichten, da gibt es hier jede Menge Threads zu.

Wenn das nicht klappt und Du aber eh alles plattmachst, würde ich eine weitere Partition mit FAT32 einrichten, die Du unter Win und Linux sharen kannst.


Kreol

Juuro
27.11.05, 01:53
Achso, das geht auch? Naja es ist so dass ich bsiher nicht wirklich gut mit SuSE zurecht komme.
ich hab grad leider nicht viel Zeit zum Rumprobieren. Darum wärs mir lieb wenns einfach laufen würde. Egal ob Linux oder Windows.
Aber ja mal sehen... meine Neugier wird mich wohl eh trotzdem dazu bringen das mal zu testen! ;)

stefan-tiger
27.11.05, 07:20
Disk /dev/sda: 160.0 GB, 160041885696 bytes
255 heads, 63 sectors/track, 19457 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System
/dev/sda1 * 1 16192 130062208+ 7 HPFS/NTFS
/dev/sda2 16909 19456 20466810 f W95 Ext'd (LBA)
/dev/sda3 16193 16321 1036192+ 82 Linux swap / Solaris
/dev/sda4 16322 16908 4715077+ 83 Linux
/dev/sda5 16909 19456 20466778+ 7 HPFS/NTFS

Partition table entries are not in disk order

Soweit ich mich erinnere mögen Betriebsysteme (Windows, evtl. auch Linux) es nicht wenn man mehrere primäre Paritionen benutzt.

Da du mehrere primäre hast, aber nur eine aktiv sein kann, sind die anderen versteckt.
Hast du sda4 aktiv weil du davon Linux booten kannst, dann ist sda1 versteckt und grub kann damit anscheinend nicht umgehen oder man muss es extra dafür einrichten.

Ich rate dir zu folgendem, was bestimmt klappt:


Device Boot Start End Blocks Id System
/dev/sda1 * 1 16192 130062208+ 7 HPFS/NTFS
/dev/sda2 16909 19456 20466810 f W95 Ext'd (LBA)
/dev/sda5 16193 16321 1036192+ 82 Linux swap / Solaris
/dev/sda6 16322 16908 4715077+ 83 Linux
/dev/sda7 16909 19456 20466778+ 7 HPFS/NTFS]

Hannes 2000
27.11.05, 07:57
Wieso dass ist ja kein Problem von Grub, sondern ein Problem von Windows.

MiGo
27.11.05, 11:37
Soweit ich mich erinnere mögen Betriebsysteme (Windows, evtl. auch Linux) es nicht wenn man mehrere primäre Paritionen benutzt.
Wo hast du denn den Unfug her?

JPMonti
27.11.05, 11:58
hey, das hat nichts mit linux zu tun. das ist ein reines windows problem. der fehler tritt auf - zumindest war es bisher bei mir immer so - wenn die boot.ini auf der ersten windows partition beschädigt oder nicht mehr da ist. dann findset windows die Hardware Layer Detect nicht, und das wird wohl als erstes gestartet. wahrscheinlich fehlt in der boot.ini ein eintrag wie:

multi(0)disk(0)rdisk(1)partition(1)\WINDOWS="Microsoft Windows XP" /fastdetect

oder so ähnlich. den musst du auf dein system anpassen.

Juuro
27.11.05, 14:45
@stefan-tiger:
Danke, aber Grub findet Windows ja. Nur Windows bekommts dann nicht gebacken zu booten weil diese hal.dll fehlt.
Ich hab nu auch mal nachgeschaut, die fehlt eben wirklich. Und weil ich NTFS als Dateisystem hab, hab ich wohl auch keine Chance die wieder da hinzukopieren o.ä.

ml
27.11.05, 15:44
Wahrscheinlich hat sich die Nummer der Windows-Partition geändert => boot.ini anpassen!

Juuro
27.11.05, 15:46
Mjo, abr das kannich doch nur wennich schreibrechte hab. Und die ahbbich aj nciht, da das Windows auf NTFS läuft.

ml
27.11.05, 16:00
Das kannst du schon, einfach von der Windows-CD booten und dann Rettungskonsole mit R (afaik) starten und boot.ini editieren!

Eventuell auch fixboot eingeben, fixmbr würde ich aber nicht ausführen da sonst Grub überschrieben wird!

Juuro
27.11.05, 16:19
Wenn ich den Rettungsassistenten mit R starte, dann kommt das er keine Installation findet!

JPMonti
27.11.05, 16:55
nicht den rettungsassisstenten starten. geh in die recovery konsole. dort, wie ml schon sagt, fixboot ausführen, der sucht dann nach windows-installationen. so sollte das gehen.

Juuro
27.11.05, 17:18
Aha, und wie komm ich da hin?

HEMIcuda
27.11.05, 18:11
Wo hast du denn den Unfug her?
War auch grad mein Gedanke.

'cuda

ml
27.11.05, 20:24
Aha, und wie komm ich da hin?

Drücke mal "K" statt "R"!

Juuro
27.11.05, 20:49
Aha, okay danke! Werd ich testen!

stefan-tiger
27.11.05, 21:41
Wo hast du denn den Unfug her?

Ich hab da was in Erinnerung, was aus DOS & Win 95 Zeiten, daß man nur auf einem primäre Partition gleichzeitig zugreiffen kann und alle andere dann verstckt sind.

Und seit dem hatte ich keine Probleme mehr mit Partitionen, weil ich, wie ich vermute, immer nur max. eine primäre Partition pro Platte eingerichtet hab.

Schliesslich drängt sich ja auch schon bei der Bezeichnung "primär" der Gedanke auf nur eines davon zu einzurichten.

Worin liegt der Vorteil, oder warum sollte man mehrere primäre Partitionen erstellen?

tholan
27.11.05, 21:55
hi,
wies aussieht, haut da doch was mit Deinen Partitionstabelleneinträgen nicht hin:


/dev/sda1 * 1 16192 130062208+ 7 HPFS/NTFS
/dev/sda2 16909 19456 20466810 f W95 Ext'd (LBA)
/dev/sda3 16193 16321 1036192+ 82 Linux swap / Solaris
/dev/sda4 16322 16908 4715077+ 83 Linux
/dev/sda5 16909 19456 20466778+ 7 HPFS/NTFS



Das meckert fdisk ja auch an. Du hast 3 Primäre: sda1, die Aktive, dann kommt sda3,
die swap, dann sda4, dann die Erweiterte sda2 mit der NTFS sda5 drin.
Frag mich, wie Du das geschafft hast, riecht irgendwie nach pqmagic.
Egal: fdisk kennt nen Parameter, mit dem du die Nummerierung der Partitionen
wieder korrigieren kannst:
fdisk /dev/sda
dann "x" drücken für "extra functionality"
dann "f" drücken für "fix partition order"

dann wird allerdings sda3 zu sda2, sda4 zu sda3, sda2 zu sda4 und sda5 bleibt sda5.
Schätze, dann mußt Du Deine fstab anpassen. grub natürlich auch, sonst findet der
sich nicht mehr. Ist aber alles SEEEHR GEFÄHRLICH und ich weiß auch nicht,
ob das der Grund ist, warum Windows nicht mehr will. Vielleicht kann da noch jemand
anders weiterhelfen.

Der letzte Verzweiflungsschritt unter fdisk währe dann: "w"
Das schreibt die neuen Partitionstabelleneinträge und beendet fdisk.
Danach solltest Du vor'm "reboot" beten, daß grub sich selbst wiederfindet.

viel Glück!

p.s.
no risk no fun!

tholan
27.11.05, 22:24
Worin liegt der Vorteil, oder warum sollte man mehrere primäre Partitionen erstellen?

Schätze mal, das hat nix mit Vorteilen zu tun, das wird wohl einfach 'ne
Erweiterung gewesen sein. Festplatten hatten früher nur bescheidene Größen,
das fing an bei 5Megabyte. Wichtig wurden die Partitionen dann, als die 12 Megabyte-
grenze bei der FAT12 überschritten wurde.
In so'n MBR passt ja auch nicht viel rein, der ist gerade mal 512Byte groß.
Du kannst 4 Primäre Partitionen erstellen, das sind halt 4 Plätze für die Startadressen
und die Endadressen der Partitionen der nicht größer werden darf,
weil die Bits dahinter wieder 'ne andere Bedeutung haben.
Wenn man also mehr Partitionen haben möchte oder braucht, dann macht man die letzte
der primären Partitionen zum Rahmen für weitere Partitionen, wie es jetzt der Fall ist.

Juuro
28.11.05, 01:22
Übrigens:
Hab grad spaßeshalber nochmal die XP CD eingelegt und wollte davon booten. Seltsamerweise bleibt das Programm hängen, bevor das Installationsmenü erscheint. Dachte schon die CD wäre futsch, aber bei meinem Notebook, funktionierts tadellos! :rolleyes:
Woran das nu wohl wieder liegt?

kreol
28.11.05, 02:03
Sicher das Deine HD keinen Schlag hat? Unter Linux würde ich mal fsck drüberlaufen lassen, für die ntfs habe ich k.A., aber auf der hp des Herstellers sollte es Tools zum checken geben.

Kreol