Solved

Problems with migrate public folders exchange 2010 to 2013

Posted on 2014-12-26
17
648 Views
Last Modified: 2014-12-29
Hello,

I am in the middle of migrating an exchange 2010 on-premises setup to an exchange 2013 on-premises setup on a different server.  Both servers are in the same domain, same physical location, and both Server 2012 R2 fully updated.

Exchange 2013 is fully updated thru cumulative update 7
Exchange 2010 is fully updated thru the latest current rollup as of 01 Dec 2014

i am logged into either server as domain\administrator

note:  i do have a full PST backup of the public folders, so if it's easier to blow it up and make a new one, that's an option (but not sure about OAB)

i have migrated the users from 2010 to 2013, re-pointed the NAT entries in the router, rekeyed the SSL and everything is working except public folders

Having seen the links at the end of my comment, i've downloaded four PS scripts which are supposedly able to export a CSV list, then use that list to import/migrate into 2013.

The problem i'm having is the exchange 2010 server doesn't want to recognize "get-publicfolder" or "get-publicfolderdatabase", so the script fails.

basic steps i'm following:
http://technet.microsoft.com/en-us/library/bb331970(v=exchg.141).aspx

running this command in EMC on the exchange 2013 server:
.\Export-PublicFolderStatistics.ps1 c:\maplist.csv exchange.domain.com

results in this error:
[12/26/2014 10:11:32 AM] Enumerating folders under NON_IPM_SUBTREE...
[b]A parameter cannot be found that matches parameter name 'Server'.[/b]
    + CategoryInfo          : InvalidArgument: (:) [Get-PublicFolder], ParameterBindingException
    + FullyQualifiedErrorId : NamedParameterNotFound,Get-PublicFolder
    + PSComputerName        : exch2013.domain.com

[12/26/2014 10:11:32 AM] Enumerating folders under NON_IPM_SUBTREE completed...0 folders found.
A parameter cannot be found that matches parameter name 'IncludePreExchange2010'.
    + CategoryInfo          : InvalidArgument: (:) [Get-PublicFolderDatabase], ParameterBindingException
    + FullyQualifiedErrorId : NamedParameterNotFound,Get-PublicFolderDatabase
    + PSComputerName        : exch2013.domain.com

[12/26/2014 10:11:33 AM] Exporting statistics for 0 folders
[12/26/2014 10:11:33 AM] Exporting folders to a CSV file

Open in new window


running it on the exchange 2010 server yields this error:

[PS] C:\PF_Migration_Scripts>.\Export-PublicFolderStatistics.ps1 c:\maplist.csv exchange.domain.com
[12/26/2014 10:32:33 AM] Enumerating folders under NON_IPM_SUBTREE...
[b]Get-PublicFolder : The term 'Get-PublicFolder' is not recognized as the name of a cmdlet, function, script file, or
operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try
again.[/b]
At C:\PF_Migration_Scripts\Export-PublicFolderStatistics.ps1:190 char:28
+ $nonIpmSubtreeFolderList = Get-PublicFolder "\NON_IPM_SUBTREE" -Server $PublicFo ...
+                            ~~~~~~~~~~~~~~~~
    + CategoryInfo          : ObjectNotFound: (Get-PublicFolder:String) [], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException

[12/26/2014 10:32:34 AM] Enumerating folders under NON_IPM_SUBTREE completed...0 folders found.
[b]Get-ExchangeServer : The term 'Get-ExchangeServer' is not recognized as the name of a cmdlet, function, script file,
or operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and
try again.[/b]
At C:\PF_Migration_Scripts\Export-PublicFolderStatistics.ps1:65 char:26
+     $script:ServerInfo = Get-ExchangeServer -Identity:$PublicFolderServer;
+                          ~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : ObjectNotFound: (Get-ExchangeServer:String) [], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException

Get-PublicFolderDatabase : The term 'Get-PublicFolderDatabase' is not recognized as the name of a cmdlet, function,
script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is
correct and try again.
At C:\PF_Migration_Scripts\Export-PublicFolderStatistics.ps1:77 char:48
+         $script:PublicFolderDatabasesInOrg = @(Get-PublicFolderDatabase);
+                                                ~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : ObjectNotFound: (Get-PublicFolderDatabase:String) [], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException

