Solved

Problems with migrate public folders exchange 2010 to 2013

Posted on 2014-12-26
17
674 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
Optimizing Cloud Backup for Low Bandwidth

With cloud storage prices going down a growing number of SMBs start to use it for backup storage. Unfortunately, business data volume rarely fits the average Internet speed. This article provides an overview of main Internet speed challenges and reveals backup best practices.

 
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

Is Your AD Toolbox Looking More Like a Toybox?

Managing Active Directory can get complicated.  Often, the native tools for managing AD are just not up to the task.  The largest Active Directory installations in the world have relied on one tool to manage their day-to-day administration tasks: Hyena. Start your trial today.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Issue with Outlook Mail 13 53
exchange power shell 17 69
Best method to eliminate & combine duplicate Office 365 contacts 3 39
exchange, outlook 2 28
Scam emails are a huge burden for many businesses. Spotting one is not always easy. Follow our tips to identify if an email you receive is a scam.
Find out what you should include to make the best professional email signature for your organization.
In this Micro Video tutorial you will learn the basics about Database Availability Groups and How to configure one using a live Exchange Server Environment. The video tutorial explains the basics of the Exchange server Database Availability grou…
The basic steps you have just learned will be implemented in this video. The basic steps are shown to configure an Exchange DAG in a live working Exchange Server Environment and manage the same (Exchange Server 2010 Software is used in a Windows Ser…

910 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

24 Experts available now in Live!

Get 1:1 Help Now