ďťż
 
 
   [+] Odzyskanie mbr i uruchomienie dwóch systemów - grub
 
 

Tematy

 
    
 

 

 

 

[+] Odzyskanie mbr i uruchomienie dwóch systemów - grub





mlodir - 05-07-2009 12:14
Mam problem z wystartowaniem systemu Windows XP (niestety nie jestem sam inni też korzystają z tego komputera). Podczas gdy wybieram system Windows XP otrzymuję jedynie komunikat Starting up...GRUB Przeinstalowałem gruba komendą grub-install /dev/hda Niestety nic to nie dało. Domyśliłem się, że chodzi o MBR więc odpaliłem płytę instalacyjną Windows XP i wykonałem fixmbr i fixboot Dalej nic. Mój plik menu.lst: # menu.lst - See: grub(8), info grub, update-grub(8)
#            grub-install(8), grub-floppy(8),
#            grub-md5-crypt, /usr/share/doc/grub
#            and /usr/share/doc/grub-legacy-doc/.

## default num
# Set the default entry to the entry number NUM. Numbering starts from 0, and
# the entry number 0 is the default if the command is not used.
#
# You can specify 'saved' instead of a number. In this case, the default entry
# is the entry saved with the command 'savedefault'.
# WARNING: If you are using dmraid do not change this entry to 'saved' or your
# array will desync and will not let you boot your system.
default                3

## timeout sec
# Set a timeout, in SEC seconds, before automatically booting the default entry
# (normally the first entry defined).
timeout                5

# Pretty colours
color cyan/blue white/blue

## password ['--md5'] passwd
# If used in the first section of a menu file, disable all interactive editing
# control (menu entry editor and command-line)  and entries protected by the
# command 'lock'
# e.g. password topsecret
## password --md5 $1$gLhU0/$aW78kHK1QfV3P2b2znUoe/
# password topsecret

#
# examples
#
# title                Windows 95/98/NT/2000
# root                (hd0,0)
# makeactive
# chainloader        +1
#
# title                Linux
# root                (hd0,1)
# kernel        /vmlinuz root=/dev/hda2 ro
#

#
# Put static boot stanzas before and/or after AUTOMAGIC KERNEL LIST

### BEGIN AUTOMAGIC KERNELS LIST
## lines between the AUTOMAGIC KERNELS LIST markers will be modified
## by the debian update-grub script except for the default options below

## DO NOT UNCOMMENT THEM, Just edit them to your needs

## ## Start Default Options ##
## default kernel options
## default kernel options for automagic boot options
## If you want special options for specific kernels use kopt_x_y_z
## where x.y.z is kernel version. Minor versions can be omitted.
## e.g. kopt=root=/dev/hda1 ro
##      kopt_2_6_8=root=/dev/hdc1 ro
##      kopt_2_6_8_2_686=root=/dev/hdc2 ro
# kopt=root=/dev/hdb1 ro

## default grub root device
## e.g. groot=(hd0,0)
# groot=(hd1,0)

## should update-grub create alternative automagic boot options
## e.g. alternative=true
##      alternative=false
# alternative=true

## should update-grub lock alternative automagic boot options
## e.g. lockalternative=true
##      lockalternative=false
# lockalternative=false

## additional options to use with the default boot option, but not with the
## alternatives
## e.g. defoptions=vga=791 resume=/dev/hda5
# defoptions=vga=773

## should update-grub lock old automagic boot options
## e.g. lockold=false
##      lockold=true
# lockold=false

## Xen hypervisor options to use with the default Xen boot option
# xenhopt=

## Xen Linux kernel options to use with the default Xen boot option
# xenkopt=console=tty0

## altoption boot targets option
## multiple altoptions lines are allowed
## e.g. altoptions=(extra menu suffix) extra boot options
##      altoptions=(single-user) single
# altoptions=(single-user mode) single

## controls how many kernels should be put into the menu.lst
## only counts the first occurence of a kernel, not the
## alternative kernel options
## e.g. howmany=all
##      howmany=7
# howmany=all

