SharePoint Onlineで複数のサイトを管理していると、各サイトに容量上限や警告レベルを設定する作業が必要になることがあります。手動で設定するのは時間がかかり、効率的ではありません。
この記事ではPowerShellとCSVファイルを使って、複数のサイトに対して容量上限と警告レベルを一括設定する方法をご紹介します。
事前準備:SharePoint管理センターで「サイトのストレージ管理」を手動に設定
PowerShellを使用してSharePointサイトの容量上限を設定するには、まず SharePoint管理センター で「サイトのストレージ管理」を 「自動」から「手動」 に変更する必要があります。この設定が「自動」のままだと、PowerShellスクリプトで容量上限を指定しても反映されません。
手動に設定する手順
- SharePoint管理センターにアクセス
- SharePoint管理センターに、SharePoint Online管理者アカウントでサインインします。
- 左側のナビゲーションメニューから「管理センター」>「SharePoint」を選択します。
- 「ストレージ管理」設定を確認・変更
- 左メニューの「設定」をクリックし、「サイトのストレージ管理」セクションを探します。
- デフォルトでは「自動」になっているため、ここで「手動」に変更します。
- 変更を保存
- 「手動」に設定を変更したら、画面下部の「保存」をクリックして設定を確定します。
これで、PowerShellスクリプトから各サイトごとに容量上限と警告レベルを設定できるようになります。
CSVファイルの作成
次に、容量設定を行いたいサイトのリストをCSVファイルにまとめます。このリストを参照して、PowerShellが各サイトに対して設定を適用します。
sites.csv の内容
CSVファイルの名前は sites.csv
とし、以下の形式で作成します。
SiteUrl
https://yourtenant.sharepoint.com/sites/Site1
https://yourtenant.sharepoint.com/sites/Site2
https://yourtenant.sharepoint.com/sites/Site3
- SiteUrl: 設定対象の各SharePointサイトのURLを1行ごとに記載します。
このCSVファイルを、後で使用するPowerShellスクリプトで指定します。
PowerShellスクリプトで容量上限と警告レベルを一括設定
CSVファイルの準備ができたら、次はPowerShellスクリプトを作成して容量設定を実行します。このスクリプトはCSVファイルを読み込み、各サイトに対して容量上限を10GB(10000MB)、警告レベルを9GB(9000MB)に一括で設定します。
PowerShellスクリプト
以下のPowerShellスクリプトを使用します。
# SharePoint Online PowerShellモジュールのインポート
Import-Module Microsoft.Online.SharePoint.PowerShell -ErrorAction Stop
# SharePoint Online管理センターに接続
Connect-SPOService -Url https://yourtenant-admin.sharepoint.com
# CSVファイルのパス
$csvPath = "C:\path\to\sites.csv"
# CSVファイルを読み込み
$sites = Import-Csv -Path $csvPath
# 各サイトに対して容量上限と警告レベルを設定
foreach ($site in $sites) {
$siteUrl = $site.SiteUrl
try {
# 警告レベルの設定(9GB = 9000MB)
Set-SPOSite -Identity $siteUrl -StorageQuotaWarningLevel 9000
# 容量上限の設定(10GB = 10000MB)
Set-SPOSite -Identity $siteUrl -StorageQuota 10000
Write-Host "設定完了: $siteUrl"
}
catch {
Write-Host "エラー発生: $siteUrl - $($_.Exception.Message)"
}
}
# SharePoint Onlineから切断
Disconnect-SPOService
スクリプトの説明
Connect-SPOService
: 自身のテナントSharePoint管理センターURLを指定し接続します。$csvPath
:作成したcsvファイルの保存先パスを指定します。Set-SPOSite -Identity $siteUrl -StorageQuotaWarningLevel 9000
: 容量警告レベルを9GBに設定します。Set-SPOSite -Identity $siteUrl -StorageQuota 10000
: 容量上限を10GBに設定します。- try-catch構文: エラーが発生した場合にエラーメッセージを表示し、スクリプトが停止しないようにします。
スクリプト実行手順
sites.csv
ファイルを作成し、スクリプトで指定したパスに保存します。- SharePoint管理センターで「サイトのストレージ管理」を「手動」に設定したことを確認します。
- PowerShellスクリプトを実行し、SharePointサイトの容量上限と警告レベルが正しく設定されることを確認します。
注意点
- CSVファイルの内容を確認: CSV内のURLに誤りがあるとスクリプトがエラーを出すため、内容を事前に確認しましょう。
- 警告レベル: 警告レベルは容量上限よりも低い値に設定する必要があります。容量上限より大きな警告レベルを設定するとエラーが発生します。
- 管理者権限: PowerShellでの設定変更には、SharePoint Onlineの管理者権限が必要です。
Microsoft 365に関するご相談はWITHWITへ
Microsoft 365に関するご相談やお悩みがございましたら、ぜひWITHWITまでお気軽にお問い合わせください。
数あるクラウドサービスの中でMicrosoft 365 に特化してきたからこそ導入前から導入後の定着に至るまで、幅広いご相談に対応いたします。