Δείτε πώς να επιδιορθώσετε τον bootloader των Windows, σε έναν υπολογιστή με δίσκο που έχει σύστημα partition MBR
Το Boot Manager στις σύγχρονες εκδόσεις των Windows χρησιμοποιεί το αρχείο BCD (Boot Configuration Data) για την εκκίνηση του λειτουργικού συστήματος που είναι εγκατεστημένο στον σκληρό δίσκο του υπολογιστή. Αυτό το αρχείο περιέχει πληροφορίες σχετικά με το εγκατεστημένο λειτουργικό σύστημα και τις παραμέτρους εκκίνησης.
Τα Windows δεν μπορούν να εκκινήσουν κανονικά εάν το αρχείο BCD έχει διαγραφεί ή καταστραφεί. Επίσης, δεν θα μπορείτε να εκκινήσετε τα Windows σας εάν το Master Boot Record (MBR) στον σκληρό δίσκο είναι κατεστραμμένο. Το MBR είναι ένα σύστημα διαμερισματοποίησης δίσκων, δηλαδή είναι ένα πρωτόκολλο που φροντίζει για την δομή των partitions, αλλά και των δεδομένων μέσα σε αυτό.
Σε αυτό το άρθρο, θα δείξουμε πώς να αναδημιουργήσετε σωστά το Windows Boot Manager, το αρχείο διαμόρφωσης BCD και να διορθώσετε το MBR στα Windows 10 και 11. Τα πάντα θα γίνουν με εντολές του Command Prompt των Windows, και δεν θα χρησιμοποιηθεί εφαρμογή τρίτου κατασκευαστή.
Table of Contents
MBR ή GRP; Προσδιορισμός διάταξης διαμερίσματος δίσκου
Ο οδηγός μας απευθύνονται σε όσους έχουν έχουν ρυθμίσει σαν σύστημα διμερισματοποίησης του σκληρούς τους δίσκου που περιέχει τα Windows το MBR.
Αυτό σημαίνει αυτομάτως ότι ο υπολογιστής τους: είτε παλιός και έχει το παλιό κλασσικό BIOS, είτε καινούργιος και έχει UEFI που όμως εργάζεται σε legacy mode, δηλαδή σε λειτουργία παλιού τύπου.
Πολύ σημαντικό: Επαναλαμβάνουμε ότι όλες οι οδηγίες που δίνονται παρακάτω είναι κατάλληλες για τυπικούς υπολογιστές BIOS (ή σε UEFI με λειτουργία παλαιού τύπου – UEFI legacy mode) με σύστημα διαμερισματοποίησης στον δίσκο MBR.
Σε υπολογιστές με firmware UEFI, πρέπει να χρησιμοποιήσετε διαφορετικούς οδηγούς, για να επιδιορθώσετε το EFI bootloader στα Windows 10 ή για να επαναφέρετε το διαγραμμένο διαμέρισμα EFI.
Πώς να καταλάβετε εάν έχετε υπολογιστή με BIOS ή UEFI; Ο ευκολότερος τρόπος είναι να ελέγξετε τον πίνακα διαμερισμάτων του δίσκου στον οποίο είναι εγκατεστημένα τα Windows, και να δείτε αν είναι GPT ή MBR.
Η διαφορά μεταξύ αυτών των δύο συστημάτων αναφέρεται στον παρακάτω πίνακα:
iGuRu list | MBR | GPT |
Μέγιστη χωρητικότητα ενός partition | 2ΤΒ | 9,4ΖΒ (1 ZB είναι 1 δις TB) |
Μέγιστος αριθμός partitions | 4 primary partitions (ή 3 primary partitions + άπειρα logical partitions) | 128 primary partitions |
Υποστήριξη firmware | BIOS | UEFI |
Υποστήριξη λειτουργικού συστήματος | Windows 7 και παλαιότερα (όπως Win 95/98, XP 32-bit, 2000, 2003 32-bit) | Νέα συστήματα (όπως Win 10 32-bit, Win 8/8.1/10/11 64-bit) |
Για να δείτε τι έχετε εσείς, ανοίξτε μία γραμμή εντολών με δικαιώματα διαχειριστή και εκτελέστε την εντολή:diskpart
Στη συνέχεια, δείτε τους διαθέσιμους δίσκους:list disk
Εάν ο δίσκος που περιέχει τα Windows έχει έναν αστερίσκο ( *) στη στήλη Gpt , τότε το σύστημα διαμερισματοποίησης είναι GPT. Αυτό σημαίνει ότι έχετε έναν υπολογιστή με UEFI και για να επαναφέρετε το bootloader των Windows, πρέπει να χρησιμοποιήσετε κάποιο άλλο οδηγό.
Εάν δεν υπάρχει αστερίσκος στη στήλη Gpt, τότε έχετε το σύστημα διαμερισματοποίησης MBR στο δίσκο και μπορείτε να συνεχίσετε με αυτόν τον οδηγό.
Το Boot Configuration Data (BCD) λείπει στα Windows 10 ή 11
Εάν το αρχείο BCD λείπει ή είναι κατεστραμμένο, εάν αφαιρέσατε/μορφοποιήσατε ένα ξεχωριστό διαμέρισμα δίσκου με την ετικέτα System Reserved (και μεγέθους 500 MB) ή ένα ειδικό διαμέρισμα Recovery OEM, τότε είναι πιθανό να δείτε το ακόλουθο μήνυμα κατά την προσπάθεια εκκίνησης Windows:
Your PC needs to be repaired The Boot Configuration Data file is missing some required information File: \Boot\BCD Error code: 0xc0000034
Επίσης, το σφάλμα μπορεί να μοιάζει με αυτό:
The Boot Configuration Data for your PC is missing or contains errors. File: \boot\bcd Error Code: 0xc000000f
Εάν το MBR είναι κατεστραμμένο, ενδέχεται να δείτε το σφάλμα “An operating system wasn’t found” (Δεν βρέθηκε το λειτουργικό σύστημα).
Εάν το κείμενο σφάλματος αναφέρεται στο αρχείο winload.efi, μεταβείτε στο άρθρο Επιδιορθώστε το UEFI-GPT bootloader στα Windows 10 ή 11.
Πώς να επιδιορθώσετε αυτόματα τον Bootloader των Windows
Εάν εμφανιστεί αυτό το σφάλμα από το BCD, πρώτα απ ‘όλα, προσπαθήστε να διορθώσετε το πρόβλημα με την εκκίνηση του λειτουργικού συστήματος χρησιμοποιώντας τη Startup Repair mode (Επιδιόρθωση κατά την εκκίνηση) που μπορεί να ξεκινήσει από το περιβάλλον αποκατάστασης των Windows (Windows RE).
Εάν η αυτόματη επιδιόρθωση με χρήση του Startup Repair δεν βοηθήσει, εκκινήστε τον υπολογιστή σας από τη δισκέτα εκκίνησης/εγκατάστασης των Windows ή από το περιβάλλον WinRE
Ξεκινήστε μια γραμμή εντολών, προσπαθήστε να δημιουργήσετε ένα νέο αρχείο BCD και ενημερώστε την εγγραφή MBR από την αρχή. (Επιδιόρθωση του υπολογιστή σας > Αντιμετώπιση προβλημάτων > Επιλογές για προχωρημένους > Γραμμή εντολών ).
Σε αυτό το παράδειγμα, θα χρησιμοποιήσουμε το δίσκο εγκατάστασης των Windows 10. Αλλάξτε στις ρυθμίσεις του BIOS την πρώτη συσκευή εκκίνησης σε μονάδα DVD ή μονάδα flash USB (ανάλογα με τη συσκευή από την οποία θέλετε να εκκινήσετε τον υπολογιστή).
Εκκινήστε τον υπολογιστή σας από την εικόνα εγκατάστασης των Windows και πατήστε Shift + F10 στην οθόνη επιλογής γλώσσας. Θα δείτε μια γραμμή εντολών.
Προσπαθήστε να επιδιορθώσετε αυτόματα το αρχείο BCD χρησιμοποιώντας αυτήν την εντολή:bootrec /RebuildBCD
Επανεκκινήστε τον υπολογιστή σας και ελέγξτε εάν τα Windows εκκινούν (μην ξεχάσετε να αλλάξετε την προτεραιότητα της συσκευής εκκίνησης στις ρυθμίσεις του BIOS). Εάν τα Windows δεν εκκινούν, εκκινήστε ξανά από το μέσο εγκατάστασης και ανοίξτε μια γραμμή εντολών.
Προσδιορισμός γραμμάτων μονάδων δίσκων
Για να συνεχίσετε στην επόμενη περίπτωση βλάβης θα πρέπει να γνωρίζετε τα γράμματα της αγγλικής αλφαβήτου που έχουν εκχωρηθεί στους δίσκους σας.
Για να το κάνετε αυτό, εκτελέστε την εντολή στην γραμμή εντολών:diskpart
Στη συνέχεια, δείτε τους διαθέσιμους δίσκους:list disk
Στη συνέχεια, πρέπει να προσδιορίσετε τις τοπικές μονάδες δίσκου και τα Volume (τόμους) στον υπολογιστή σας (πιθανότατα τα γράμματα μονάδας δίσκου που τους έχουν εκχωρηθεί θα είναι διαφορετικά από αυτά που βλέπετε όταν εργάζεστε στα Windows). Είναι πιο εύκολο να το κάνετε χρησιμοποιώντας το diskpart. Εκτελέστε αυτές την εντολή:list vol
Θα δείτε μια λίστα με partitions (κατατμήσεις), τα γράμματα μονάδας δίσκου που τους έχουν εκχωρηθεί και τα μεγέθη τους. Στην περίπτωσή μας, υπάρχουν τέσσερεις σκληροί δίσκοι στον υπολογιστή και ο ένας εξ αυτών έχει δύο partitions:
- Διαμέρισμα Hidden με μέγεθος 785 MB χωρίς γράμμα μονάδας δίσκου.
- Διαμέρισμα NTFS με μέγεθος 232 GB και το εκχωρημένο γράμμα C:. Αυτό το διαμέρισμα περιέχει εγκατεστημένα Windows, προγράμματα και δεδομένα χρήστη.
- Άλλοι 3 δίσκοι για αποθήκευση δεδομένων, διάφορες δουλειές και backup
Σημαντικό: Θυμηθείτε τα γράμματα της μονάδας δίσκου που έχουν εκχωρηθεί, καθώς θα χρησιμοποιηθούν αργότερα στις εντολές.
Επιδιόρθωση του Master Boot Record (MBR) στα Windows 10/11
Μπορείτε να χρησιμοποιήσετε το εργαλείο bootrec.exe για να αντικαταστήσετε δεδομένα στον MBR και στο boot sector και να προσθέσετε την απαραίτητη διαδρομή στο Windows Boot Manager.
Δοκιμάστε να αντικαταστήσετε το Master Boot Record (MBR) του διαμερίσματος συστήματος για συμβατότητα με το Windows boot loader (αν ο υπάρχων πίνακας διαμερισμάτων δεν έχει αντικατασταθεί).bootrec.exe /fixmbr
Προσθέστε το master boot code στους τομείς εκκίνησης του δίσκου για να φορτώσετε το αρχείο bootmgr (Windows Boot Manager):bootsect.exe /nt60 all /force
Εάν η εντολή bootsect.exe δεν βρεθεί, προσπαθήστε να καθορίσετε την πλήρη διαδρομή προς αυτήν:X:\boot\bootsect.exe /nt60 all /force
Πριν προχωρήσετε, προσπαθήστε να αναδημιουργήσετε αυτόματα τη διαμόρφωση του bootloader BCD με τις ακόλουθες εντολές (αυτός είναι ο ευκολότερος τρόπος για αρχάριους):
- bootrec /FixBoot – η εντολή αυτή δημιουργεί έναν νέο boot sector (τομέα εκκίνησης) στο διαμέρισμα συστήματος και αντικαθιστά την εγγραφή εκκίνησης του PBR partition.
- bootrec /ScanOs – σαρώστε όλες τις μονάδες δίσκου και αναζητήστε εγκατεστημένα αντίγραφα των Windows που δεν βρίσκονται στο Boot Configuration store.
Εάν η σάρωση είναι επιτυχής, θα σας ζητηθεί να προσθέσετε καταχωρίσεις σχετικά με τις παρουσίες των Windows που βρέθηκαν στη διαμόρφωση BCD:Scanning all disks for Windows installations. Please wait, since this may take a while... Successfully scanned Windows installations. Total identified Windows installations: 1 [1] C:\Windows Add installation to boot list? Yes/No/All:
- bootrec /RebuildBcd – αναδημιουργήστε το χώρο ρυθμίσεων του bootloader, προσθέστε αντίγραφα των Windows που βρίσκονται στον υπολογιστή στον bootloader BCD.
Μετά από αυτό, επανεκκινήστε τον υπολογιστή σας και ελέγξτε εάν τα Windows εκκινούνται σωστά. Εάν το λειτουργικό σύστημα δεν εκκινεί, ακολουθήστε τις παρακάτω οδηγίες.
Πώς να δημιουργήσετε ξανά ένα Boot Configuration Data (BCD) από το μηδέν
Στη συνέχεια, χρησιμοποιήστε την εντολή BCDedit για να δημιουργήσετε ένα νέο αρχείο Boot Configuration Data (υποτίθεται ότι δεν έχετε το αντίγραφο ασφαλείας του αρχείου BCD).
Τα επόμενα βήματά σας εξαρτώνται από το εάν ο δίσκος διαθέτει ξεχωριστό διαμέρισμα System Reserved ή όχι. Εκτελέστε τις εντολές:diskpart
list vol
Ελέγξτε εάν υπάρχει διαμέρισμα System Reserved στον σκληρό δίσκο. Μπορεί να αναγνωριστεί από την ετικέτα τόμου ή ακριβέστερα από το μέγεθός του (500 MB για Windows 10+, 350 MB για Windows 8.1 και 100 MB για Windows 7).
- Εάν δεν υπάρχει system reserved partition (ίσως το διαγράψατε κατά λάθος), μπορείτε να αποθηκεύσετε τα αρχεία του Boot Manager στη μονάδα δίσκου συστήματος όπου βρίσκεται ο κατάλογος των Windows (υποθέτουμε ότι είναι ο C:).
Για να δημιουργήσετε τα bootloader configuration αρχεία Bootmgr και BCD στην καθορισμένη μονάδα δίσκου, εκτελέστε την εντολή:bcdboot C:\Windows /S C:
Θα πρέπει να εμφανιστεί ένα μήνυμα:Boot files successfully created.
- Εάν υπάρχει ένα System Reserved partition, διαγράψτε το παλιό (κατεστραμμένο) αρχείο BCD που στο φάκελο boot του δίσκου σας C:, για να δημιουργήσετε ένα νέο:
del c:\boot\bcd
Εάν δεν έχει εκχωρηθεί ένα γράμμα μονάδας δίσκου στο διαμέρισμα System Reserved (από προεπιλογή), μπορείτε να το εκχωρήσετε μόνοι σας χρησιμοποιώντας το diskpart. Τρέξτε στην γραμμή εντολών:diskpart
(αν δεν είστε ήδη στο diskpart)
Επιλέξτε τον τοπικό σας δίσκο (στην περίπτωσή μας είναι ο 0):select disk 0
Δείτε σε ποιο διαμέρισμα είναι System Reserved, Αν πούμε ότι το διαμέρισμα αυτό ονομάζεται Voloume 1 . Επιλέξτε το:select volume 2
Εκχωρήστε ένα γράμμα μονάδας δίσκου της αρεσκείας σας που φυσικά δεν υπάρχει σε άλλο partition, ας πούμε το γράμμα R:assign letter R:
Βγείτε από το diskpart:exit
Δημιουργήστε ένα κενό προσωρινό αρχείο bcd.tmp στο c:/boot:bcdedit /createstore c:\boot\bcd.tmp
Δημιουργήστε μια καταχώρηση για το Windows Boot Manager (bootmgr):bcdedit.exe /store c:\boot\bcd.tmp /create {bootmgr} /d "Windows Boot Manager"
Εισαγάγετε ρυθμίσεις από το bcd.tmp στο BCD σας:bcdedit.exe /import c:\boot\bcd.tmp
Εάν η εντολή bcdedit εμφανίσει ένα σφάλμα κατά την πρόσβαση στο BCD ( access denied, the store import operation has failed, the required system device cannot be found, the volume does not contain a recognized file system. please make sure that all required file system drivers are loaded and that the volume is not corrupted και άλλα τέτοια ωραία), δοκιμάστε να αφαιρέσετε τα χαρακτηριστικά των αρχείων, ώστε αυτά να μην είναι κρυφά, μόνο για ανάγνωση κλπ:
attrib C:\Boot\BCD -s -h -r
Καθορίστε ότι το Windows Boot Manager βρίσκεται στο διαμέρισμα System Reserved (έχει εκχωρηθεί σε αυτό το γράμμα μονάδας δίσκου R: ):bcdedit.exe /set {bootmgr} device partition=R:
Διαμορφώστε το χρονικό όριο για να επιλέξετε ένα λειτουργικό σύστημα:bcdedit.exe /timeout 10
(10 = χρόνος σε δευτερόλεπτα, βάλτε όσο θέλετε)
Αφαιρέστε το προσωρινό αρχείο από το c:/boot:del c:\boot\bcd.tmp
Μέχρι τώρα, έχετε δημιουργήσει ένα κενό αρχείο BCD με τις ρυθμίσεις του bootloader. Τώρα πρέπει να προσθέσετε καταχωρήσεις σχετικά με τα εγκατεστημένα Windows που υπάρχουν στον υπολογιστή σας.
Δημιουργήστε μια νέα καταχώρηση στη διαμόρφωση BCD για τα Windows 10:bcdedit.exe /create /d "Windows 10" /application osloader
(αντί για Windows 10 μπορείτε να βάλετε όποια φράση θέλετε)
Η εντολή θα επιστρέψει το μοναδικό αναγνωριστικό (GUID) αυτής της καταχώρησης του bootloader. Πχ:The entry {8a7f03d0-5338-11e7-b495-c7fffbb9ccfs} was successfully created.
Καθορίστε στο BCD ότι το bootmgr θα πρέπει να χρησιμοποιεί αυτήν την καταχώρηση από προεπιλογή (μετά το χρονικό όριο το 10 sec που ορίσατε πιο πάνω, αυτή η καταχώρηση θα χρησιμοποιηθεί για την εκκίνηση των Windows):bcdedit /default {8a7f03d0-5338-11e7-b495-c7fffbb9ccfs}
Τώρα πρέπει να καθορίσετε στη νέα καταχώρηση του bootloader την διαδρομή προς το εγκατεστημένο αντίγραφο των Windows 10. Έχετε δει στο παράδειγμά μας ότι το γράμμα μονάδας δίσκου C: εκχωρείται στο διαμέρισμα των Windows. Χρησιμοποιήστε αυτό το γράμμα μονάδας δίσκου στις ακόλουθες εντολές:bcdedit.exe /set {default} device partition=c:
bcdedit.exe /set {default} osdevice partition=c:
bcdedit.exe /set {default} path \Windows\system32\winload.exe
bcdedit.exe /set {default} systemroot \Windows
Κάντε ορατή αυτήν την καταχώρηση εκκίνησης στο BCD, καθώς είναι κρυφή από προεπιλογή:bcdedit.exe /displayorder {default} /addlast
Έτσι, αναδημιουργήσατε πλήρως το πρόγραμμα εκκίνησης των Windows 10 (bootmgr) και το αρχείο BCD και αντικαταστήσατε τον τομέα εκκίνησης MBR.
Τώρα πρέπει να ενεργοποιήσετε το διαμέρισμα στο οποίο βρίσκονται το αρχείο bootmgr και BCD με τη διαμόρφωση του bootloader των Windows (το BIOS μεταφέρει τον έλεγχο στον OS bootloader στο ενεργό διαμέρισμα MBR).
Στο παράδειγμα μας, οι ακόλουθοι τόμοι (volume) είναι διαθέσιμα στον υπολογιστή σας
- Volume 0 – μονάδα DVD (που μετά την χρησιμοποιήσαμε με μία εικόνα ISO από την οποία εκκινήσαμε τον υπολογιστή).
- Volume 1 – διαμέρισμα με φακέλους συστήματος των Windows (%Windir%, Αρχεία προγράμματος, Χρήστες κ.λπ.).
- Volume 2 – Διαμέρισμα με κράτηση συστήματος (μέγεθος 735 MB) με αρχείο bootmgr των Windows και BCD που πιο μετά του δώσαμε και το γράμμα R
- Άλλα Volume από τους υπόλοιπους δίσκους που έχουμε
Σε αυτό το παράδειγμα, πρέπει να κάνετε τον Volume 2 το ενεργό partition (στην περίπτωσή σας, πρέπει να μάθετε τον αριθμό του διαμερίσματός σας).
Μπορείτε να κάνετε ένα διαμέρισμα ενεργό χρησιμοποιώντας το diskpart:diskpart
list disk
sel disk 0
list vol
select volume 2
active
exit
Ελέγξτε ότι ο τόμος 2 είναι τώρα ενεργός:select vol 2
detail partition
(Active: Yes )
Τώρα μπορείτε να επανεκκινήσετε τον υπολογιστή σας και να βεβαιωθείτε ότι τα Windows εκκινούνται κανονικά.
Πολλά από τα παραπάνω μπορείτε να τα κάνετε με ένα κλικ με το δωρεάν πρόγραμμα Easy BCD, αλλά ο δύσκολος δρόμος είναι για κάποιους χρήστες και ο πιο ευχάριστος.