## should update-grub create memtest86 boot option
## e.g. memtest86=true
##      memtest86=false
# memtest86=true

## should update-grub adjust the value of the default booted system
## can be true or false
# updatedefaultentry=false

## should update-grub add savedefault to the default options
## can be true or false
# savedefault=false

## ## End Default Options ##

title                Debian GNU/Linux, kernel 2.6.26-2-686
root                (hd1,0)
kernel                /boot/vmlinuz-2.6.26-2-686 root=/dev/hdb1 ro vga=773
initrd                /boot/initrd.img-2.6.26-2-686

title                Debian GNU/Linux, kernel 2.6.26-2-686 (single-user mode)
root                (hd1,0)
kernel                /boot/vmlinuz-2.6.26-2-686 root=/dev/hdb1 ro single
initrd                /boot/initrd.img-2.6.26-2-686

### END DEBIAN AUTOMAGIC KERNELS LIST

# This is a divider, added to separate the menu items below from the Debian
# ones.
title                Other operating systems:
root

title                Windows XP
root                (hd0,0)
makeactive
chainloader        +1

# This entry automatically added by the Debian installer for a non-linux OS
# on /dev/hda1
title                Microsoft Windows XP Professional
root                (hd0,0)
savedefault
makeactive
chainloader        +1 fdisk -l
Disk /dev/hda: 40.0 GB, 40060403712 bytes
255 heads, 63 sectors/track, 4870 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0xa4c3a4c3

  Device Boot      Start        End      Blocks  Id  System
/dev/hda1  *          1        2167    17406396    c  W95 FAT32 (LBA)
/dev/hda2            2168        4334    17406427+  f  W95 Ext'd (LBA)
/dev/hda3            4335        4870    4305420    7  HPFS/NTFS
/dev/hda5            2168        4334    17406396    7  HPFS/NTFS

Disk /dev/hdb: 40.0 GB, 40020664320 bytes
255 heads, 63 sectors/track, 4865 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0xa9b3a9b3

  Device Boot      Start        End      Blocks  Id  System
/dev/hdb1              1        637    5116671  83  Linux
/dev/hdb2            3825        4865    8361832+  7  HPFS/NTFS
/dev/hdb3            1732        3824    16812022+  5  Extended
/dev/hdb4            638        1731    8787555  83  Linux
/dev/hdb5            1732        3735    16097098+  83  Linux
/dev/hdb6            3736        3824      714861  82  Linux swap / Solaris

Partition table entries are not in disk order Martwi mnie to ,,W95...'' Liczę na odpowiedź.



ArnVaker - 05-07-2009 13:16
Spróbuj takim wpisem:
title Windows
map (hd0) (hd1)
map (hd1) (hd0)
rootnoverify (hd0,0)
makeactive
savedefault
chainloader +1 Jak nie podziała, to przedstaw okoliczności wystąpienia sytuacji. Dodałeś drugi dysk, jakaś aktualizacja, a może to świeża instalacja Debiana lub Windowsa? Masz Windowsa XP na systemie plików fat32? hda1 to na pewno partycja z Windowsem?

PS Na drugim dysku masz partycje w nieodpowiedniej kolejności.



Katiusha - 05-07-2009 13:56
A czemu na pierwszym dysku (hda) partycja C (tam gdzie jest flaga "boot") jest logiczna a nie podstawowa?
Poza tym z tego co wiem Windows bardzo nie lubi być instalowany na innej partycji niż pierwsza i podstawowa.
Może to miesza i Grub lub MBR głupieje?

Też mam dwa dyski i na każdym osobny Windows, ale na pierwszych partycjach dysku i podstawowych, a Linuksy (Debian i Kubuntu) na logicznych i wszystko działa jak należy.

Tak to wygląda:

root@debian:/home/kati# fdisk -l

Disk /dev/sda: 500.1 GB, 500107862016 bytes
255 heads, 63 sectors/track, 60801 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x751d751d

  Device Boot      Start        End      Blocks  Id  System
