Partitioning a single-disk computer - why?

People often come to me with this problem: they have a single-disk PC with plenty of free disk space overall, but the disk has been neatly divided into separate partitions for the OS, applications, data and so on, and inevitably one of the partitions has filled up faster than the others. Somebody has tried to guess in advance how big the partitions would need to be and, not being clairvoyant, has guessed wrong. It’s a fundamental problem with partitions - you can’t change their size on the fly.

Of course, it is possible to resize partitions. And there are some valid reasons for using them:
[ul]
[li]You have multiple operating systems on one disk[/li][li]The disk may be bigger than the maximum size of the filesystem[/li][li]Maybe Linux and other OSes require a separate swap partition? (not sure about that). Or an application may require a separate partition.[/li][/ul]
But the other commonly given reasons don’t make sense to me:
[ul]
[li]You can keep the OS, applications and data separate[/li]- You can keep things separate with directories too. That’s what directories are for.
[li]You can put the paging file in a separate partition to stop it getting fragmented[/li]- Or, use a fixed-size paging file
[li]It’s easier to do a clean reinstall of the operating system if the OS is on a separate partition from everything else[/li]- How is it any better than having the OS in its own directory? If you really must blow the existing installation away, just boot from other media or from another boot sector and delete \windows or whatever.
[li]You can restore an image of the system partition without affecting your data[/li]- And you can restore a backup of the OS’s directory without affecting other directories.
[li]Smaller partitions have smaller clusters, so they waste less disk space[/li]- Used to be true of FAT volumes, I suppose. It’s not much of an issue on NTFS, EXT2 etc. volumes. Besides, disk space is cheap and we’re talking about wastage of a small percentage of the disk.
[/ul]
Other justifications such as “partitioning a system makes it more stable”, or “partitioning allows for better file and data organisation” just seem like circular reasoning, amounting to “partitioning is better because it is”.

Every Joe has a C: drive. Having an H: or J: drive looks corporate and cool. After all, categorising porn is a serious business!

I can’t comment on many reasons for multiple partitions in windows, but I’ve got one idea. Lets say that the filesystem on the C: partition becomes corrupted and unrecoverable. That will require a complete format and re-install of the OS. If the data is separate from the OS then you can do so without any major data loss. Although, there are some programs that put lots of data in the registry, why they do something so stupid, I’ve got no idea.

As for Linux it often is for multiple security reasons. At the most basic you could theoretically halt logging by filling up the drive in /tmp. Also, there may be some exploits that rely on certain directories being on the same filesystem (I think some involve hard-links, but I’m not entirely sure of the details).

My take is that’s its become an Old Wives Tale (“OWT”). PCs are now old enough to have OWTs, just like cars, houses & boats.

Back in the late DOS / early Windows 1.0 days partitioning made some sense in some cases as you’v noted. Like screensavers, the idea has largely outlived its functional usefulness. It may still have some UI usefulness …

As a development manager for a company that makes web tools for enterprise use, we see a LOT of users that have a very VERY hard time understanding tree structures (ie standard explorer view). Even with the visual metaphor of documents in file folders, they just can’t wrap their minds around folders inside folders, and certainly not to a depth of 3 or 4 (or 12!).

For those people, a non-nestable category structure (“Programs”, “Documents”, “Baby Pictures”, “Porn”) works a lot better. And the disk concept that naively maps most directly to that is partitions. The smarter way to accomodate that would be with persistent mapped drive letters to folders in one partition, but that’s a more advanced concept.
I beleive there are 3 broad categories of PC owner/operators:

  1. I do this for a living & am actually good at my job. My PC is set up in accordance with Window’s best practices & my needs. This group is about .001% of all users and not the folks that come to your shop for help.

  2. I am clueless about PCs. I bought it, turned it on, and use it. It’s set up however the store or manufacturer set it up. This group is about 70% of all users & they have one big C: partition plus maybe a hidden diagnostic restore partition.

  3. I work in IT but am a cluless twit, or I’m a self-taught tinkerer. I know a little about what many of the buttons & settings do, but have no idea why to set them to any particular value. Despite a feeling of confident expertise, I’m blissfully unaware of 50+% of Window’s functionality and 95+% of its internals. This group is about 30% of all users and the source of 95% of the really baffling problems that come into your shop.

