can any of the BSDs be installed on a logical partition?
*BSDThis forum is for the discussion of all BSD variants.
FreeBSD, OpenBSD, NetBSD, etc.
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
I always thought that logical partitions were a DOS/Windows answer to a DOS/Windows problem. The BSD systems have always used the disk > slice > partition paradigm which, when ported to the x86 arch, means a max of four unique operating systems (one per slice) with 25* possible partitions per each OS. Because DOS/Windows didn't use partitions (in the BSD sense), you were effectively limited to four slices with only one partition each. When people started needing more than four partitions, they tacked on the notion of logical partitions, which almost overcomes this problem. It seems to me that this was pretty much a hack-job; and while I appreciate a quickly put-together solution as much as the next programmer, I also appreciate a certain amount of polish in useful features. The problem is, this polishing apparently didn't happen with the logical partition idea: from what I understand, they're effectively not supported at the hardware level, which means that you've now got three slices with one partition and one slice with an arbitrary number of partitions. Needless to say, this has now got a lot of Windows users in a bind if they ever want to switch to a BSD environment, which does not well support logical partitions (because they already fixed this problem some number of years ago). Historically, support is minimal, if not non-existent; the latter seems to be much more often the case. All the examples I've ever seen operate on a primary partition (a slice, in BSD terms) because this is what the hardware can reconcile. Installing into a logical partition doesn't make any sense because only the software system that created it knows how to work with it correctly. It would be like installing a BSD slice as wd0d, and then having your root in wd0da, swap in wd0db, etc; and that's just nonsense.
And if I'm wrong on any of the above, please correct me. I like to learn from my mistakes.
* 25 = A through Z, minus C (which refers to the whole disk). A refers to the root partition, and B by convention to swap. D used to be special to refer to the partition, but I don't think any BSD systems enforce this anymore.
My understand was that you can only have four primary partitions on a HD. One of those could be a logical partition(or many) inside of one of the primary. I've got 3 primary set up, and one logical that's divided in two, one for linux swap, and one for(I thought) BSD. From what I've seen, BSD can't be installed on this logical partition, and thus, I'd have to do something else....
Distribution: Slackware & Slamd64. What else is there?
Originally Posted by microsoft/linux
Can any of the BSDs be installed on a logical partition? I know FreeBSD can't, can any of the other's?
The problem is that *BSD doesn't have the linux-like kernel as a boot loader parameter and it expects things to be arranged in a specified order, at the beginning of the partition. And logical partitions have a 63 sector MBR in the beginning of each one, so instead of starting at 0, the usable portion starts at 63. There are some vague allusions to this in the OpenBSD doc but no details. I don't think it can be too difficult.
I haven't tried this, but it should be possible to use a linux bootloader (Grub or Lilo) to boot *BSD from a logical partition, but maybe the typical chainloader entry won't work and you'll have to specify something else. When I get another machine to test with I'll try this.
P.S. to Taylor: The *BSD disklabel is a separate issue from the DOS partition table. The disklabel is probably supposed to be in the first 63 sectors for *BSD partitions (primary) but to implement it in a DOS logical partition, it will have to start at 63. That just means you have to adjust disklabel offsets (to *BSD partitions) accordingly and everything should work normally.
This is really only an administrative consideration and shouldn't be considered a big hack. The design of DOS partition tables may be outdated, but it's not the worst thing that ever happened to a PC
As mentioned by others, your best bet is NetBSD and thats not guaranteed to work smoothly. Some of the other smaller BSDs are based on or forked from the 3 major BSDs so they will probably have the same limitations.
Currently 3 primary, and one logical, 1 Windows, one FAT32(for windows linux swap), 1 linux, and on the logical, linux swap. I suppose I could back up my music and make that a logical, but then I'd have to move my linux swap....maybe that'll work.
I don't use Windows, but I am sure my partitioning system will work. On my test machine, I tend to create 3 primary partitions and 1 extended. I reserve the primary partitions for BSD and Solaris. I install anything related to Linux on logical partitions. This way I never run out of primary partitions for the OSes that need to be on primary partitions. If you follow such a scheme, Windows will be installed on one primary partition and you can use the remaining two for other OSes.