/dev/sda1  *          1        5222    41945683+  7  HPFS/NTFS
/dev/sda2            5223      60801  446438317+  f  W95 Ext'd (LBA)
/dev/sda5            5223      31330  209712478+  7  HPFS/NTFS
/dev/sda6          31331      33197    14996646  83  Linux
/dev/sda7          33198      35064    14996646  83  Linux
/dev/sda8          35065      37554    20000893+  83  Linux
/dev/sda9          37555      53206  125724658+  83  Linux
/dev/sda10          53207      56941    30001356  83  Linux
/dev/sda11          56942      60676    30001356    7  HPFS/NTFS
/dev/sda12          60677      60801    1003999+  82  Linux swap / Solaris

Disk /dev/sdb: 160.0 GB, 160040803840 bytes
255 heads, 63 sectors/track, 19457 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x188c188b

  Device Boot      Start        End      Blocks  Id  System
/dev/sdb1  *          1        2550    20482843+  7  HPFS/NTFS
/dev/sdb2            2551      19456  135797445    f  W95 Ext'd (LBA)
/dev/sdb5            2551      16573  112639716    7  HPFS/NTFS
/dev/sdb6          16574      19456    23157666    7  HPFS/NTFS
root@debian:/home/kati#
Martwi mnie to W95... U mnie to wskazuje gdzie zaczynają się (i kończą) partycje logiczne na dysku. Tej "partycji" fizycznie nie ma tzn jako takiej nie widać normalnie, a składają się na nią wszystkie partycje logiczne na dysku i te widać tj. od sda5 do sda12.

/dev/sda2    początek--> 5223  koniec--> 60801  446438317+  f  W95 Ext'd (LBA)



ArnVaker - 05-07-2009 14:27

A czemu na pierwszym dysku (hda) partycja C (tam gdzie jest flaga "boot") jest logiczna a nie podstawowa? Dlaczego uważasz, że to nie jest partycja podstawowa?



Katiusha - 05-07-2009 14:57
Z tego co wiem to "LBA" (Logical Block Addressing) oznacza partycje logiczne.

/dev/hda1  *          1        2167    17406396    c  W95 FAT32 (LBA) Zobacz sam:

http://pl.wikipedia.org/wiki/LBA_(informatyka)



thalcave - 05-07-2009 15:10
Logical Block Addressing to nie partycja logiczna. To przeczyłoby zasadzie oznaczania dysków w Linuksie. Partycje logiczne oznaczone są od numeru 5, 1-4 to partycje podstawowe i rozszerzona.
Wiki o LBA nic nie mówi, żeby to była partycja.



Katiusha - 05-07-2009 15:32
Informatyczką nie jestem, ale wg mnie "LBA" oznacza partycje rozszerzoną na której są (mogą być stworzone) partycje logiczne.
Po prostu podczas tworzenia partycji zamiast zaznaczenia aby to była podstawowa została zaznaczona jako rozszerzona.
Upierać się jednak nie będę, bo to tylko moje gdybanie "dlaczego MBR może nie działać?" i mogę być oczywiście w błędzie.

Ważne aby dojść dlaczego MBR u mlodir jest popsuty.



fnmirk - 05-07-2009 16:35

Partition table entries are not in disk order Niby takie nic i niegroźne przeważnie, świadczy o tym że właściciel niezbyt się angażuje w rozwiązania problemów tylko dokonuje rozwiązań drastycznych w postaci usuwania i ponownego zakładania partycji. A jak zakłada nowe to nie dokonuje przebudowy tablicy partycji. Takie drastyczne posunięcia wykonywane co rusz mogą owocować dziwnym zachowaniem zainstalowanych systemów.

Aby to wszystko ogarnąć wypadałoby zrobić jakiś porządek na dyskach i partycjach.
Dyski należy podpiąć do płyty głównej w kolejności takiej jakiej mają pracować i jeżeli zainstalujemy program rozruchowy w mbr pierwszego dysku to niewolno dopuszczać do zamiany miejscami dysków.

