次の方法で共有


ログオン セッション ID を含む %TEMP% フォルダーが予期せず削除される

この記事では、ログオン セッション ID を含む %TEMP% フォルダーがインストールされている Windows Server で削除される問題の回避策について説明します。

適用対象: Windows Server 2022、Windows Server 2019
元の KB 番号: 4506040

現象

デスクトップ エクスペリエンスがインストールされている Windows Server では、セッション ID を含む %TEMP% フォルダーは、コンピューターに 7 日以上ログオンしたままの場合は削除されます。 そのため、 %TEMP% にアクセスする必要がある一部のアプリケーションは、その後正しく動作しません。

%TEMP% フォルダー パスを確認し、フォルダーが削除されたことを確認するには、次のコマンドを実行します。 出力例を示します。

C:\Users\Administrator>set TEMP
TEMP=C:\Users\ADMINI~1\AppData\Local\Temp\1
C:\Users\Administrator>dir %TEMP%
Volume in drive C has no label.

Volume Serial Number is C861-D3EF

Directory of C:\Users\ADMINI~1\AppData\Local\Temp

File Not Found

次のシナリオでは、この問題は発生しません。

  • %TEMP% フォルダーにはログオン セッション ID は含まれません。 たとえば、C:\Users\<User Account>\AppData\Local\Temp のようにします。
  • %TEMP% フォルダーが空ではありません。
  • 誰もサーバーにログオンしないか、ユーザー セッションが 7 日以内に終了します。

%TEMP% フォルダーが SilentCleanup (cleanmgr.exe) または Storage Sense (storsvc.exe) によって削除される

この動作は仕様によるものです。

ログオン セッションが 7 日を超えると、 %TEMP% フォルダーは SilentCleanup タスク (cleanmgr.exe) によって削除されます。 SilentCleanup は自動メンテナンスと共に毎日スケジュールされます。

Storage Sense (storsvc.exe) を有効にすると、 %TEMP% フォルダーが削除される可能性があります。 ストレージ センサーは既定では無効になっていますが、C ドライブの空き領域が不足すると有効になる場合があります。

この問題を回避するには、次の手順に従ってください。

  1. フォルダー値 (推奨) から %TEMP% エントリを削除するか、LastAccess 値を変更します
  2. ストレージ センサーを無効にする (ストレージ センサーが有効になっている場合)
  3. 空きディスク領域の不足に関する警告を無効にします
  4. グループ ポリシーを使用してストレージ センサーを無効にする (Windows Server 2022 のみ)

手順 1: フォルダー値から %TEMP% エントリを削除するか、LastAccess 値を変更する

%TEMP% エントリを削除する (推奨)

  1. レジストリ エディターを開きます。 [スタート]>[ファイル名を指定して実行] の順に選択し、「regedit」と入力して、[OK] を選択します。

  2. 次のレジストリ サブキーを見つけてクリックします。

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\VolumeCaches\Temporary Files

  3. Folderを右クリックし、Modify を選択します。

  4. [ 値データ ボックスで、 %TEMP% エントリを削除し、 OK を選択します。 例えば次が挙げられます。

    編集前の値:

    %TEMP%|%WINDIR%\Temp|%WINDIR%\Logs|%WINDIR%\System32\LogFiles

    編集後の値:

    %WINDIR%\Temp|%WINDIR%\Logs|%WINDIR%\System32\LogFiles

  5. Registry エディターを終了します

Note

この構成を行った後、空き領域が不足しないように、 %TEMP% フォルダーを手動で削除する必要があります。

LastAccess 値を変更することもできます。

LastAccess 値を変更する

Note

Windows Server 2019 の場合は、最初 April 累積的な更新プログラム インストールしてから、次の手順に従います。

  1. レジストリ エディターを開きます。 [スタート]>[ファイル名を指定して実行] の順に選択し、「regedit」と入力して、[OK] を選択します。

  2. 次のレジストリ サブキーを見つけてクリックします。

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\VolumeCaches\Temporary Files

  3. LastAccess を右クリックし、Modify を選択します。

  4. [ Value data ボックスに、値を日数で入力します。 既定値は 7 です。 設定できる最大値は、1601 年 1 月 1 日から現在までの日数です。

  5. Registry エディターを終了します

Note

この構成を行った後、 LastAccess 値は、すべての一時フォルダー内のファイル cleanmgr.exe 削除する期間を制御します。 LastAccess値が大きすぎると、空き領域が使い果たされる可能性があります。

cleanmgr.exe設定に加えて、Storage Sense に対して次の設定を行います。

Note

Storage Sense の構成を行った後は、C ドライブの空き領域が不足しないように注意してください。

手順 2: ストレージ センサーを無効にする (ストレージ センサーが有効になっている場合)

  1. Start>Settings>System>Storage に移動します。
  2. Storage Sense をオフにします。
  3. Settings を終了します。

手順 3: 空きディスク領域の不足に関する警告を無効にする

C ドライブの空きディスク領域が不足すると、Storage Sense が有効になっている可能性があります。 次の手順を使用して、空きディスク領域の不足に関する警告を無効にすることができます。

  1. レジストリ エディターを開きます。 Start>Run を選択し、「regedit」と入力して、OK を選択します。

  2. 次のレジストリ サブキーを見つけて選択します。

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer

  3. Edit に移動し、New>DWORD 値を選択します。

  4. NoLowDiskSpaceChecks」と入力し Enter キーを押します。

  5. NoLowDiskSpaceChecks値を右クリックし、Modify を選択します。

  6. [Value data ボックスに「1」と入力し、OK を選択します。

  7. レジストリ エディターを閉じます。

  8. コンピューターを再起動します。

手順 4: グループ ポリシーを使用してストレージ センサーを無効にする (Windows Server 2022 のみ)

Windows Server 2022 の場合は、次のようにグループ ポリシーを使用してストレージ センサーを無効にする必要もあります。

  1. グループ ポリシー エディターを開きます。 Start>Run を選択し、「gpedit.msc」と入力して、OK を選択します。

  2. 次のポリシーを見つけます。

    Computer Configuration>Administrative Templates>System>Storage Sense

  3. Allow Storage Sense ポリシーを編集して、Disabled

  4. グループ ポリシー エディター 閉じます

リファレンス

ストレージ センサーの詳細については、「 記憶域センサーを使用したドライブ領域の管理を参照してください。