Group 3 has lots of partitions. They also set up PCs for group 2 users.
Having said all that, there are legit reasons when setting up some servers to use separate partitions on a common spindle. As noted above, avoiding disk-full errors taking down the OS, or being able to issue a blanket Deny rights security setting to large swathes of data can be valuable.

But for a desktop machine, home or corporate? Nowadays giant C: is pretty much the smart way.

I know of no good reason to partition a single-disk, single-OS computer. I suspect there isn’t one, and people are just doing it because it used to be necessary and they don’t realize things have changed, or they assume that because you can partition, you should.

The culprits are not the users, it’s the manufacturers who ship their computers with C: and D: partitions. I guess it’s easier for them to tell customers “just insert the Restore CD abd reboot”. But (a) the customer will still need to reinstall all their applications, and (b) the restore CD could restore to a directory rather than a partition, with a little more effort on the manufacturer’s part.

I use Linux. None of what follows may be applicable to Windows – I wouldn’t know any more and hope to never again have to find out. Perhaps the small amount of partitioning I do has just become habit for me, but it doesn’t hurt me in any way whatsoever and is close to no trouble to do. At any rate, here’s some reasons:

It’s just easier (for me) to stick my data on a separate partition. Sure, system files are generally found in /etc/, /opt/, or the like. But then, since Unix presents a unified file system, I never have to notice that things are in different partitions in the first place. (It kind of amazes me that a user on a Windows system still has to differentiate between disks/partitions by using C:, D:, etc. An OS’s purpose of existence is to provide a simplified interface to the hardware!) Furthermore, I have different distros installed; by separating my data files on a separate partition, I use the exact same files no matter which one I boot.

It provides a hard limit on certain parts of my disk – for instance, I once had a malfunctioning piece of hardware that literally filled my /var/log/ partition while I was working, although I didn’t know it at the time. I could save my work, since I still had free space in my /home/ partition, then go and fix the problem.

As far as disk space goes, I don’t particularly care how much space is wasted by fragmentation due to block size. It’s still a needless waste that costs me nothing to avoid, in either time, effort, or money.

Finally, I’ve certainly set my wife’s computer up with multiple partitions – she dual boots Linux and XP. There’s inevitably a separate FAT32 partition that’s used for nothing but making data files available to both OSes. Totally undesirable; if only MicroSoft would make their APIs available, it wouldn’t be necessary.

One problem I do have to admit – on my last computer, I didn’t make to OS partition big enough. I wrote a journal paper comparing various software, part of which was installing and actually using each. And…I ended up running out of space on my system partition for all the supporting libraries. Ooops.

It’s very simple–partitioning saved my ass.
kangaroo just explained why:

Thats exactly what happened to me–a got a virus which screwed up everything, so I had to reformat. But the virus was in C: and my data was in D:—so I had ZERO problems with lost data.

There should be a law requiring all new PC’s to be sold with partitioned disks, as protectection against viruses. Just like health laws require restaurants to take precautions against spreading viruses.

By the way, you gotta love the usernames in this thread: :slight_smile:
kangaroo is right, and Giraffe is wrong.

Windows supports mount points too, has done for years, if you want to unify your file system. I agree that “drive letters” are primitive. But it is irrelevant to the OP.

That is the point of my OP. Partitions cause problems like that.

Fair point. If you have to reformat and reinstall the OS and don’t want to buy another hard drive, then partitioning does make sense. Me, I never mind an excuse to expand my disk capacity so I’d just go the second drive route in that case. But I can see how some people wouldn’t want to spend the money if they don’t have to, in which case they should partition as you described.

