本文為機器翻譯文章。如需檢視英文版,請選取 [原文] 核取方塊。您也可以將滑鼠指標移到文字上,即可在快顯視窗顯示英文原文。
譯文
原文

SharePoint Online 和 OneDrive 移轉使用者指南

SharePoint 2013
 

適用版本:OneDrive for Business

上次修改主題的時間:2017-07-17

這是如何使用 SharePoint Online 的移轉 PowerShell cmdlet 將內容從內部部署 fileshare 或內部部署 SharePoint Server 網站移轉至 Office O365 的逐步說明指南。

SharePoint Online 的移轉 PowerShell cmdlet 的設計被用來將內部部署的內容從檔案共用及 SharePoint Server 文件庫及一個磁碟機移至 SharePoint Online 和 OneDrive for Business。 需要最少的 CSOM 呼叫,它會運用 Azure 暫存的 BLOB 存放區可適應大型移轉的資料內容的需求。

  • 支援的作業系統:Windows 7 Service Pack 1、 Windows 8、 Windows Server 2008 R2 SP1、 Windows Server 2008 Service Pack 2、 Windows Server 2012、 Windows Server 2012 R2

  • PowerShell 4.0

注意事項 附註:
權限 ︰ 您必須是在您選取目標的網站上的網站集合管理員。

  1. 解除安裝所有舊版的 SharePoint Online 管理命令介面。

  2. 以下是從安裝: SharePoint Online 管理命令介面

  3. 開啟SharePoint Online 管理命令介面,並選取 [以系統管理員身分執行]。

建立兩個空的資料夾,再開始移轉程序。 這些資料夾不需要大量的磁碟空間為他們將包含只 XML。

  1. 建立暫存的套件資料夾

  2. 建立最終套件資料夾

  1. 建立 Azure 儲存帳戶。

  2. 記下 Azure 儲存帳戶名稱與金鑰視需要的後續步驟。

# 佇列已指定為自動產生新容器的容器

# 所有容器 Uri 取得都填入到 $al 變數設 SPOMigrationPackageAzureSource cmdlet 輸出

$creds = (Get-Credential admin@contoso.com)

$sourceFiles = '\\fileshare\users\charles'

$sourcePackage = 'C:\migration\CharlesDocumentsPackage_source'

$targetPackage = 'C:\migration\CharlesDocumentsPackage_target'

$targetWeb = 'https://contoso-my.sharepoint.com/personal/charles_contoso_com'

$targetDocLib = 'Documents'

$azureAccountName = 'contosomigration'

$azureAccountKey = 'Insert Azure Account Key string Here'

$azureQueueName = 'migrationqueue'

決定您的位置和認證之後下, 一步是建立新的移轉套件從檔案共用。 有兩個選項中建立內容的套件: 從 fileshare 或從 SharePoint Server 網站。 選擇其中一個方法。

從 fileshare 建立內容的封裝、新增 SPOMigrationPackage命令可讀取的目標的來源路徑的內容清單並將會產生 XML 轉換成執行移轉。

兩個必要的參數輸入 (其他人皆為選用):

  • SourcefilesPath ︰ 內容會指向您要移轉

  • OutputPackagePath ︰ 指向代表暫存資料夾

範例:

# Create new package from file share

New-SPOMigrationPackage -SourceFilesPath $sourceFiles -OutputPackagePath $sourcePackage

若要從內部部署 SharePoint Server 網站建立內容的套件,第一個步驟是使用Export-spweb >指令程式。 此指令程式會從 SharePoint Server 匯出網站、 清單或文件庫。

我們需要下列參數:

  • 身分識別: 指定要匯出的 URL 或 GUID。

  • 路徑: 指定匯出檔案的名稱。 因為我們需要使用NoFileCompression參數,因此必須指定目錄。

  • NoFileCompression: 啟用或停用的匯出封裝的檔案壓縮。必須停用檔案壓縮。

  • ItemUrl: 指定要匯出的 Web 應用程式、 GUID 或物件的 URL。