[12/26/2014 10:32:34 AM] Exporting statistics for 0 folders
[12/26/2014 10:32:34 AM] Exporting folders to a CSV file

Open in new window

0
Comment
Question by:FocIS
  • 9
  • 7
17 Comments
 
LVL 11

Expert Comment

by:NetoMeter Screencasts
ID: 40518641
This might happen if you are running the script in the PowerShell window, instead of using the Exchange Management Shell, which loads the required modules automatically.

What happens if you run Add-PSSnapin first:

Add-PSSnapin Microsoft.Exchange.Management.PowerShell.Admin
0
 
LVL 31

Expert Comment

by:Gareth Gudger
ID: 40518680
Hey FoclS,

Neto is correct. You need to run these scripts from the Exchange Management Shell. You also need to run these from the Exchange 2010 server.

See if my step by step article helps. It walks you through the entire 2010 to 2013 public folder migration process, emphasizing any common pitfalls. Lots of screenshots too! :)

https://supertekboy.com/2014/10/13/2013-public-folder-migration-made-easy/
0
 
LVL 2

Author Comment

by:FocIS
ID: 40519251
Thanks for the replies so far

NetoMeter: i'm doing these inside the Exchange Management Shell, but running your command (even within that) says:

[PS] C:\Windows\system32>Add-PSSnapin Microsoft.Exchange.Management.PowerShell.Admin
Add-PSSnapin : The Windows PowerShell snap-in 'Microsoft.Exchange.Management.PowerShell.Admin' is not installed on
this computer.

The same result if i run it within Windows PowerShell itself

Gareth - interesting as i am actually running these in EMS... tried on the 2010 server and the 2013 server... and from the 2013 server but first using connect-exchangeserver to tap into the 2010 server from there

The problem remains, when running the ./Export-PublicFolderStatistics.ps1 - feeding it a file name and 2010 server name, same failure

Any additional information i can add, i'm more than happy to.. it seems like this should be a really easy thing i'm overlooking
0
 
LVL 31

Expert Comment

by:Gareth Gudger
ID: 40519598
Looks like the script can't run Get-PublicFolder. What happens if you run Get-PublicFolder in 2010 EMS?
0
 
LVL 2

Author Comment

by:FocIS
ID: 40519666
That's what i was thinking too, because get-publicfolder on 2010 EMS results in "...is not recognized as a cmdlet..."
(really in EMS and not in PS)
0
 
LVL 31

Expert Comment

by:Gareth Gudger
ID: 40519680
Is your account a member of the Organization Management group.
0
 
LVL 2

Author Comment

by:FocIS
ID: 40519686
the account is domain\administrator, and is a member of organization management

interestingly on the 2010 server, in the EMC gui, most of the normal things are gone, presumably because we migrated users/roles to 2013?

for example, in EMC 2010 i see only:
Organization Configuration > hub transport
recipient config > mailbox, distribution group, mail contact
toolbox
0
 
LVL 2

Author Comment

by:FocIS
ID: 40519689
update:  i made a brand new domain administrator user, and the results in the 2010 EMC and EMS are the same
0
How your wiki can always stay up-to-date

Quip doubles as a “living” wiki and a project management tool that evolves with your organization. As you finish projects in Quip, the work remains, easily accessible to all team members, new and old.
- Increase transparency
- Onboard new hires faster
- Access from mobile/offline

 
LVL 31

Expert Comment

by:Gareth Gudger
ID: 40519711
Nope. You should still see everything in 2010.

Sounds like something has gone wrong with your permissions.

Had you already started to decommission the 2010 server in any way?
0
 
LVL 2

Author Comment

by:FocIS
ID: 40520080
No changes were actually made to the 2010 server other than doing these things from the 2013 server:
- initiated (and completed) moving all users to the 2013 database
- rekey the ssl certificate onto the 2013 server, assigned services to that cert
- made a send/receive connector and deleted the 2010 connectors (from 2013)
- changed inbound NAT in the upstream router to target 2013
0
 
LVL 31

Accepted Solution

by:
Gareth Gudger earned 500 total points
ID: 40520153
Its almost like your management scope has been changed. More info on scopes here.
http://technet.microsoft.com/en-us/library/dd335146(v=exchg.150).aspx

