Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

USMT 4.0 & Dual Partitions

539 views
Skip to first unread message

jimc84

unread,
Sep 16, 2009, 10:15:01 AM9/16/09
to
Hi all,

Does anyone know of any issues when trying to upgrade an XP machine with
Dual Partitions, (C:\ & D:\ drive) to Windows 7 with a single partition,
using Hard-Link Migration in USMT 4.0?

Also, anyone aware of a repository that provides Custom.xml files for
possible migration sceanrio's?

Thanks..

JR--

unread,
Sep 16, 2009, 2:35:01 PM9/16/09
to
Hey Jim

Yes - Hard links cannot be created across partitions - the good thing is if
data needs to move from one partition to another loadstate will copy the data
in that case - however this would not be an ideal hardlink scenario -

Is the second partition a data only partition or does this second partition
also contain part or all of the user profile?


As far as script repository - i have not seen one -

jimc84

unread,
Sep 17, 2009, 4:42:02 AM9/17/09
to

thanks for the quick response JR

The problem we have is that we don't actually want to moved from a dual
partition scenario to another dual partition scenario in a new os, we want to
just use a single partition in the destination os. The second partition
basically consists of the User's Folder redirected (using a GPO) Desktop, my
documents and some Application settings too.

So it looks like a Hardlink Migration isn't an option for us but JR, you
suggest we could still perform a Migration using USMT 4.0 but, and i
understand correctly, only by using other options? (e.g. a managed network
migration/store or ideally, an Offline migration using Windows PE)

thanks..

JR--

unread,
Sep 17, 2009, 1:17:01 PM9/17/09
to
Sure - that should be ok -

jimc84

unread,
Sep 17, 2009, 2:38:01 PM9/17/09
to
Many thanks JR!

Darren

unread,
Sep 29, 2009, 5:49:02 PM9/29/09
to
I am having a similar problem. We are going from a dual partion drive to a
single partition drive. We had a C: and D: on WinXP. Going forward on Win7
we are having one big C:. The D: on the XP setup was for the users to put
data. We want that to go to the users Documents folder on the restore.

I created a custom XML to reroute them from this article
http://technet.microsoft.com/en-us/library/dd560798(WS.10).aspx
However when the restore is done it puts all the data on the root of the
C:\. I read that if you migrate data from a drive that no longer exists on
the target machine it puts it on the C:. This would make sense since C: is
our system drive. But, since I have addressed where I want these files to go
why is it ignoring the custom xml? The log file doesnt seem to give any
clues.

Any suggestions??

I am using the following custom XML on both scanstate and loadstate.

<migration urlid="http://www.microsoft.com/migration/1.0/migxmlext/test">
<component type="Documents" context="System">
<displayName>D Drive To C Drive User profile</displayName>
<role role="Data">
<rules>
<!-- Migrate all directories and files present in D:\ folder -->
<include>
<objectSet>
<pattern type="File">D:\* [*]</pattern>
</objectSet>
</include>
<!-- This migrates all files and directories from The D: to the
personal folder.-->
<locationModify
script="MigXmlHelper.RelativeMove('D:','%CSIDL_PERSONAL%')">
<objectSet>
<pattern type="File">D;\* [*]</pattern>
</objectSet>
</locationModify>
</rules>
</role>
</component>
</migration>

Darren

unread,
Sep 29, 2009, 5:55:01 PM9/29/09
to
I would like to add my scanstate and loadstate command lines

Scanstate:
SERVER%\bin\scanstate.exe %SERVER%\backup\%user% /o /ue:*\*
/ui:%userdomain%\%user% /r:0 /w:0 /encrypt /key:%PASSWORD% /c
/i:%SERVER%\bin\printers.xml /i:%SERVER%\bin\migapp.xml
/i:%SERVER%\bin\MIGUSER2.XML /i:%SERVER%\bin\D_drive_move.xml
/i:%SERVER%\bin\migsys.xml /localonly /v:13 /l:%SERVER%\Logs\%USER%\backup.log

