SharePoint Online : restaurer le sous-site supprimé de la corbeille à l'aide de PowerShell
Exigence : L'utilisateur a supprimé un sous-site par erreur. Il est désormais nécessaire de restaurer le sous-site supprimé dans SharePoint Online.
Comment restaurer un sous-site supprimé dans SharePoint ?
Est-ce que vous ou l'utilisateur final avez déjà accidentellement supprimé un sous-site dans SharePoint Online ? Quelqu'un disposant des autorisations de contrôle total a-t-il appuyé par erreur sur le bouton Supprimer ? (Dans les sites d’équipe et de communication modernes, il est disponible pour tous les utilisateurs finaux disposant d’autorisations de contrôle total). Si tel est le cas, ne vous inquiétez pas : les sous-sites supprimés dans SharePoint Online sont déplacés vers la corbeille de deuxième étape et peuvent être restaurés par les administrateurs de la collection de sites. Cet article de blog vous guidera à travers les étapes nécessaires pour restaurer un sous-site supprimé dans SharePoint Online. Nous utiliserons la corbeille SharePoint et les méthodes PowerShell pour restaurer le sous-site.
Pour restaurer un sous-site supprimé dans SharePoint, procédez comme suit :
- Connectez-vous à la collection de sites SharePoint Online en tant qu'administrateur de collection de sites
- Cliquez sur l'icône d'engrenage des paramètres >> Informations sur le site >> Afficher tous les paramètres du site
- Cliquez sur « Corbeille » sous Administration de la collection de sites pour accéder à la corbeille de la collection de sites.
- Cliquez sur le lien « Corbeille de deuxième étape » et sélectionnez le sous-site souhaité en cochant la case du sous-site (URL de la corbeille de deuxième étape : https://
.sharepoint.com/sites/Marketing/_layouts /15/AdminRecycleBin.aspx?view=13) - Cliquez sur le bouton « Restaurer » dans la barre de commandes pour commencer à restaurer le sous-site, et votre sous-site sera de nouveau opérationnel en un rien de temps.
Par défaut, les sites SharePoint supprimés sont conservés pendant 93 jours dans la corbeille. Si vous ne trouvez pas vos sous-sites dans la corbeille - Votre site peut être complètement supprimé ! Il vous reste donc à restaurer les sauvegardes de la base de données de contenu dans l'environnement SharePoint sur site ou à créer un ticket de support auprès de Microsoft pour SharePoint Online. Les instructions pour restaurer le site peuvent différer un peu sur les sites/sites de groupe modernes.
Restaurer le sous-site supprimé de la corbeille à l'aide de PowerShell
Comment récupérer un sous-site supprimé avec PowerShell ? Voici comment restaurer un sous-site supprimé dans SharePoint Online à l'aide de PowerShell :
#Load SharePoint Online Assemblies
Add-Type -Path "C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\16\ISAPI\Microsoft.SharePoint.Client.dll"
Add-Type -Path "C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\16\ISAPI\Microsoft.SharePoint.Client.Runtime.dll"
#Variables for Processing
$SiteUrl = "https://crescent.sharepoint.com/sites/Marketing"
$DeletedSubsiteURL="/sites/marketing/2018/docs"
#Get the credentials to connect
$Cred= Get-Credential
$Credentials = New-Object Microsoft.SharePoint.Client.SharePointOnlineCredentials($Cred.Username, $Cred.Password)
Try {
#Setup the context
$Context = New-Object Microsoft.SharePoint.Client.ClientContext($SiteUrl)
$Context.Credentials = $Credentials
#Get the Admin recycle bin
$Site = $Context.Site
$RecycleBinItems = $Site.RecycleBin
$Context.Load($Site)
$Context.Load($RecycleBinItems)
$Context.ExecuteQuery()
#Frame DirName (Parent Site URL) and LeafName (Subsite URL)
$DirName=$DeletedSubsiteURL.Substring(1,$DeletedSubsiteURL.LastIndexOf("/")-1)
$LeafName=$DeletedSubsiteURL.Substring($DeletedSubsiteURL.LastIndexOf("/")+1)
#Get the deleted subsite from Recycle bin
$DeletedSubsite = $RecycleBinItems | Where { ($_.DirName -eq $DirName) -and ($_.LeafName -eq $LeafName)}
If($DeletedSubSite -ne $Null)
{
#Restore the first subsite found from Recylce bin
$DeletedSubSite[0].Restore()
$Context.ExecuteQuery()
Write-Host -f Green "Deleted Subsite restored Successfully!"
}
else
{
Write-Host -f Yellow "Deleted Subsite Not Found in Recycle Bin!"
}
}
catch {
write-host "Error: $($_.Exception.Message)" -foregroundcolor Red
}
Une fois le sous-site restauré vers sa destination, vous pourrez y accéder ainsi qu'à tout contenu de site associé avec ses fichiers d'origine, comme vous le faisiez auparavant.
SharePoint Online : PnP PowerShell pour restaurer le sous-site supprimé
Utilisons la commande PnP PowerShell Restore-PnPRecycleBinItem pour restaurer le sous-site SharePoint Online. Ce script PowerShell se connecte d'abord au site SharePoint Online. Ensuite, récupère tous les sous-sites supprimés avec la cmdlet « Get-PnPRecycleBinItem », y compris le sous-site que vous souhaitez restaurer. Enfin, restaure le sous-site à l’aide de l’applet de commande PowerShell « Restore-PnPRecycleBinItem ». Spécifiez simplement l'URL du sous-site et exécutez le script. Le sous-site sera restauré à son emplacement d'origine.
#Config Variables
$SiteURL = "https://Crescent.sharepoint.com/sites/Marketing"
$SiteTitle="Branding"
#Connect to PnP Online
Connect-PnPOnline -Url $SiteURL -Credentials (Get-Credential)
#Get Deleted Subsite
$DeletedSite = Get-PnPRecycleBinItem -RowLimit 500000 | Where { $_.Title -eq $SiteTitle -and $_.ItemType -eq "Web"}
#Restore Subsite
If($DeletedSite)
{
Restore-PnPRecycleBinItem -Identity $DeletedSite -Force -ErrorAction Stop
Write-Host -f Green "Subsite '$SiteTitle' restored successfully!"
}
Else
{
Write-host -f Yellow "Could not Find deleted Subsite:"$SiteTitle
}
Après avoir restauré le sous-site, accédez à l'URL du sous-site pour vérifier qu'il a été restauré avec succès. Si le sous-site a été restauré avec succès, vous devriez pouvoir y accéder et voir tout le contenu et les paramètres qui étaient présents avant la suppression du sous-site.
Pour restaurer une collection de sites SharePoint dans SharePoint Online à partir du centre d'administration SharePoint ou de PowerShell, utilisez : SharePoint Online : Comment restaurer une collection de sites supprimée à l'aide de PowerShell ?
Questions fréquemment posées:
Comment restaurer un document dans SharePoint Online ?
Pour restaurer un document dans SharePoint Online, suivez ces étapes : Connectez-vous à votre site SharePoint Online, cliquez sur l'icône Paramètres >> Choisissez le « Contenu du site » et cliquez sur le lien Corbeille. Sélectionnez chaque élément que vous souhaitez restaurer sur la page Corbeille et cliquez sur le bouton « Restaurer ».
Plus d'informations : SharePoint Online : restaurer les éléments supprimés de la corbeille à l'aide de PowerShell.
Comment restaurer un dossier supprimé sur SharePoint ?
Pour restaurer un dossier supprimé dans la bibliothèque de documents SharePoint Online, accédez à votre site SharePoint >> Cliquez sur l'engrenage Paramètres et choisissez le lien « Contenu du site ». Sur la page de contenu du site, cliquez sur le lien Corbeille. Sélectionnez le dossier à restaurer depuis la corbeille et cliquez sur le bouton « Restaurer » dans la barre d'outils.
Plus d'infos : Restaurer un dossier supprimé dans SharePoint Online avec PowerShell
Comment supprimer un sous-site dans SharePoint Online à l'aide de PowerShell ?
Utilisez la méthode CSOM « $web.DeleteObject() » pour supprimer un sous-site dans Sharepoint Online. Avec PnP PowerShell, vous pouvez utiliser l'applet de commande « Remove-PnPWeb ».
Plus d'informations : PowerShell pour supprimer un sous-site dans SharePoint Online
