Megosztás a következőn keresztül:


Azure Files visszaállítása a PowerShell-lel

Ez a cikk bemutatja, hogyan állíthat vissza egy teljes fájlmegosztást vagy adott fájlokat az Azure Backup szolgáltatás által az Azure PowerShell használatával létrehozott visszaállítási pontból. Az Azure Filest az Azure Portal, az Azure CLI és a REST API használatával is visszaállíthatja.

Egy teljes fájlmegosztást vagy adott fájlokat visszaállíthat a megosztáson. Visszaállíthatja az eredeti helyre vagy egy másik helyre.

Figyelmeztetés

Győződjön meg arról, hogy a PowerShell-verzió az AFS-biztonsági mentések esetében az "Az.RecoveryServices 2.6.0" minimális verziójára van frissítve. További információkért tekintse meg a módosításra vonatkozó követelményt ismertető szakaszt .

Feljegyzés

  • Az Azure Files visszaállítása csak ugyanazon előfizetésen belül támogatott a PowerShell vagy a parancssori felület használatakor.
  • Az Azure Backup mostantól támogatja több fájl vagy mappa visszaállítását az eredeti vagy alternatív helyre a PowerShell használatával. A dokumentum ezen szakaszában megtudhatja, hogyan.

Helyreállítási pontok lekérése

A Get-AzRecoveryServicesBackupRecoveryPoint használatával listázhatja a biztonsági mentési elem összes helyreállítási pontját.

A következő szkriptben:

  • A $rp változó a kijelölt biztonsági mentési elem helyreállítási pontjainak tömbje az elmúlt hét napból.
  • A tömb fordított időrendben van rendezve a legújabb helyreállítási ponttal a 0 indexnél.
  • A helyreállítási pont kiválasztásához használja a standard PowerShell-tömbindexelést.
  • A példában $rp[0] kiválasztja a legújabb helyreállítási pontot.
$vault = Get-AzRecoveryServicesVault -ResourceGroupName "azurefiles" -Name "azurefilesvault"
$Container = Get-AzRecoveryServicesBackupContainer -ContainerType AzureStorage -Status Registered -FriendlyName "afsaccount" -VaultId $vault.ID
$BackupItem = Get-AzRecoveryServicesBackupItem -Container $Container -WorkloadType AzureFiles -VaultId $vault.ID -FriendlyName "azurefiles"
$startDate = (Get-Date).AddDays(-7)
$endDate = Get-Date
$rp = Get-AzRecoveryServicesBackupRecoveryPoint -Item $BackupItem -VaultId $vault.ID -StartDate $startdate.ToUniversalTime() -EndDate $enddate.ToUniversalTime()
$rp[0] | fl

A kimenet a következőhöz hasonló.

FileShareSnapshotUri : https://testStorageAcct.file.core.windows.net/testAzureFS?sharesnapshot=2018-11-20T00:31:04.00000
                       00Z
RecoveryPointType    : FileSystemConsistent
RecoveryPointTime    : 11/20/2018 12:31:05 AM
RecoveryPointId      : 86593702401459
ItemName             : testAzureFS
Id                   : /Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testVaultRG/providers/Micros                      oft.RecoveryServices/vaults/testVault/backupFabrics/Azure/protectionContainers/StorageContainer;storage;teststorageRG;testStorageAcct/protectedItems/AzureFileShare;testAzureFS/recoveryPoints/86593702401462
WorkloadType         : AzureFiles
ContainerName        : storage;teststorageRG;testStorageAcct
ContainerType        : AzureStorage
BackupManagementType : AzureStorage

A megfelelő helyreállítási pont kiválasztása után visszaállítja a fájlmegosztást vagy a fájlt az eredeti helyre vagy egy másik helyre.

Fájlmegosztás visszaállítása másik helyre

A Restore-AzRecoveryServicesBackupItem parancs használatával állítsa vissza az kijelölt helyreállítási pontra. Adja meg ezeket a paramétereket a másodlagos hely azonosításához:

  • TargetStorageAccountName: Az a tárfiók, amelyre a biztonsági másolat tartalma visszaáll. A céltárfióknak ugyanabban a helyen kell lennie, mint a tárolónak.
  • TargetFileShareName: Azon tárfiókon belüli fájlmegosztások, amelyekre a biztonsági másolat tartalma visszaáll.
  • TargetFolder: A fájlmegosztás alatti mappa, amelyre az adatok visszaállítva lesznek. Ha a biztonsági másolat tartalmát gyökérmappába szeretné visszaállítani, adja meg a célmappa értékeit üres sztringként.
  • ResolveConflict: Utasítás, ha ütközik a visszaállított adatokkal. Fogadja el a(z) Felülírás vagy Kihagyás lehetőséget.

Futtassa a parancsmagot a paraméterekkel az alábbiak szerint:

Restore-AzRecoveryServicesBackupItem -RecoveryPoint $rp[0] -TargetStorageAccountName "TargetStorageAcct" -TargetFileShareName "DestAFS" -TargetFolder "testAzureFS_restored" -ResolveConflict Overwrite

A parancs egy nyomon követendő azonosítóval rendelkező feladatot ad vissza, ahogyan az alábbi példában is látható.

WorkloadName     Operation            Status               StartTime                 EndTime                   JobID
------------     ---------            ------               ---------                 -------                   -----
testAzureFS        Restore              InProgress           12/10/2018 9:56:38 AM                               9fd34525-6c46-496e-980a-3740ccb2ad75

Az Azure Files visszaállítása másik helyre