Loadstate:
%SERVER%\bin\loadstate.exe %SERVER%\backup\%user%\ /V:4 /r:0 /w:0 /c
/i:%SERVER%\bin\migsys.xml /i:%SERVER%\bin\D_drive_move.xml
/i:%SERVER%\bin\miguser2.xml /ui:%userdomain%\%USER%
/l:%SERVER%\Logs\%USER%\restore.log /decrypt /key:%PASSWORD%

JR--

unread,
Sep 30, 2009, 2:26:04 PM9/30/09
to
Hey Darren -

I am assuming you would like data to be copied into each users personal
folder?

One issue is the rules are running in system context -

component type="Documents" context="System">

So this will never make it to the users personal folder -

<locationModify
> script="MigXmlHelper.RelativeMove('D:','%CSIDL_PERSONAL%')">

Need to change the context to User -

On your XP system did you redirect the personal shell folder to D ?

maybe something like D:\Data\Username\

If so USMT will automatically map the shell folder paths so you do not need
to create the location modify rule -

However - if this was not the case and D:\* was just user data then you
would need to be sure to run the rules under user context -


You may want to try the below - as this error would have made it so nothing
matched -

from:


<pattern type="File">D{;}\* [*]</pattern>
</objectSet>

to:


<pattern type="File">D:\* [*]</pattern>
</objectSet>


also try below if the above does not correc the issue

from:


MigXmlHelper.RelativeMove('D:','%CSIDL_PERSONAL%')">

to:


MigXmlHelper.RelativeMove('D:\','%CSIDL_PERSONAL%')">

I have also used a simple Move and that works well -

Darren

unread,
Sep 30, 2009, 3:57:02 PM9/30/09
to
Thanks for picking up that typo. I have also added the 2 changes (USER and
D:\). I still get everything put back on the root of C:\

To you other question we just let them put data on the D: as an extra area.
This wasnt there profile. The profile was in the default on the C:\ with not
changes. I will repost my XML as maybe I am missing something.

Thanks for your help

<migration urlid="http://www.microsoft.com/migration/1.0/migxmlext/test">
<component type="User" context="System">


<displayName>D Drive To C Drive User profile</displayName>
<role role="Data">
<rules>
<!-- Migrate all directories and files present in D:\ folder -->
<include>
<objectSet>
<pattern type="File">D:\* [*]</pattern>
</objectSet>
</include>
<!-- This migrates all files and directories from The D: to the
personal folder.-->
<locationModify
script="MigXmlHelper.RelativeMove('D:\','%CSIDL_PERSONAL%')">
<objectSet>
<pattern type="File">D:\* [*]</pattern>
</objectSet>
</locationModify>
</rules>
</role>
</component>
</migration>

JR--

unread,
Sep 30, 2009, 4:23:03 PM9/30/09
to
You need to recapture the data using the updated xml - and you also need to
apply using the same xml file - the location modify rules run on the apply

If you set this environment variable -

SET MIG_ENABLE_DIAG=<gather.xml or apply.xml>

This file will dump all the migration rules for each component - should be
able to get a look at what is going on as well - search for the component
name in the log file -

JR--

unread,
Sep 30, 2009, 5:15:01 PM9/30/09
to

<component type="User" context="System">

chagne to -

<component type="Documents" context="User">

You will need this to run in the User context - otherwise it will not move
the files to the correct personal folder - If you have multiple users on the
machine this may not be the be way to go - as everyone will likely get a copy
of the files - if you want it to go to a shared location then system would be
the correct context -

I might have time later on to test your xml file - i will post any changes
if need be

Darren

unread,
Oct 1, 2009, 7:31:01 AM10/1/09
to
Where should I set this value? In a command line before I excute scanstate
or loadstate? One of the xml files?

Thanks,
Darren

JR--

unread,
Oct 1, 2009, 12:52:02 PM10/1/09
to
set this variable in the command line before you run scanstate/loadstate -
0 new messages