範例:

# Create new package from an on-premises SharePoint Server site

Export-SPWeb [-Identity] <SPWebPipeBind> -Path <String> [-ItemUrl <String>] [-NoFileCompression <SwitchParameter>]

建立內容的套件之後, ConvertTo SPOMigrationTargetedPackage命令將轉換成代表暫存資料夾中產生的 xml。將另存一組新的目標移轉套件的中繼資料檔案的目標目錄。 這是最後一個套件。

注意事項 附註:
在目標網站集合系統管理員認證可用來收集資料連線至資料的網站集合。

有六個必要的參數可輸入 (其他人皆為選用)

  • TargetwebURL ︰ 點至目的地網站

  • SourceFilesPath ︰ 指向您要移轉

  • SourcePackagePath ︰ 點至暫時套件資料夾

  • OutputPackagePath ︰ 指向您的最後一個套件資料夾

  • TargetDocumentLibraryPath ︰ 路徑到目的地文件庫

  • 認證 ︰ SPO 認證目的地網站的管理員權限

範例:

# Convert package to a targeted one by looking up data in target site collection

ConvertTo-SPOMigrationTargetedPackage -SourceFilesPath $sourceFiles -SourcePackagePath $sourcePackage -OutputPackagePath $targetPackage -TargetWebUrl $targetWeb -TargetDocumentLibraryPath $targetDocLib -Credentials $creds

在此步驟中,移轉套件容器中建立 Azure 儲存使用使用組 SPOMigrationPackageAzureSource ] 命令儲存帳戶認證。套件檔案上傳至 container,完成時,將檔案的快照並再 PowerShell 變數傳回的連線字串。

有五個必要的參數可輸入 (其他人皆為選用)

SourceFilePath︰ 指向您要移轉的內容

SourcePackagePath︰ 指向您的最後一個套件資料夾

AccountName: Azure 的存放區的帳戶名稱

Accountkey: Azure 儲存帳戶的按鍵

AzureQueueName: Azure 的佇列 BLOB (選用但建議使用) 的名稱

提示 提示:
執行下列命令的輸出並儲存在變數中的下一個命令。
$temporaryVariable = Set-SPOMigrationPackageAzureSource

範例:

# Create azure containers and upload package into them, finally snapshotting all files

$al = 組 SPOMigrationPackageAzureSource SourceFilesPath $sourceFiles-SourcePackagePath $targetPackage-AzureQueueName $azureQueueName-AccountName $azureAccountName-AccountKey $azureAccountKey

$al|fl

最後一個步驟是在目標網站集合中建立新的移轉工作使用送出 SPOMigrationJob命令並傳回代表 JobID 的 GUID。

有三個必要的參數可輸入 (其他人皆為選用):

  • TargetwebURL︰ 指向目的地的網頁

  • MigrationPackageAzureLocations: 從上一個命令之暫存變數

  • 認證︰ SPO 認證目的地網站的網站集合管理員權限

範例:

# Submit package data to site collection to create new migration job

Submit-SPOMigrationJob -TargetWebUrl $targetWeb -MigrationPackageAzureLocations $al -Credentials $creds

