The steps outlined in this article require that you have deployed Microsoft Skype for Business Server 2015 June 2015 cumulative update 6.0.9319.55 or later, or Lync Server 2013 August 2016 cumulative update 5.0.8308.965 or later.
When you use the Move-CsUser cmdlet to move users from one pool to other pools that are in the environment, the cmdlet will try to remove the old user data from the destination pool or the destination pool's paired pool that the users are moved to.
Note The user data may already be in the destination pool or the destination pool's paired pool if the users were previously hosted in the destination pool.
However, in some scenarios, not all data cleanup operations are successfully completed in the destination pool or in the destination pool's paired pool. For example, when a front-end server in the destination pool is shut down, you receive one of the following messages:
Warning message when you run the Move-CsUser cmdlet
WARNING: There were some issues that came up during the move that will require your attention. For details about how to fix these issues, go to http://go.microsoft.com/fwlink/?LinkId=544754. If you do not perform these steps, there is a chance some users might lose data in the future.
Warning message when you run the Move-CsUser cmdlet
Warning: There were some issues that came up during the move that will require your attention. For details about how to fix these issues, go to http://go.microsoft.com/fwlink/?LinkId=544754. If you do not perform these steps, there is a chance some users might lose data in the future.
Additionally, the following event may be logged in the event log.
Note This event log entry is from the primary front-end server that hosts the users in the destination pool.
Source: LS User Services
Event ID: 32215
Description: Failed to update user's pool information on at least one Front End in the pool or its backup pool during user move.
User: <SIP address>
Target Pool: <FQDN address>
Target's Backup Pool: <FQDN address>
Cause: This may indicate a problem with connectivity to some Front End servers.
Resolution:Ensure all the Front End servers in the pool and its backup pool are running. Note The summary file that is generated by the Move-CsUser cmdlet may indicate that the PostMoveCleanupRequired column is 1. This is shown in the following screen shot.
To clean the remaining user data, download the Skype for Business Server 2015, Post Move Cleanup Tool (this tool has been updated to function properly for Lync Server 2013 August 2016 cumulative update 5.0.8308.965 or later), and then run the tool on every front-end server in the destination pool and the destination pool's paired pool.
If you have to run the tool, you must run it immediately as an administrator after the user move operation. Before you run the tool, you must not move again any user who you have moved previously.
A local database should be running and available to connected to the tool. The RtcSrv service can be running on the server. However, this is unnecessary.
For the Lync Server 2013 deployment, please also ensure that all machines in your deployment are updated.
How to run Skype for Business user data cleanup tool
To run Lync Server 2013, Post Move Cleanup Tool:
Please ensure that all machines in your deployment are updated.
Follow the below 1-3 steps from a front end machine within the deployment.
To run Skype for Business Server 2015, Post Move Cleanup Tool, follow these steps:
Log on to the front-end server by using an account that has access to the local database.
Note All accounts of the RtcUniversalServerAdmins group must have the access.
Open an elevated Command Prompt window.
Run PostMoveCleanup.exe by using the following command:PostMoveCleanup.exe -SummaryFile <Path of summary file> [-MachineFqdn <Fqdn of server>] [-LogFile <Path of log file>] Notes
You must provide to the tool the summary file that is generated by the Move-CsUser cmdlet.
The -MachineFqdn parameter refers to the fully qualified domain name (FQDN) of the server that the tool is connected to for cleanup of the local database. This parameter is optional. If it is not specified, it points to the local server on which the tool is running.
The -LogFile parameter refers the path of the file that the tool writes logs to. The tool will append logs to the file if the file exists. This parameter is optional. If it is not specified, the tool creates a new log file.
There may be more than one summary file in the same folder that is generated by multiple uses of the Move-CsUser cmdlet. Make sure that the correct summary file is provided. You can find the summary file path in the Move-CsUser cmdlet output.
For example, results from this operation can be found in the following location:
If the administrator is using the Lync Server control panel or the Skype for Business Server control panel, the file should be located in the C:\Windows\Temp directory on one of the Front End servers in the Front End pool that hosts the Web Services URL that the user specified when the control panel was opened.
For example, if the administrator specified https://pool01int.contoso.com/cscp when they connected to the Lync Server control panel, the file should be located in the C:\Windows\Temp directory on one of the Front End servers in the Front End pool that hosts the Web Services pool01int.contoso.com URL.
The tool outputs statistics of user data cleanup. The statistics include the number of users whose data had to be cleaned, and the number of user data cleanups that are successful, that fail, or that are aborted. For example, you may see the following statistics:
Below is the summary of cleanup.
Number of users need cleanup: 10
Number of users cleaned successfully: 10
Number of users failed to clean: 0
Number of users aborted: 0
If a user data cleanup is aborted or fails, you must rerun the tool on the front-end servers on which the failures occur.
Note You must rerun the tool by using the same summary file that is previously used.
The tool also generates a log file that includes more information.
If the -LogFile parameter is specified, the name of the log file will be the same as the one that is passed.
If the -LogFile parameter is not specified, the Move-CsUser cmdlet creates a file for you in temp folder. The file name is composed of the PostMoveCleanup.exe file name, server name, and date-time value. For example, the file name is as follows: