
1i5t5.duncan at cox
Dec 4, 2009, 9:35 AM
Post #24 of 30
(3479 views)
Permalink
|
Lie Ryan posted on Fri, 04 Dec 2009 17:14:38 +1100 as excerpted: > Don't know whether such precaution is necessary, but I kept a small FAT > (actually 8G is not so small) partition in my external harddisk that > contains drivers for ntfs-3g for the platforms that I may meet at the > middle of the road. It saved me a couple of times when I happen to be in > a computer (or Gentoo Live CD) that can't read (or can only read) NTFS. I mentioned in another post (I /think/ to this list??) that I recently upgraded to GPT partitioning, using gdisk. GPT has several mechanisms to help ensure boot-time compatibility and that no legacy MBR based partition editor overwrites things accidentally. 1) There's normally what's called a "protective MBR partition", that makes it look to legacy MBR partition table editors like the entire disk (well, to the 2-TiB boundary which is as far as they see) is a single partition of unknown type. The idea here is to prevent accidentally erasing the GPT partition info. 2) For legacy BIOS based booting, the first partition (typically 200 KB or so, I made mine a full 1024 KiB, 1 MiB, just to simplify things, but it sure felt strange making a partition that small!) should be reserved as a BIOS boot partition -- basically, it's there to give certain legacy BIOS bootloaders a spot to put their second stages, etc, without overwriting anything else. 3) For newer EFI based booting, the standard specifies an EFI system partition, FAT32 formatted, of a hundred MB or so. For non-portable disks, only one of the two, either a BIOS boot partition (#2 above) or an EFI system partition, need be present, but I went ahead and put both on mine, even tho my present system doesn't really use either one. The EFI system partition has its own registered partition type, so can be anywhere on the disk, up to the standard 128 partitions that can fit in the standard minimum GPT spec (thus, 128 partitions is the standard, since that's what fits in the minimum spec, and few folks have reason for more than that, tho it's an option available in the spec), but I put it as partition 2, just because. I made mine 127 MiB, so the first two partitions combined are exactly 128 MiB, 1/4 GiB. On a full EFI boot system, this EFI system partition can contain the drivers necessary to access any of the other partitions and load the OS. EFI includes its own initial boot loader spec, and OSs can drop drivers here as necessary to chain-load their own loader on their own filesystems. As mentioned, the Linux kernel is natively GPT/EFI aware as long as the option is compiled in. According to the documentation, GRUB2 is natively GPT/EFI aware and will use the BIOS boot partition for its second stage and related files. GRUB (legacy, grub1, the 0.97-rX versions Gentoo defaults to at present) isn't natively GPT aware, but there are patches floating around that add the capability, and Gentoo includes those patches, so there's no problem with GRUB1 either, tho it ignores the BIOS boot partition as well as the EFI system partition, placing its second stage in its boot partition, if there's no room to embed it, instead. So one could accurately say GRUB-legacy with the GPT patches only partly supports GPT, it'll boot on it and won't damage it when installing, but won't make use of the reserved BIOS boot partition as GRUB2 does. Apparently MS supports GPT/EFI from Vista onward, and of course, Apple does, as they were one of the first on the EFI bandwagon, developing it with Intel. 4) As mentioned above, EFI speced systems don't have BIOS, per se, any more, EFI replaces it, and don't use conventional boot loaders, either, as the EFI spec has its own. I don't know enough about EFI systems to be sure, but given what I know of computer systems in general, I expect that ultimately, EFI's boot loader will probably simply chain-load the OS native boot loader, in many cases, much as grub does with the MS bootloader, today. So FWIW, your "small" 8 gig partition for boot-time compatibility purposes is sort of already built into the GPT/EFI spec. That would contain all you needed to boot the kernel, and if you chose not to build them into your kernels, your ntfs and other kernel modules would be loaded from /boot as standard initramfs/initrd, if necessary, or from the standard /lib/modules/<kern-ver> subdir, if not necessary to load /. -- Duncan - List replies preferred. No HTML msgs. "Every nonfree program has a lord, a master -- and if you use the program, he is your master." Richard Stallman
|