>>> Strona Główna >>> Menu Główne >>> Windows >>>
MENU

hal.dll



Jeden z problemów z plikiem hal.dll powstaje po instalacji nowego systemu operacyjnego. Tak na prawdę chodzi jednak o to, że zmieniła się ilość partycji i w związku z tym wpisy dotyczące tego na której partycji zainstalowany jest windows zdezaktualizowały się. Opis rozwiązania dotyczy więc naprawy po "zabawie" z partycjami

Na ekranie po wyborze by uruchomił się windows widzimy:

Windows could not start because the following file is missing or corrupt

Windows root>\system32\hal.dll
Please re-install a copy of the above file

Zakładam, że mamy zainstalowanego linuxa - wtedy po jego uruchomieniu logujemy się jako root ( a najlepiej uruchamiamy konsolę z uprawnieniami roota) i wpisujemy cfdisk (aby wyjść z programu - strzałkami bocznymi wybieramy quit i enter :) ) - u mnie rezultat wygląda tak:

 Name    Flags  Part Type FS Type    [Label] Size (MB)
 -----------------------------------------------------
 hda1    Boot   Primary   NTFS       [^A]    10618.84
 hda5           Logical   NTFS                1488.78
 hda6           Logical   NTFS       [^A]    15414.18
 hda7           Logical   Linux ext3         14451.82
 hda8           Logical   Linux swap           649.80
 hda9           Logical   Linux ext3         15274.35
 hda10          Logical   Linux ext3         15002.92
 hda11          Logical   W95 FAT32           6975.04
 hda12          Logical   NTFS       [^A]    13382.54
 hda13          Logical   NTFS       [^A]    14566.98
 hda14          Logical   NTFS       [^A]    12206.32

W momencie jak w miejsce skasowanej partycji utworzyłem 2 partycji hda10 i hda11 to windows który jest na partycji hda12 przesunął się o jedną pozycję

Aby to naprawić trzeba wejść do pliku boot.ini (jest on na w katalogu głównym (c:\boot.ini) i zmodyfikować linię dotyczącą tejże partycji której numer się zmienił. Linia która będzie modyfikowana:

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

Wystarczy jedynie zmienić partition(8) na partition(9) bo o tyle "przesunęła się" partycja. Plik boot.ini po modyfikacji u mnie (mam 3 systemy windows) wygląda tak:

[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(9)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(9)\WINDOWS="Microsoft Windows XP Professional" /fastdetect

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

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

Oczywiści każdy wpis w sekcji [operation systems] zajmuje jedną linię.

O takie zmiany najłatwiej gdy dysponujemy właśnie więcej niż jednym systemem windows (najlepiej na partycji podstawowej). Wniosek mam taki że najlepiej mieć system windows xp na partycji głównej (primary) - standardowo oznaczona jest jako C. Wtedy problem z plikiem hal.dll może nas nie dotknąć. A jeśli mamy windowsa także na innej partycji wtedy w prosty sposób można naprawić błąd

Jeśli się pogubimy w numerach partycji skasowanych i utworzonych można to policzyć w pliku fstab, licząc na której pozycji od góry znajdują się partycje windowsowskie i następnie dodając linię z tymi partycjami do pliku boot.ini

Przykładowo jeśliby nie było wiadomo z jakiś względów na której partycji jest windows można dać taki plik boot.ini:

[boot loader] timeout=30
default=multi(0)disk(0)rdisk(0)partition(9)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(9)\WINDOWS="Microsoft Windows XP Professional" /fastdetect

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

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

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

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

I testować kolejne pozycje a potem usunąć te które nie wskazują na windowsa. W moim przypadku oznaczało by to że dla pozycji 4 i 5 wyświetli się komunikat o braku pliku hal.dll gdy wybiorę je do uruchomienia systemu, czyli są one do usunięcia.



W przyszłości nieco skrócę i zmodyfikuję opis problemów z plikiem hal.dll

Zapraszam do skomentowania i ocenienia artykułu:

Oceń Artykuł:

Aktualna ocena: 3.0

Aby dodać komentarz uzupełnij poniższe pola.

Imie
E-mail
Treść

Aby dodać komentarz konieczne jest podanie Imienia i Treści

Tu wpisz słowo komentarz
Imie: autor e-mail: 05-08-2007 16:44:31pm
Przy operacjach zakładania/usuwania partycji taki problem się pojawia - jednak mogą być i inne przyczyny.
Jeśli nic z partycjami nie było robione - to przypusczam że w tym wypadku faktycznie uległ uszkodzeniu plik hal.dll
Rozumiem że chodzi o system recovery wykonywane po bootowaniu z płyty instalacyjnej ?
Całkiem możliwe że najszybszym rozwiązaniem byłoby zainstalowanie windowsa od nowa.
Imie: kamila e-mail: 05-08-2007 12:54:49pm
hmmm witam, wlasnie taki problem wyskoczyl u mnie i nie mam pojecia co zrobic - napisane tam zostalo jednak ze to przy linuksie jest? nie rozumiem.. wszystko zaczelo sie od tego ze chcialam zrobic system recovery i wyskoczylo mi wlasnie takie cos, co robic?
Imie: autor e-mail: 09-06-2007 21:31:18pm
Witam,
Ten artykuł dotyczy właśnie systemu Windows XP :)
Powodzenia!
Imie: koks e-mail: www.wojciechowskabeata@poczta.tp.pl 07-06-2007 17:24:05pm
ten artykuł jest super czy wiedziałbyś jak to naprawić w windows xp proszę o pomoc
Valid XHTML 1.1 © Copyright 2007-2011