Announcement

Collapse
No announcement yet.

WinBtrfs 1.0 Released For Supporting Btrfs On Windows

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #41
    Originally posted by aht0 View Post

    Windows usually creates, depending on it's version, special NTFS partition for boot data. It could be 300Mb or 500Mb in size. It's invisible from Windows file managers but visible in partition managers. Bootloader support could thus be a non-issue. Sometimes rarely installer does not create it, I haven't found definite pattern yet.
    It'll be created when there's no active partition on the drive and you select "create partition" in the installer.

    For example if you install Windows to a newly bought HDD then the installer will create it. If you delete the active partition and recreate it then the installer will also notify that the partition is going to be created. It's only 100MB in Vista and Windows 7. In Windows 8 it's ~350MB and then increased to ~500MB in Windows 10

    Originally posted by starshipeleven View Post
    That partition does not store the kernel but a second or third stage bootloader (for MBR or GPT windows respectively). It existed mainly as a hack around its crappy first stage bootloader limitations (it cannot boot from logical partitions in MBR-formatted drives). The first stage bootloader is the one written into the MBR itself.
    that's incorrect

    The boot partition is not for the 3rd stage bootloader. It's just for reservation, just in case in the future when the user needs to use bitlocker encryption or possibly dynamic disks. Because the bootloader cannot boot from an encrypted drive, a separate boot partition is a must. It's just like in Linux where you need a /boot partition if you use LVM or Luks

    With the boot partition when the user changes their mind there's no conversion needed. Resizing and moving the system partition for the unencrypted boot partition are highly risky actions, definitely MS won't take that way. Similarly in a fresh GPT drive Windows also reserves a 16MB drive at the end for dynamic disk metadata when needed

    The NT60 bootloader can boot from a logical drive without problem, unlike the NT52 bootloader
    Last edited by phuclv; 04 December 2018, 11:20 AM.

    Comment


    • #42
      Originally posted by phuclv View Post
      The boot partition is not for the 3rd stage bootloader.
      Then go ahead and delete it, and see how the machine won't boot anymore until you insert a DVD or usb drive with windows installer to do a "startup repair" (assuming it's not retarded, post-windows-7 I've had to do even basic stuff like this with other tools like BCDedit from a WinPE disk)

      https://www.howtogeek.com/192772/wha...you-delete-it/

      The System Reserved partition contains two important things:
      • The Boot Manager and Boot Configuration Data:
      • The startup files used for BitLocker Drive Encryption:
      https://www.thewindowsclub.com/syste...tition-windows

      You may see files like bootmgr, BOOTNXT, BOOTSECT.bak and folders like Boot, Recovery, System Volume Information, $RECYCLE BIN, etc.

      Guess what those files are? I may call them "boot loader" when they are "boot manager" but in practice there is no real difference, it's stuff that is part of the boot chain, not optional.

      The NT60 bootloader can boot from a logical drive without problem, unlike the NT52 bootloader
      Only if there is a system reserved partition with the third stage bootloader. AKA the NT60 bootloader can boot the third stage bootloader while NT52 cannot, neither can boot from logical partitions directly. https://www.sevenforums.com/tutorial...al-drives.html

      (this is a warning in a tutorial that explains how to turn your C partition in a Logical partition, in Windows 7 which is using NT60 bootloader)

      If you do not have the Windows System Reserved or a System Primary partition completely separate from the Windows 7 partition present that is marked as the "System" partition in disk management do not attempt this, if you do Windows will not boot as Windows will not/is not able to boot / start independently from an Extended partition Logical drive, the system boot files must be stored on a Primary partition to execute.

      Windows XP users, do not do this or XP will not boot at all.


      (note how the warning states that XP users can't do this AT ALL, as XP is using the NT52 bootloader that can't use the third stage bootloader in the system reserved partition)


      And yes, on MBR drives this was a thing, as OEMs added their own partitions and you usually could not add more partitions to your drive, so you had to either nuke partitions or turn your C into a logical partition (inside an extended partition) so you could then add all partitions you wanted.
      Last edited by starshipeleven; 04 December 2018, 11:47 AM.

      Comment


      • #43
        Originally posted by phuclv View Post
        It'll be created when there's no active partition on the drive and you select "create partition" in the installer.
        Could BSD "slice", marked "Active" but invisible for Windows, also be a reason of this special partition not being created?

        I've actually had Win7 not creating this special partition at all, even with a seemingly empty drive appearing in installer . Of course, I had fucked around with drive's partition table earlier using OpenBSD's live disk - trying to get dual boot out of it, using Windows boot manager for optional chain loading of an 256bit AES-XTS encrypted OpenBSD.. After I did destroy drive's MBR table completely and recreated it from scratch, Win7 installer suddenly started auto-creating this special partition again.

        Comment


        • #44
          Originally posted by aht0 View Post
          Could BSD "slice", marked "Active" but invisible for Windows, also be a reason of this special partition not being created?

          I've actually had Win7 not creating this special partition at all, even with a seemingly empty drive appearing in installer . Of course, I had fucked around with drive's partition table earlier using OpenBSD's live disk - trying to get dual boot out of it, using Windows boot manager for optional chain loading of an 256bit AES-XTS encrypted OpenBSD.. After I did destroy drive's MBR table completely and recreated it from scratch, Win7 installer suddenly started auto-creating this special partition again.
          not sure, but probably yes. Boot loaders on MBR generally need an active partition to know which partition to load the OS. Windows only knows about the FAT and NTFS families, so it can't put its bootloader on other file systems

          In fact boot managers like grub also mark its partition as active to load itself, and then uses various tricks to load other OSes, for example hide partitions of the non-boot OSes (common in win 9x era) and unhide the OS you want to boot, or mark the partition for the selected OS as active temporarily somehow

          Comment


          • #45
            Originally posted by starshipeleven View Post
            Then go ahead and delete it, and see how the machine won't boot anymore until you insert a DVD or usb drive with windows installer to do a "startup repair" (assuming it's not retarded, post-windows-7 I've had to do even basic stuff like this with other tools like BCDedit from a WinPE disk)
            Clearly if you've installed the OS with that small boot partition then removing it will make the PC unbootable, since the boot files have already been put on that partition. You must install the OS from the beginning without creating the boot partition. In that case the bootmgr as well as the boot folder containing BCD entries and language files will be stored right in the system drive (A.K.A C: drive) instead of the hidden boot drive. "That partition does not store the kernel but a second or third stage bootloader" is a lie since the partition is not necessary, although recommended. A lot of people have been familiar with Windows installation before Vista which doesn't have a boot drive like that, thus they always delete that during installation (or simply try to avoid making the partition in the partition select stage) before proceeding to the real install step

            Originally posted by starshipeleven View Post
            The System Reserved partition contains two important things:
            • The Boot Manager and Boot Configuration Data:
            • The startup files used for BitLocker Drive Encryption:
            isn't that exactly what I said above? It's for bitlocker in the future. But the boot manager and BCD can be put in any partitions, not just the system reserved one
            Originally posted by starshipeleven View Post
            You may see files like bootmgr, BOOTNXT, BOOTSECT.bak and folders like Boot, Recovery, System Volume Information, $RECYCLE BIN, etc.
            Are you even aware that "System Volume Information" and "$RECYCLE BIN" exist on any drives? BOOTSECT.bak is just the DOS or win 9x boot loader, which exists when you install windows NT after them and dual boot. If you want to load any other boot loaders you can do the same thing: store the MBR to a file and chainload it with NT's boot loader. I haven't checked the content of BOOTNXT but it's not a necessary for booting

            Originally posted by starshipeleven View Post
            Only if there is a system reserved partition with the third stage bootloader. AKA the NT60 bootloader can boot the third stage bootloader while NT52 cannot, neither can boot from logical partitions directly.
            ...
            (note how the warning states that XP users can't do this AT ALL, as XP is using the NT52 bootloader that can't use the third stage bootloader in the system reserved partition)
            That's just obvious. The Windows loader in MBR loads the next stage in the active partition's VBR which in turn loads NTLDR (in NT52)/BOOTMGR (in NT60), therefore it needs at least one primary partition to set the flag. You can't have an all-logical-drive setup. Grub "cheats" by storing the data in the blank space between MBR and the first partition, that's why sometimes you see the "ext2 doesn't support embedding" error message. On GPT where such hidden embedded data are not allowed you have to create a separate partition for Grub to store it's 1.5/2 stage. It's not that "the NT52 bootloader that can't use the third stage bootloader in the system reserved partition" since there's no 3rd stage in the extremely simple NT52. NT60 is a complete redesign, hence more complex and is able to load Windows from a logical drive. They're different and NT52 can't use NT60's 3rd stage

            Originally posted by starshipeleven View Post
            And yes, on MBR drives this was a thing, as OEMs added their own partitions and you usually could not add more partitions to your drive, so you had to either nuke partitions or turn your C into a logical partition (inside an extended partition) so you could then add all partitions you wanted.
            that was a thing of the past. None of them do that anymore. And even if they did that you often have one MBR entry left for the data partition as a logical drive, as well as for installing Linux
            Last edited by phuclv; 14 December 2018, 01:39 PM.

            Comment


            • #46
              Originally posted by phuclv View Post
              You must install the OS from the beginning without creating the boot partition.
              Now you are shifting the goalposts.

              My point was that this partition houses a bootloader, while you said that it was not, and it was only for cryptolocker.

              "That partition does not store the kernel but a second or third stage bootloader" is a lie since the partition is not necessary, although recommended.
              Sorry what is a lie again? That partition contains a bootloader and WILL be required for booting.

              There are ways to not create it, or to remove it, but that's tangential to the point I was making. Even without that partition the bootloader that would have been placed in it is now placed in C drive, so again the Windows EFI bootloader is not loading the kernel directly and my original statement would still be correct.

              isn't that exactly what I said above?
              No, you only mentioned bitlocker.

              But the boot manager and BCD can be put in any partitions, not just the system reserved one
              yeah, I never claimed that. I only said that in the average windows system (which has this partition) they are stored there.

              Are you even aware that "System Volume Information" and "$RECYCLE BIN" exist on any drives?
              Notice the bolding was not on that part of the sentence.

              BOOTSECT.bak is just the DOS or win 9x boot loader, which exists when you install windows NT after them and dual boot. If you want to load any other boot loaders you can do the same thing: store the MBR to a file and chainload it with NT's boot loader. I haven't checked the content of BOOTNXT but it's not a necessary for booting
              If the folder called "boot" is missing (or compressed with NTFS filesystem compression) the system won't boot. You can google this one on your own.

              That's just obvious.
              That's not what you stated though. You only said that the additional partition is there for cryptolocker setups.

              It's not that "the NT52 bootloader that can't use the third stage bootloader in the system reserved partition" since there's no 3rd stage in the extremely simple NT52. NT60 is a complete redesign, hence more complex and is able to load Windows from a logical drive. They're different and NT52 can't use NT60's 3rd stage
              So, when I say that NT52 bootloader can't use the NT60 third stage bootloader (which is valid regardless of the existence of the "system reserved partition") I'm wrong,but when you say the same thing it's right. Ok.

              I don't want to be polemic here, but it seems we aren't understanding each other much.

              that was a thing of the past. None of them do that anymore. And even if they did that you often have one MBR entry left for the data partition as a logical drive, as well as for installing Linux
              Sorry what? The average prebuilt PC or laptop from Dell/HP/Lenovo/Asus (i.e. decent or at least well-known brands I have experience on) have 3 additional partitions for random stuff on top of the C partition and the EFI partition.

              It's just that with GPT the partition limit is something like 60 so "not having enough partition" it's not an issue anymore.

              Chromebooks also have completely ridicolous partition scheme, something like 10-20 partitions for various stuff flashed raw, that looks a lot like an Android or embedded device firmware. But there it does not matter much.

              Comment


              • #47
                Originally posted by starshipeleven View Post
                Now you are shifting the goalposts.

                My point was that this partition houses a bootloader, while you said that it was not, and it was only for cryptolocker.

                Sorry what is a lie again? That partition contains a bootloader and WILL be required for booting.

                There are ways to not create it, or to remove it, but that's tangential to the point I was making. Even without that partition the bootloader that would have been placed in it is now placed in C drive, so again the Windows EFI bootloader is not loading the kernel directly and my original statement would still be correct.

                No, you only mentioned bitlocker.

                yeah, I never claimed that. I only said that in the average windows system (which has this partition) they are stored there.

                Notice the bolding was not on that part of the sentence.

                If the folder called "boot" is missing (or compressed with NTFS filesystem compression) the system won't boot. You can google this one on your own.

                That's not what you stated though. You only said that the additional partition is there for cryptolocker setups.
                I'm not changing any goal post. I didn't say that it's purely for bitlocker either. I said that "With the boot partition when the user changes their mind there's no conversion needed". MS creates that partition because "the bootloader cannot boot from an encrypted drive" thus they have to create a separate boot partition.

                That means they're used for storing boot files, i.e. the boot folder and bootmgr, simple like that. And did you see I mentioning dynamic disks? You didn't read that post clearly and didn't understand it, which complicates things later.

                What I originally meant was that the partition is just a hack for storing the second or third stage is wrong. It's not a hack and exists for other reasons, which requires putting the boot files on it. Without it Windows can boot fine as long as the active partition contains the VBR, bootmgr and the boot folder

                > That partition does not store the kernel but a second or third stage bootloader (for MBR or GPT windows respectively). It existed mainly as a hack around its crappy first stage bootloader limitations (it cannot boot from logical partitions in MBR-formatted drives). The first stage bootloader is the one written into the MBR itself.

                The first stage is always crappy, since you can't do much with only 446 bytes. The second stage of Windows bootloader is still crappy since they're only stored in the tiny VBR, unlike Grub ignore the VBR completely and use the 32K gap space to contain the whole filesystem driver
                Last edited by phuclv; 16 December 2018, 09:12 AM.

                Comment

                Working...
                X