With Configuration Manager 2012 R2 we have access to the Configuration Manager 2012 R2 Toolkit https://www.microsoft.com/en-us/download/details.aspx?id=50012. Since we are going to move a Distribution Point data from one drive to another, we are going to use program from the toolkit calledContentLibraryTransfer.exe.
The command line for this program is as follows.
ContentLibraryTransfer.exe -SourceDrive <current drive letter> -TargetDrive <new drive letter>
When you install the toolkit the file will typically be in C:\Program Files (x86)\ConfigMgr 2012 Toolkit R2\ServerTools. The first step is to start a command prompt as administrator and change the path:
cd “C:\Program Files (x86)\ConfigMgr 2012 Toolkit R2\ServerTools”
OK, now lets try to move the content from our old drive (C for me) to our new drive (D for me).
ContentLibraryTransfer.exe -SourceDrive C -TargetDrive D >c:\temp\transfer.log
If you want a log file of the transfer to see what’s happening, or to check for errors if something goes wrong, you can pipe the output to a log file by adding >drive:\folder\filename.log. Open the log file in CMTRACE if you want to watch the files being moved.
This is my drive C before the transfer. You can see the SMS folders listed here.
This was the space on my two drives before the transfer. After the transfer I had 100GB of additional free space on my C drive.
Here is drive C after the transfer. You can see that the SMS folders are all gone and that the program has created a NO_SMS_ON_DRIVE.SMS file on the root of the drive. This file tells the Distribution Point not to use this drive to store files. You can place this file on any drive that you don’t want distribution files created on. By default, a DP will use the drive with the most space available.
After my transfer I checked the log and found this error. For some reason a couple of folders couldn’t be deleted from the SCCMContentLib folder. I rebooted the server and checked to make sure what was still in the folder had been successfully moved to the new drive. It had, so I manually deleted the folder.
While this method is supposed to work, your mileage may vary. Two days after doing this we were having problem with a package not being found during the start of a task sequence. No validating, updating, redistributing, or removing and redistributing would fix the issue. After finding additional missing packages we went ahead and removed the Distribution Point role and reinstalled it and redistributed all of the packages. Now everything seems to be working again.