# Example file share packaging, conversion, upload and job submission script
# Queue is only container specified as new containers are automatically generated
# All container URIs get populated into $al variable output from Set-SPOMigrationPackageAzureSource cmdlet
$creds = (Get-Credential admin@contoso.com)
$sourceFiles = '\\fileshare\users\charles'
$sourcePackage = 'C:\migration\CharlesDocumentsPackage_source'
$targetPackage = 'C:\migration\CharlesDocumentsPackage_target'
$targetWeb = 'https://contoso-my.sharepoint.com/personal/charles_contoso_com'
$targetDocLib = 'Documents'
$azureAccountName = 'contosomigration'
$azureAccountKey = 'Insert Azure Account Key string Here'
$azureQueueName = 'migrationqueue'
# Create new package from file share without security (faster)
New-SPOMigrationPackage -SourceFilesPath $sourceFiles -OutputPackagePath $sourcePackage
# Convert package to a targeted one by looking up data in target site collection
ConvertTo-SPOMigrationTargetedPackage -SourceFilesPath $sourceFiles -SourcePackagePath $sourcePackage -OutputPackagePath $targetPackage -TargetWebUrl $targetWeb -TargetDocumentLibraryPath $targetDocLib -Credentials $creds
# Create azure containers and upload package into them, finally snapshotting all files
$al = Set-SPOMigrationPackageAzureSource -SourceFilesPath $sourceFiles -SourcePackagePath $targetPackage -AzureQueueName $azureQueueName -AccountName $azureAccountName -AccountKey $azureAccountKey
# This displays the return Azure location
$al|Format-List
# Submit package data to site collection to create new migration job
Submit-SPOMigrationJob -TargetWebUrl $targetWeb -MigrationPackageAzureLocations $al -Credentials $creds

送出工作之後,只有 Azure 和 SPO 會擷取並將內容移轉至目的地互動。 此程序是計時器工作起算,這表示它是根據第一個到第一個提供的佇列。這無法防止其他工作正在的同一人士排入佇列。 如果不有任何其他執行的工作,不有可能會的 1 分鐘延遲。

您可以透過檢視張貼 Azure 儲存帳戶佇列中的即時更新檢查您工作的狀態。

Azure 儲存體帳戶佇列中的 SPO 遷移工作狀態

您可以尋找到資訊清單容器在 Azure 存放區中的每個項目發生的記錄檔。 在這個階段,它是現在可安心刪除這些容器如果您不想要保留其為 Azure 中的備份。 如果發生錯誤或警告, .err.wrn檔案將會建立資訊清單容器中。

檢視 Azure 儲存體中資訊清單容器內的 SPO 移轉記錄

$userName = "admin@contoso.onmicrosoft.com"
$adminSite = "https://contoso-admin.sharepoint.com"
 $sourceFilePath = "D:\data\documents\"
$packagePath = "d:\data\documentPackage"
$targetWebUrl = "https://contoso.sharepoint.com/sites/finance"
 $spoPackagePath = "d:\data\documentPackageForSPO"
$targetLibrary = "Shared Documents"
 $azureAccountName = "acctName"
$azureAccountKey = "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000=="
$azureQueueName = "contosoMigrationQueue"
 $cred = Get-Credential $userName
New-SPOMigrationPackage -SourceFilesPath $sourceFilePath -OutputPackagePath $packagePath
 ConvertTo-SPOMigrationTargetedPackage -TargetWebUrl $targetWebUrl -SourceFilesPath $sourceFilePath -SourcePackagePath $packagePath -OutputPackagePath $spoPackagePath -TargetDocumentLibraryPath $targetLibrary -Credentials $cred
$azureSource = Set-SPOMigrationPackageAzureSource -SourceFilesPath $sourceFilePath -SourcePackagePath $spoPackagePath -AccountName $azureAccountName -AccountKey $azureAccountKey -AzureQueueName $azureQueueName
Submit-SPOMigrationJob -TargetWebUrl $targetWebUrl -MigrationPackageAzureLocations $azureSource -Credentials $cred 

 

說明

建議

套件大小

2-4 GB

檔案大小

2 GB

目標大小

目標網站應該都維持非可存取的使用者移轉已完成

SharePoint Online 的限制

SharePoint Online 和 OneDrive for Business: 軟體界限和限制SharePoint Online: 軟體界限和限制

 

資源

預設/限制

每個儲存帳戶 TB

500 TB

單一 blob 容器、 表格或佇列的大小上限

500 TB

Blob 容器、 blob、 檔案共用、 表格、 佇列、 實體或儲存帳戶每封郵件的最大數目

只限制為 500 TB 儲存帳戶容量

單一 blob 的目標輸送量

最多 60 MB 每第二個,或最多 500 個每秒要求數目

顯示: