

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 将您的本地文件共享配置迁移到 Amazon FSx
<a name="migrate-file-share-config-to-fsx"></a>

您可以使用以下步骤将现有文件共享配置迁移 FSx 到 Amazon。在此过程中，源文件服务器是您要将其文件共享配置迁移到 Amazon 的文件服务器 FSx。

**注意**  
在迁移文件共享配置 FSx 之前，请先将文件迁移到 Amazon。有关更多信息，请参阅 [将现有文件存储迁移到 Window FSx s 文件服务器](migrate-files-fsx.md)。

**将现有文件共享迁移到 Window FSx s 文件服务器**

1. 在源文件服务器上，从上下文菜单中选择**以管理员身份运行**。以管理员 PowerShell身份打开 **Windows**。

1. `SmbShares.xml`通过在中运行以下命令，将源文件服务器的文件共享导出到名为的文件中 PowerShell。将该示例中的 F: 替换为要从中导出文件共享的文件服务器上的驱动器盘符。

   ```
   $shareFolder = Get-SmbShare -Special $false | ? { $_.Path -like “F:\*” }
   $shareFolder | Export-Clixml -Path F:\SmbShares.xml
   ```

1. 编辑`SmbShares.xml`文件，将所有对 F:（您的驱动器号）的引用替换为 D:\\share，因为亚马逊 FSx 文件系统位于 D:\\share.

1. 将现有文件共享配置导入 Window FSx s 文件服务器。在有权访问您的目标 Amazon FSx 文件系统和源文件服务器的客户端上，复制保存的文件共享配置。然后，使用以下命令将其导入到一个变量中。

   ```
   $shares = Import-Clixml -Path F:\SmbShares.xml
   ```

1. 使用以下选项之一，准备在您 FSx 的 Windows 文件服务器上创建文件共享所需的凭据对象。

   要以交互方式生成凭证对象，请使用以下命令。

   ```
   $credential = Get-Credential
   ```

   要使用 Amazon Secrets Manager 资源生成凭证对象，请使用以下命令。

   ```
   $credential = ConvertFrom-Json -InputObject (Get-SECSecretValue -SecretId $AdminSecret).SecretString
   $FSxAdminUserCredential = (New-Object PSCredential($credential.UserName,(ConvertTo-SecureString $credential.Password -AsPlainText -Force)))
   ```

1. 使用以下脚本将文件共享配置迁移到您 FSx 的 Amazon 文件服务器。

   ```
   $FSxAcceptedParameters = ("ContinuouslyAvailable", "Description", "ConcurrentUserLimit", "CATimeout", "FolderEnumerationMode", "CachingMode", "FullAccess", "ChangeAccess", "ReadAccess", "NoAccess", "SecurityDescriptor", "Path", "Name", "EncryptData")
   ForEach ($item in $shares) {
       $param = @{};
       Foreach ($property in $item.psObject.properties) {
           if ($property.Name -In $FSxAcceptedParameters) {
               $param[$property.Name] = $property.Value
           }
       }
       Invoke-Command -ConfigurationName FSxRemoteAdmin -ComputerName amznfsxxxxxxxxx.corp.com -ErrorVariable errmsg -ScriptBlock { New-FSxSmbShare -Credential $Using:credential @Using:param }
   }
   ```