Can you create a new domain admin and make it just a member of the Server Management group (not Organization) and see if it sees more than you had before?
0
 
LVL 2

Author Comment

by:FocIS
ID: 40520160
Hmmm - just now i created a new domain admin member, added to server management but not organization

(administrators, domain admins, domain users, enterprise admins) - none are members of organization management (only "administrator" the user is)

no changes

looking at another path, is there a way i can just blow up public folders all together and push in my PST backup from the real public folders as they were?
0
 
LVL 31

Expert Comment

by:Gareth Gudger
ID: 40520196
Easiest way to blow up Public Folders is to dismount them. If you can't in EMC or Shell then stop the Information Store on Exchange. Rename the Public Folders database EDB file (or move it). Then remount them. It will prompt to create a brand new database. Do this. Then you can easily delete that blank database.

Then create a brand new Public Folder Mailbox in 2013 and import from PST.

Of course, you will lose all your permissions. And whether the folders were mail enabled.

So if you can get to them from Tools >> Public Folder Management then try to record all of them prior to this.

If you can't get that far from limitations in EMC, there are ways to delete Public Folders with ADSI Edit.

Does it appear Exchange 2013 is limited in any fashion? Are you seeing everything you are supposed to in 2013? 2010 and 2013 pretty much use an identical RBAC model.

You couldn't run Get-PublicFolder from 2010. Can you run it from the 2013 shell? Your problems may follow you to 2013.
0
 
LVL 2

Author Comment

by:FocIS
ID: 40521855
exchange 2013 doesn't appear to be limited or crippled in any way, it looks like every other 2013 i've seen, behaves normally (besides not migrating public folders)

get-publicfolder on the 2013 shell shows that there is no public folder mailbox (since they dont use databases anymore)
[PS] C:\Windows\system32>get-publicfolder
No active public folder mailboxes were found. This happens when no public folder mailboxes are provisioned or they are
provisioned in 'HoldForMigration' mode. If you're not currently performing a migration, create a public folder mailbox.

Open in new window


on the 2010 EMC - tools > public folders, says not connected.  when i click 'connect to a server' and then click browse, i get an error (graphical) which says:
The term 'get-publicfolderdatabase' is not recognized as the name of a cmdlet, function, script file, or operable program'

UPDATE:  wow, this is one for the record books.  i was messing with outlook as a user, and checked 'save password' - from that minute forward, EMC and EMS on 2010 were using the stored username and password instead of my logged in user (administrator)... after deleting those saved credentials (http://fixingitpro.com/2011/07/12/65/) i am able to see everything in 2010 again, and get-publicfolder works on 2010 again.

so now back to the original list of steps, i'll let you know how it goes
0
 
LVL 31

Expert Comment

by:Gareth Gudger
ID: 40521871
Weird. Did you have Outlook installed on the 2010 server?
0
 
LVL 2

Author Comment

by:FocIS
ID: 40521897
*looks around* - yes
0
 
LVL 2

Author Closing Comment

by:FocIS
ID: 40522022
FIX:  i was messing with outlook as a user, and checked 'save password' - from that minute forward, EMC and EMS on 2010 were using the stored username and password instead of my logged in user (administrator)... after deleting those saved credentials (http://fixingitpro.com/2011/07/12/65/) i am able to see everything in 2010 again, and get-publicfolder works on 2010 again.
0

Featured Post

Want to promote your upcoming event?

Are you going to an event? Are you going to be exhibiting at a tradeshow? Talking at a conference? Using a promotional banner in your email signature ensures that your organization’s most important contacts stay in the know and can potentially spread the word about the event.

Join & Write a Comment

Easy CSR creation in Exchange 2007,2010 and 2013
Not sure what the best email signature size is? Are you worried about email signature image size? Follow this best practice guide.
In this video we show how to create an email address policy in Exchange 2013. We show this process by using the Exchange Admin Center. Log into Exchange Admin Center.:  First we need to log into the Exchange Admin Center. Navigate to the Mail Flow…
In this video we show how to create a mailbox database in Exchange 2013. We show this process by using the Exchange Admin Center. Log into Exchange Admin Center.: First we need to log into the Exchange Admin Center. Navigate to the Servers >> Data…

743 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

15 Experts available now in Live!

Get 1:1 Help Now