Creating a second large partition on a single drive machine

Been getting some questions lately about multiple partitions.

“How do I get the partition page in MDT?”
“My task sequence is perfect, except it does not work on uEFI machines?”
“Why is the system partition 499MB?”

And I wanted to write down all the reasons why multiple partitions (drives) are bad, bad, bad…

Drive C: should be as close to 100% as possible.

Multiple Partitions

What do I mean when I say multiple partitions? By default if you do nothing in Windows and MDT, these systems will create multiple partitions anyways, reserving 350MB to 499MB for system files. 128MB reserved for uEFI, and any additional partitions for Recovery. All these small partitions are hidden, and most users don’t know they are there. They are necessary for systems like Bitlocker, where the main C: OS Partition is encrypted, and can’t be booted without the boot loader on an unencrypted partition.

IC577711

IC577722

Note: Microsoft refers to the partition that contains the Operating System as the “Boot” partition, and the partition with the Boot loader as the “System” partition. Yea, I don’t get it either. http://windows.microsoft.com/en-us/windows/what-are-system-boot-partitions

But beyond these smaller partitions, some users like to partition their disks down even further, for example taking a 1TB disk and allocating only 500GB for the OS C:, and the remainder as a Data D: partition.

*This*, the creation of large unhidden partitions is something I generally do not recommend. They are just more trouble than they are worth.

Note, I’m not talking about adding multiple *Disks*, just talking a single disk and making multiple partitions (Drives).

 

Some Points

 

  • What about Dual-Booting OS’es? Don’t Dual boot, put your secondary OS’es in a virtual machine. Windows 8 now has excellent Hyper-V Support. Yea!
  • Some folks believe that creating a data partition provides a performance boost. It does not, in fact on spinning disks, it can be slower. If you have a legitimate performance requirement, use a 2nd Physical disk.
  • Some folks have teams that managed the OS and teams that manage applications. They don’t like their data to mix. Can’t everyone just get along?
  • Putting your data on a separate partition is not a backup process.
  • If they really want two partitions, tell them to use Bitlocker and they’ll get an extra special hidden partition to fill the void.
  • Some faithful Dan Akroyd and Rick Moranis following folks still believe in Ghost and decide that it’s easier to refresh a machine if the user profiles are on a separate partition than the system drive. Now we have the power of MDT, USMT and ConfigMgr! However this *Breaks* all kinds of scenarios, like OS Upgrade http://support.microsoft.com/kb/949977
  • Perhaps you have a program that is hard coded to use D:\ (Bad Developers!) Use the Subst.exe tool to map C: to D:!
  • The migration could be simple and fast with USMT hardlink option. The two partitions is the bad practice which prevents us to use it in many cases. The drive size the customers usually used with XP is too small for Windows 7 and we have to re-partition. And then we lose the hardlink option…
  • All the cool kids are using single partitions. And is recommended practice of Microsoft Consulting Services.
  • http://en.wikipedia.org/wiki/Disk_partitioning#Disadvantages_of_multiple_partitions

 

However, the biggest problem is something I call “Partition Fragmentation” From Wikipedia:

In computer storage, fragmentation is a phenomenon in which storage space is used inefficiently, reducing capacity or performance and often both.

Many times I have come across user computers that were setup with C: OS and D: Data partitions, and one got full! Resizing is not an easy thing to do. And just when people *think* they have the correct sizes setup, their use cases change, and they don’t have enough space on the C: too much on D: or vise versa. Keep a single C: Partition, and you won’t have to manage how much free space you have on both drives, just one drive.
Rule of thumb: if you don’t have a very *clear* understating of what size the 2nd partition (D:) should be, then partition fragmentation is just waiting to happen.
 

Exception

 

Of course, for every rule… there is always an exception. One of the few really good *technical* reasons for creating multiple large partitions is for programs like “Deep Freeze” that require this configuration. If the system requires this, OK.

 

The MDT LiteTouch Way

 

By default the task sequence in MDT will create a single 100% partition for the OS C: on disk 0. If you don’t add any additional partitions to the configuration, then the MDT ZTIDiskPart.wsf script will also create the correct BIOS MBR and uEFI GPT partitions required for booting! Yea! Super easy!

If you create extra partitions in the “Format and Partition” step in MDT for disk 0, then MDT will *NOT* create any extra system partitions necessary. If you create the partitions by hand for BIOS, then it might not work for uEFI. Best to leave it as a single partition.

Also, if you are creating partitions by hand, you might forget some of the built in best practices build into MDT. You might look at the default partition configuration in Disk Management in the OS, and see that the default System Partition is 499MB, and assume that it’s a rounding error, and should be 500MB. No, it’s *actually* 499MB! Windows backup utilities have unique space requirements if the System Partition is 500MB or greater, so we specifically chose 499MB so we don’t block Windows backup. Yea, it’s the little things like that that can cause problems, and why I recommend using well-known and proven solutions.

Wizards for Disk Part

Why doesn’t MDT supply methods for dynamically (or manually) choosing or setting up the partition?

Because it’s hard!

First of all, you could modify the unattend.xml file to force the disk partition dialog to appear during WInPE setup, however, that’s not the way MDT works, by the time we call into Windows Setup, the partition(s) are already created. There is nothing to create!

I actually created about 3 or 4 mock ups of partitioning dialogs over the years, and each one had problems, from the UI look and feel, to the lag presented when calling diskpart in the background.

The closest I got was to create the disk configuration wizard page, as seen in my post How MDT Litetouch does Partitioning

As for the ability to target the specific partition, there were too many moving parts that could cause MDT to fail, we couldn’t take the risk.

To summarize: Drive C: 100% of remaining space

Advertisements

4 thoughts on “Creating a second large partition on a single drive machine

  1. So, when using MDT, can a hidden partition be created for disk provisioning on an SSD, without causing MDT to abort creating the extra partitions for UEFI or the BIOS MBR?

    • Please be aware that for MDT 2013 Update 2, the logic in ZTIDiskPart.wsf has changed, and the behavior described in this article may no longer be valid.
      I do not know off the top of my head how the new ZTIDiskPart.wsf will react in this scenario.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s