Count me in as a partitioning maven. (PhD in Computer Science, ex-CS prof.)

I have no idea what people are thinking when they use a single partition.

With the current disk sizes (compared to my day-to-day needs), when a partition fills up, it’s time to dump some crap onto DVD-Rs or delete. Sure, I know how to resize using various software tools (and used to do so when disks were smaller), but haven’t done it in a long time.

Using multiple partitions has saved me from disaster so many times I can’t imagine living without them.

Or if your, like my, computer has no room for an additional drive inside it.

You are absolutely right about this, of course. What I cannot wrap my mind around is that anybody should have this trouble. :smiley:

With Windows servers, good practice is to create a small bootable partition with a (re-)install set plus useful stuff on it. And with servers, your OS and data are likely on different physical media anyway (mirror set and RAID 5 set respectively).

The partition becoming corrupted is a red herring: corruption is no respecter of filesystems or partitions. Backups are what you use.

For the everyday user, there’s no need to partition the disk. Use the KISS principle and make regular backups.

I got into the habit after a mistake.

In 1998 I ordered the first computer I ordered with the intent of using it in my business. When it was delivered, though, it was obviously the wrong one; I had ordered a tower and the one the guy brought was a desktop. Oh well, that was the one day I’d set aside for installation, so I guessed I’d take it. When I got my hands on it, though, I found that it had been set up for a local corporation, because their name was in the BIOS (or wherever). Oops. Everything else was to spec, though, and nobody ever came back to correct it, so I didn’t care much. (I hope Appleton Papers was happy with my tower.)

Anyway, apparently they had asked to have their drive partitioned into C:, D:, and E: drives. At the time I had no idea how to change that, so I worked around it. The Windows OS was already installed on C:, so I decided to put my data on D: and use E: for an “attic” or archive.

The habit stuck and I’ve partitioned every HD since then that way – until I got XP, and my tech guy said he couldn’t get it to do more than 2 partitions. So I have only C: and D: on this machine. There was never much on E:, so that stuff is just in a separate directory on D:. I did like the idea of keeping OS and data insulated from each other, and I have even started doing custom directories when installing critical programs, so that, for example, all my Word customizations (or at least as many as possible) are on D: in case I have to wipe C: (although that hasn’t happened yet to the best of my recollection, knock wood).

Thanks for the reminder, though; I hope to order a new machine soon and I’ll need to remember to ask for partitions, if the shop will do it for me.

If the restore applications are similar to Norton Ghost, then it might not be as simple as you think.

Get a new tech guy.

Would you care to expand on this?

He tried it a couple of different ways, then asked me what I wanted him to do. I’m sure I could have made him dog on, at $45/hour, or take it back to his house to research the problem, but it wasn’t that important. I told him to go ahead and just do the two partitions.

I live in a very rural area, so just “getting a new tech guy” isn’t an option. I went through a couple of real losers before I found this guy. He’s knowledgeable and professional, adjusts his language to my level (moderately skilled), has good social skills and hygiene (the others didn’t), makes house calls (BIG plus for me), lives only a few miles away, and will answer basic phone and e-mail queries for free. He has often solved problems quickly that would have taken me hours. He has also broken his 1-hour-minimum policy for me a few times and charged me only 1/2 hour. I’m very pleased with his services, and because my income depends on my computer, I consider him worth his weight in gold.

Yeah, sometimes I stump him (and it’s rare; I can think of only one other occasion, and that was a dinosaur of a computer), but I don’t expect him to be perfect. I’ll take 99%.

Thing is, you’ve listed a bunch of reasons why people do it, but you’ve not really presented a very strong argument as to why they shouldn’t - at least not in all cases - you’ve just mentioned another way the same result could be achieved.

So I’d say people do it because it is one way to do certain things - not the only way, as you’ve pointed out, but certainly a way.

Well, then, for those who tell me that an OS should be on its own partition, how much space should I allow for an installation of XP? How much extra do I leave on there for contingencies, and what factors would expand the size the OS needs?