6

I'm having to look after a W2008 server which has a C drive configured to be 20Gb and which is down to 1.5Gb free. On current trends it will run out of space altogether in the future. The growth in space used is largely attributable to system updates and so somewhat out of my control

The C drive is on Volume 0 which contains some other disks (see details below). Is it possible to reduce the space allocated to the other disks (E, F, J) and then make the C drive bigger using the space freed up by the shrinking ?

I'm happy to supply more details if that's useful .

E:\>diskpart

Microsoft DiskPart version 5.2.3790.3959
Copyright (C) 1999-2001 Microsoft Corporation.
On computer: STCFTHOFTS

DISKPART> select disk 0

Disk 0 is now the selected disk.

DISKPART> detail disk

NVIDIA  MIRROR   232.88G
Disk ID: FFFFFFFF
Type   : SCSI
Bus    : 0
Target : 1
LUN ID : 0

  Volume ###  Ltr  Label        Fs     Type        Size     Status     Info
  ----------  ---  -----------  -----  ----------  -------  ---------  --------
  Volume 0     C                NTFS   Partition     20 GB  Healthy    System
  Volume 1     E   VOL1         NTFS   Partition    100 GB  Healthy
  Volume 2     F   New Volume   NTFS   Partition     94 MB  Healthy
  Volume 3     J   New Volume   NTFS   Partition    113 GB  Healthy
glaucon
  • 253
  • 1
  • 6
  • 16
  • Are there any other logical disks available on the server? Also what are drives E,F, and J about? Critical? – murisonc Feb 01 '11 at 00:42
  • I assume you know that the system requirements for Server 2008 R2 speak of a need of 32 GB. http://www.microsoft.com/windowsserver2008/en/us/system-requirements.aspx So I don't think there is much you can do except resize the partition and/or re-install. – Andrew J. Brehm Feb 02 '11 at 10:24

6 Answers6

2

Other people will suggest resizing partition software, which you may find useful. I don't have the details. However, a quick fix is to move your swap file (paging file) from the default C drive to one of your other volumes on the same disk. Right mouse click on My Computer, and pick properites. Then Advanced System Settings, and then select Performance Settings. Then on the advanced tab, you should see already checked by default "Automatically manage..." Set the C drive to No paging File and then set one of the other drive letters to System Managed. Well, one of the other drives that has plenty of room.

This will probably save the amount of physical RAM that you have, which will give you some breathing room.

I have done this several times on computers where they started life with a too small 20 Gigabytes C drive, generally freeing up about 4 GB.

Knox
  • 2,463
  • 2
  • 26
  • 34
2

You can try some partitioning software like Knox suggested. Another option for you would be to pickup an inexpensive drive(s), it looks like you're currently running on a 250gb drive/mirror now, and just image your entire array over to the new drive/drives after you've setup the partitions the way you want them.

ErnieTheGeek
  • 2,037
  • 16
  • 22
2

There are two ways to do this. One is like Knox suggested; using a third party disk partitioning product. The other is to move the data on the E, F and J partitions to another logical disk (another raid array or maybe a temporary external device) if you have one. After moving the data, delete partitions for drives E,F and J then extend the C drive (I suggest 80GB) and if you need to, set things back to the way you want them to be.

Using the Windows drive manager there is no way that I'm aware of to extend the C drive without first removing the other partitions.

murisonc
  • 2,968
  • 2
  • 21
  • 31
  • Thanks for this - sounds like a good short term solution without having to install any new hardware ! – glaucon Feb 04 '11 at 05:02
2

20GB is tight even for a Windows 2003 system-only partition. Also, overall file system size is only 250GB ?? How did Windows 2008 end up on this box?

If I was in your shoes, I would add a new RAID1 array with 1 or 1.5TB disks and copy & expand the volumes with a 3rd party partition tool that understands Microsoft volumes. Then keep the old set of hard disks as snapshot or archive. Don't worry if Windows activation kicks up (it shouldn't, but it might), just give them a call as instructed on the screen and you should be good to go.

It is advisable to maximise free space and defragment as much as possible before copying and resizing partitions.

To make some quick free space & defrag:

  • move pagefile and check there's no hibernate file in C:\
  • empty temp folders (this might require the command prompt if there's thousands of files): c:\temp c:\windows\temp c:\users\$username$\temp
  • delete or archive unused user profiles
  • move uninstall directories (c:\windows\$*)
  • move download cache (C:\windows\softwaredistribution ?)
  • get into properties of the C drive and do the drive cleanup
  • run ccleaner
  • defrag
  • defrag again: if the 2nd pass makes a difference, then defrag again
  • start a chkdsk with system repair, and let it execute at next reboot
  • reboot, and let chkdsk reboot some more :-)
DutchUncle
  • 1,265
  • 8
  • 16
  • Just a couple of followup questions: what would the chkdsk runs be addressing ? Are you guessing there's actually a problem with the drive (I'm not saying you're wrong - I'm just interested to know what you had in mind). Second question if I move the uninstall and download directories might this cause a problem during any subsequent system updates ? – glaucon Feb 04 '11 at 05:09
  • One last thing ... as you asked ! Although the box runs a server edition of windows it's not really a server - more a developers playbox which is now used for a variety of dev related tasks (hence not as much disk as you might expect) – glaucon Feb 04 '11 at 05:11
  • 2
    chkdsk should always be run after heavy disk operations, there always seems to be lint/cruft in windows file systems. – DutchUncle Feb 04 '11 at 17:31
1

plan of attack: A.) find out what's using the diskspace b.) delete files c.) move files

  • Download CCleaner and let it do some housecleaning
  • download windirstat (or simliar)
  • move swap file to different partition
  • ensure hibernation is disabled
  • move directory(ies) to other partitions and use linkd to do symbolic links
  • clean up \windows\SoftwareDistribution
  • clean up \windows\system32\driverstore
  • use a program like Paragon Partition Manager to resize the partitions
  • put bigger disk in and reimage existing drive to bigger disk with bigger partitions :)
DuPie
  • 418
  • 1
  • 4
  • 11
  • Thanks - there's a few things here I hadn't thought of. Is windows happy for anything to be put on the end of symbolic links ? I mean for instance could I make C:\WINDOWS a symbolic link ? For some reason I thought this functionality was more limited in windows (although I can't remember any details - maybe that I'm just out of date). Would be interested to know. – glaucon Feb 04 '11 at 05:02
0

Aside from purchasing additional drives I would focus on moving data storage from the C: to one of the other drives. Move user profiles to those drives and reinstall programs to those drives. Make sure log files get stored on those drives too. It's good to have C: be the system partition and to keep data on another. 20G is tight but doable.

I think this is a better solution than repartitioning.

I like to use a graphical disk space tool like:

http://www.jgoodies.com/freeware/jdiskreport/

to help me find what's eating up the disk space.

Antonius Bloch
  • 4,680
  • 6
  • 29
  • 41
  • This is a server. User profiles should be very small (only admins) and there shouldn't be "programs" installed because users don't log into servers and there shouldn't be many if any programs installed. I could be wrong and if that's the case then the problem is much bigger. – murisonc Feb 01 '11 at 01:13
  • Yes sadly I've done an awful lot of looking around of stuff to move and there just isn't much left that can be moved – glaucon Feb 04 '11 at 04:59