Powinno się naprawić uruchamianie Windowsa zainstalowanego na pierwszym dysku. W tym celu wystarczy nadpisanie mbr z poziomu płytki instalacyjnej systemu Windows. Aby można nadpisać mbr należy sprawdzić czy bios nie posiada blokady takiej operacji.
Po uruchomieniu Windows, sprawdzamy wszystkie jego partycje narzędziami dostępnymi w systemie: scandisk, defrag. Inne programy narzędziowe usprawniające konserwację sytemu. Po wykonaniu sprawdzania partycji Windows przystępujemy do naprawy Linuksa/Debiana.



ryba84 - 05-07-2009 23:49
To jest partycja rozszerzona ;)

@Katiusha u Ciebie również druga partycja jest rozszerzoną. Informuje o tym W95 Ext'd.



ArnVaker - 05-07-2009 23:59

Z tego co wiem to "LBA" (Logical Block Addressing) oznacza partycje logiczne. Jest to sposób adresowania danych na dysku, nie określa typu partycji w sensie podstawowa/rozszerzona.

>>Typy partycji rozpoznawane przez fdisk'a<<

Określające partycję rozszerzoną to:
oraz ============================================

Jest to windowsowa partycja z systemem plików fat32. Swoją drogą dziwi mnie trochę, że ktoś instaluje obecnie Windowsa XP na fat32.


Po prostu podczas tworzenia partycji zamiast zaznaczenia aby to była podstawowa została zaznaczona jako rozszerzona. Taka sytuacja nie jest możliwa. Na dysku z intelowską tablicą partycji może być tylko jedna partycja rozszerzona, a w tym przypadku jest nią hda2. Ponadto na partycji rozszerzonej jako takiej, nie można nic zainstalować/zapisać. Można tego dokonać dopiero na dysku logicznym utworzonym wewnątrz partycji rozszerzonej.



Katiusha - 06-07-2009 00:11
ArnVaker, dzięki za wyjaśnienie. Teraz już wszystko dla mnie jasne. :idea:
Człowiek jednak całe życie się uczy, a i tak umiera głupi. ;-)



fnmirk - 06-07-2009 00:30

Jest to windowsowa partycja z systemem plików fat32. Swoją drogą dziwi mnie trochę, że ktoś instaluje obecnie Windowsa XP na fat32. Pozostałość lub błąd w narzędziach Microsoftu i im kompatybilnych. Pozwala określić z poziomu jakiego systemu dokonano podziału dysku. Nigdy nie zauważyłem podobnego wyniku kiedy pierwszy podział dysku jest wykonany z poziomu Linuksa. Tutaj mogę się mylić ponieważ dawno nie korzystałem z windowsowych narzędzi do zakładania partycji. Nawet pod Windows dzielę dysk z wykorzystaniem narzędzi linuksowych. Z poziomu Windows jedynie formatuję partycje.

Mając na uwadze fdisk powinno się zaznaczyć, który? W Windows też występuje podobny program. Ten, na który powołuje się ArnVaker jest typowym narzędziem linuksowym.



mlodir - 06-07-2009 07:07
Zrobiłem tak jak radził fnmirk. Kompletny porządek bo też mi się to nie podobało. Trochę faktycznie zaniedbałem ten komputer. Dziękuję za pomoc.



ArnVaker - 06-07-2009 09:43
...



fnmirk - 06-07-2009 13:42
mlodir, to było do naprawienia. Nadpisanie tablicy partycji z poziomu jakiegoś livecd z Linuksem. Później robisz porządki. Więcej byś się nauczył przez naprawę tego niż przez ponowną instalację. Za jakiś czas doprowadzisz system do podobnej sytuacji i ponownie będziesz instalował. Bezcelowa strata czasu.
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • minister.pev.pl

  •  

     


     

     
    Copyright 2003. MĂłj serwis