Microsoft 365 开发:通过Powershell预先排错已删除或者已存在的Site Collection

时间:2022-12-17 16:55:03

Blog链接:​https://blog.51cto.com/13969817

我们都知道SPO Admin或者网站所有者在删除Site Collection的时候,默认是soft delete,Site Collection并没有真正的被删除,而是在Recycle bin里保留93天,如果这期间想恢复Site Collection的话,是可以直接恢复的,那么这种情况下就会给我们Admin造成了一点小麻烦:日后在接到End User请求需要创建Site Collection的时候,可能因为Site Collection删除存在Recycle bin的情况下,导致创建请求失败,或者网站出现同名的情况下都会遇到如下问题:

网站存在Recycle bin导致请求失败截图:

Microsoft 365 开发:通过Powershell预先排错已删除或者已存在的Site Collection

网站命名冲突导致创建失败截图:

Microsoft 365 开发:通过Powershell预先排错已删除或者已存在的Site Collection

这里建议,大家在创建之前,先通过命令排查一下已经删除的网站和现有在Active Site列表里的网站,确保没有问题的情况下,我们在进行脚本创建。

排查已经删除的Site Collection 命令如下所示:

Get-SPODeletedSite

Microsoft 365 开发:通过Powershell预先排错已删除或者已存在的Site Collection

这样,我们获取到的删除时间,就可以推断是否存储在Recycle bin中了,如果存在就可以跟end user讨论是重新命名还是直接从recycle bin中恢复之前的Site Collection.

排查存在Active Site列表里的网站,命令如下所示:

Get-SPOSite -Detailed | Format-Table -AutoSize

Microsoft 365 开发:通过Powershell预先排错已删除或者已存在的Site Collection

通过上述两种检查方式,就可以提前预防创建网站失败的情况,及时发现网站冲突可以直接跟end user确认相关替代方案,简单高效的处理问题。

仅此本文,希望能给运维的小伙伴提供相关的方法,谢谢大家的阅读。