Windows Booting Simplified: Difference between revisions

mNo edit summary
mNo edit summary
 
(One intermediate revision by the same user not shown)
Line 6: Line 6:
*CPU starts a program ("First Boot Program")
*CPU starts a program ("First Boot Program")
*Hardware is / can be tested by the "First Boot Program" (if issues, booting is halted / can be halted)
*Hardware is / can be tested by the "First Boot Program" (if issues, booting is halted / can be halted)
*"First Boot Program" starts a "Second Boot Program" (Bootloader)
*"First Boot Program" starts a "Second Boot Program" (Bootloader), for BIOS based systems, the program contained in the MBR (Master Boot Record)
*"Second Boot Program" loads other programs and starts Operating System (Windows, Linux, etc.)
*"Second Boot Program" loads other programs and starts Operating System (Windows, Linux, etc.), the PBR (Partition Boot Record) / VBR (Volume Boot Record), for Windows XP NTLDR, and for Vista and above BOOTMGR
*Operating System boot completes, computer is useful (hopefully)
*Operating System boot completes, computer is useful (hopefully)


Line 30: Line 30:
*Metro Loader: Avoid it.  Looks cool, but starts at a later point in the boot process than the "Text Loader" which makes it less useful if there are any boot issues that need to be diagnosed.
*Metro Loader: Avoid it.  Looks cool, but starts at a later point in the boot process than the "Text Loader" which makes it less useful if there are any boot issues that need to be diagnosed.
*FixMBR and FixBoot, for more control, use BOOTSECT instead of BOOTREC (Example: BOOTSECT /nt60 v: where /nt60 = an MBR Boot Record for Vista and above, v: = The drive letter assigned to the partition (may need to be assigned with DISKPART)
*FixMBR and FixBoot, for more control, use BOOTSECT instead of BOOTREC (Example: BOOTSECT /nt60 v: where /nt60 = an MBR Boot Record for Vista and above, v: = The drive letter assigned to the partition (may need to be assigned with DISKPART)
*BOOTREC Command for very basic 'fixing' of MBR and other stuff, but seems to only be available in WinRE, not in Windows.
*BCDBOOT Command can add necessary files to change a non-system partition to a system partition. (Example BCDBOOT C:\Windows /l en-us /s X: /f ALL /v with C:\Windows = Source of Files to be Copied, /l (that's a lower case L, not a capital I / 'eye') = "local language", /s = Drive Letter to copy files to (may need to be assigned with DISKPART if no drive letter has been assigned to parition), /f = ALL is UEFI and MBR Boot Files (as opposed to just MBR or UEFI), /v = Verbose)
*BCDBOOT Command can add necessary files to change a non-system partition to a system partition. (Example BCDBOOT C:\Windows /l en-us /s X: /f ALL /v with C:\Windows = Source of Files to be Copied, /l (that's a lower case L, not a capital I / 'eye') = "local language", /s = Drive Letter to copy files to (may need to be assigned with DISKPART if no drive letter has been assigned to parition), /f = ALL is UEFI and MBR Boot Files (as opposed to just MBR or UEFI), /v = Verbose)
*DISKPART can be used to assign a drive letter for using the BOOTSECT and BCDBOOT commands (Example: DISKPART, SELECT DISK, SELECT VOL, ASSIGN LETTER=WhatEverUnusedDriveLetterDesired)
*DISKPART can be used to assign a drive letter for using the BOOTSECT and BCDBOOT commands (Example: DISKPART, SELECT DISK, SELECT VOL, ASSIGN LETTER=WhatEverUnusedDriveLetterDesired)
Line 43: Line 44:
**diskpart, select disk WhatEverDiskNumber,  ...and see the below choices (these examples assume there is available disk space at the beginning and end of disk that has a working Windows "Boot Partition" in the middle of the disk / drive);
**diskpart, select disk WhatEverDiskNumber,  ...and see the below choices (these examples assume there is available disk space at the beginning and end of disk that has a working Windows "Boot Partition" in the middle of the disk / drive);
***create partition efi size=1024 (don't use this one, see the next one) Thankfully, there is no way to specify which partition to create as a UEFI / EFI partition.  And also thankfully, if there is a blank partition at the beginning of a disk and at the end of a disk, DISKPART will select the partition at the end of the disk for the UEFI / EFI partition.  If you can't tell, the use of 'thankfully' is facetious.  Anyway, the only trick is to create an EFI partition at the end of a disk, then run the same command to put it on the one at the beginning.
***create partition efi size=1024 (don't use this one, see the next one) Thankfully, there is no way to specify which partition to create as a UEFI / EFI partition.  And also thankfully, if there is a blank partition at the beginning of a disk and at the end of a disk, DISKPART will select the partition at the end of the disk for the UEFI / EFI partition.  If you can't tell, the use of 'thankfully' is facetious.  Anyway, the only trick is to create an EFI partition at the end of a disk, then run the same command to put it on the one at the beginning.
***create partition efi size=1024 offset=1 (don't use this one either, see the next one, because this one will create a System Partition that cannot be accessed even when assigned a drive letter using DISKPART)
***Choice 1 (best choice, because it actually works);
***Use the below method (this will create a UEFI / EFI Partition that is a "System Partition", will have the BCD files installed on it, AND will be accessible when a drive letter is assigned to it.
****create partition efi size=1024 offset=1
****...then format quick fs=fat32 label=”System”
****Install the Boot Files: BCDBOOT C:\Windows /l en-us /s WhatEverDriveLetter: /f ALL /v (see example and explanation in above Top Tips Section)
***Choice 2 (should work, but doesn't, included it because of an idea from https://www.tenforums.com/drivers-hardware/80762-how-sign-existing-partition-efi-partition-diskpart.html);
****Create an ordinary  FAT32 Partition at the beginning of a disk using DISKPART, Windows Disk Manager GUI, EaseUS Partition Manager, AOMEI Partition Manager, etc. (Partition type will be Primary)
****Create an ordinary  FAT32 Partition at the beginning of a disk using DISKPART, Windows Disk Manager GUI, EaseUS Partition Manager, AOMEI Partition Manager, etc. (Partition type will be Primary)
****Select the appropriate disk and partition in DISKPART and use this command: set id=c12a7328-f81f-11d2-ba4b-00a0c93ec93b override (Partition Type will be "System", remember, Windows calls the partition where it is installed the "Boot Partition" and the place where the Computer boots up the "System Partition) (from https://www.tenforums.com/drivers-hardware/80762-how-sign-existing-partition-efi-partition-diskpart.html)
****Select the appropriate disk and partition in DISKPART and use this command: set id=c12a7328-f81f-11d2-ba4b-00a0c93ec93b override (Partition Type will be "System", remember, Windows calls the partition where it is installed the "Boot Partition" and the place where the Computer boots up the "System Partition)
****Install the Boot Files: BCDBOOT C:\Windows /l en-us /s WhatEverDriveLetter: /f ALL /v (see example and explanation in above Top Tips Section)
****Install the Boot Files: BCDBOOT C:\Windows /l en-us /s WhatEverDriveLetter: /f ALL /v (see example and explanation in above Top Tips Section)
****Assign a drive letter: Select the appropriate Disk and Partition in DISKPART: assign letter=WhatEverLetter
****Assign a drive letter: Select the appropriate Disk and Partition in DISKPART: assign letter=WhatEverLetter
Line 69: Line 73:
<br />
<br />


=== Other Thoughts and Notes ===
===Other Thoughts and Notes===


==== MSR (Microsoft Reserved Partition): https://en.wikipedia.org/wiki/Microsoft_Reserved_Partition ====
====MSR (Microsoft Reserved Partition): https://en.wikipedia.org/wiki/Microsoft_Reserved_Partition<nowiki/>====
It's OK to delete if one is not using it (read above Wikipedia Article to help determine that, and read other stuff too (links not included)).  The reason it is OK to delete it, is because one can create it again, thus making it possible to fix any issues deleting it causes.  But, even better would be to clone the partition before deleting it, thus one can restore it exactly as it was.  Acronis, EaseUs, AOEMEI, BootIce, etc, Clonezilla, GParted (I think), can all facilitate backing it up / cloning it.
It's OK to delete if one is not using it (read above Wikipedia Article to help determine that, and read other stuff too (links not included)).  The reason it is OK to delete it, is because one can create it again, thus making it possible to fix any issues deleting it causes.  But, even better would be to clone the partition before deleting it, thus one can restore it exactly as it was.  Acronis, EaseUs, AOEMEI, BootIce, etc, Clonezilla, GParted (I think), can all facilitate backing it up / cloning it.
<br />
<br />