A Restore-AzRecoveryServicesBackupItem parancs használatával állítsa vissza az kijelölt helyreállítási pontra. Adja meg ezeket a paramétereket a másodlagos hely azonosításához és a visszaállítani kívánt fájl egyedi azonosításához.

  • TargetStorageAccountName: Az a tárfiók, amelyre a biztonsági másolat tartalma visszaáll. A céltárfióknak ugyanabban a helyen kell lennie, mint a tárolónak.
  • TargetFileShareName: Azon tárfiókon belüli fájlmegosztások, amelyekre a biztonsági másolat tartalma visszaáll.
  • TargetFolder: A fájlmegosztás alatti mappa, amelyre az adatok visszaállítva lesznek. Ha a biztonsági másolat tartalmát gyökérmappába szeretné visszaállítani, adja meg a célmappa értékeit üres sztringként.
  • SourceFilePath: A fájl abszolút elérési útja, amely sztringként állítható vissza a fájlmegosztásban. Ez az elérési út megegyezik a Get-AzStorageFile PowerShell-parancsmagban használt elérési útval.
  • SourceFileType: Azt jelzi, hogy ki van-e jelölve könyvtár vagy fájl. Elfogad Könyvtár vagy Fájl.
  • ResolveConflict: Utasítás, ha ütközik a visszaállított adatokkal. Fogadja el a(z) Felülírás vagy Kihagyás lehetőséget.

A további paraméterek (SourceFilePath és SourceFileType) csak a visszaállítani kívánt fájlhoz kapcsolódnak.

Restore-AzRecoveryServicesBackupItem -RecoveryPoint $rp[0] -TargetStorageAccountName "TargetStorageAcct" -TargetFileShareName "DestAFS" -TargetFolder "testAzureFS_restored" -SourceFileType File -SourceFilePath "TestDir/TestDoc.docx" -ResolveConflict Overwrite

Ez a parancs egy nyomon követendő azonosítóval rendelkező feladatot ad vissza, ahogy az előző szakaszban is látható.

Az Azure Files és a fájlok visszaállítása az eredeti helyre

Az eredeti helyre való visszaállításkor nem kell megadnia a célhoz és a célhoz kapcsolódó paramétereket. Csak a ResolveConflictet kell megadni.

Az Azure Files felülírása

Restore-AzRecoveryServicesBackupItem -RecoveryPoint $rp[0] -ResolveConflict Overwrite

Az Azure Files felülírása

Restore-AzRecoveryServicesBackupItem -RecoveryPoint $rp[0] -SourceFileType File -SourceFilePath "TestDir/TestDoc.docx" -ResolveConflict Overwrite

Több fájl vagy mappa visszaállítása eredeti vagy másodlagos helyre

A Restore-AzRecoveryServicesBackupItem paranccsal adja meg a MultipleSourceFilePath paraméter értékeként visszaállítani kívánt fájlok vagy mappák elérési útját.

Több fájl visszaállítása

A következő szkriptben megpróbáljuk visszaállítani a FileSharePage.png és MyTestFile.txt fájlokat.

$vault = Get-AzRecoveryServicesVault -ResourceGroupName "azurefiles" -Name "azurefilesvault"

$Container = Get-AzRecoveryServicesBackupContainer -ContainerType AzureStorage -Status Registered -FriendlyName "afsaccount" -VaultId $vault.ID

$BackupItem = Get-AzRecoveryServicesBackupItem -Container $Container -WorkloadType AzureFiles -VaultId $vault.ID -FriendlyName "azurefiles"

$RP = Get-AzRecoveryServicesBackupRecoveryPoint -Item $BackupItem -VaultId $vault.ID

$files = ("FileSharePage.png", "MyTestFile.txt")

Restore-AzRecoveryServicesBackupItem -RecoveryPoint $RP[0] -MultipleSourceFilePath $files -SourceFileType File -ResolveConflict Overwrite -VaultId $vault.ID -VaultLocation $vault.Location

Több könyvtár visszaállítása

Az alábbi szkriptben megpróbáljuk visszaállítani a zrs1_restore és a visszaállítási könyvtárakat.

$vault = Get-AzRecoveryServicesVault -ResourceGroupName "azurefiles" -Name "azurefilesvault"

$Container = Get-AzRecoveryServicesBackupContainer -ContainerType AzureStorage -Status Registered -FriendlyName "afsaccount" -VaultId $vault.ID

$BackupItem = Get-AzRecoveryServicesBackupItem -Container $Container -WorkloadType AzureFiles -VaultId $vault.ID -FriendlyName "azurefiles"

$RP = Get-AzRecoveryServicesBackupRecoveryPoint -Item $BackupItem -VaultId $vault.ID

$files = ("Restore","zrs1_restore")

Restore-AzRecoveryServicesBackupItem -RecoveryPoint $RP[0] -MultipleSourceFilePath $files -SourceFileType Directory -ResolveConflict Overwrite -VaultId $vault.ID -VaultLocation $vault.Location

A kimenet az alábbihoz hasonló lesz:

WorkloadName         Operation         Status          StartTime                EndTime       JobID
------------         ---------         ------          ---------                -------       -----
azurefiles           Restore           InProgress      4/5/2020 8:01:24 AM                    cd36abc3-0242-44b1-9964-0a9102b74d57

Ha több fájlt vagy mappát szeretne másik helyre visszaállítani, használja a fenti szkripteket a célhelyhez kapcsolódó paraméterértékek megadásával, ahogyan azt az Azure Files visszaállítása egy másik helyre című témakör ismerteti.

Következő lépések

Az Azure Files biztonsági mentéseinek kezelése az Azure Portal, az Azure PowerShell, az Azure CLI és a REST API használatával.