scloud by Florian Salzmann
ende

Microsoft Teams Cache einmalig löschen - Intune

In den vergangen zwei Wochen hatte ich bei einigen Kunden das Problem, dass Teams in einem “Boot-Loop” stecken bliebt. Der Benutzer sah nur noch “Microsoft Teams loading…”.
Das Problem kannst du einfach lösen, indem du den Teams Cache bereinigst. Um den Teams Cache zentral für alle Benutzer zu löschen, habe ich ein PowerShell Script, dass mit Intune verteilt werden kann, geschrieben.

So sieht der Boot Loop aus, ein Fehler wird auch nach 20 min warten nicht angezeigt:

Teams

Teams Chache manuell löschen

Den Teams Cache kannst du mit einem Einzeiler in PowerShell manuell auf dem Gerät für den aktuellen User sowie mit Admin-Rechten für alle Benutzer am Gerät löschen.

# All Users
Get-ChildItem "C:\Users\*\AppData\Roaming\Microsoft\Teams\*" -directory | Where name -in ('application cache','blob storage','databases','GPUcache','IndexedDB','Local Storage','tmp') | ForEach{Remove-Item $_.FullName -Recurse -Force }

# Current User
Stop-Process -Name Teams; Get-ChildItem -Path "$env:USERPROFILE\AppData\Roaming\Microsoft\Teams" -Directory | Where{$_ -in ('Cache','databases','blob_storage','IndexedDB','GPUCache','Local Storage','tmp','')} | ForEach{Remove-Item $_.FullName -Recurse -Force}

Teams Chache via Intune löschen

Um einmalig beim System Start den Teams Cache mit Intune zu löschen, habe ich ebenfalls ein PowerShell Script geschrieben. Dieses kannst du einfach per Intune verteilen. Hierdurch führt das Script folgende Tasks aus:

  • Bei der ersten Ausführung:
    • Das Script speichert sich selbst auf dem Gerät ab.
    • Erstellt einen Scheduled Task, welcher beim Systemstart als System ausgeführt wird.
  • Bei der zweiten Ausführung (via Scheduled Task):
    • Der Teams Cache wird für alle Benutzer gelöscht.
    • Der erstellte Scheduled Task wird gelöscht.
    • Das Script selbst auf dem Gerät wird gelöscht.

Script auf GitHub

Zur Verteilung des Scrips kannst du einfach im Endpoint Manager unter “Devices > Windows > PowerShell scripts” ein neues PowerShell Script als System im 64-bit Kontext erstellen sowie der gewünschten Gruppe zuweisen.

PowerShell script Intune, title and description

run as system in 64bit context

Gilt das auch für “New Teams”?

Nein - dieses Script zielt auf die Cache-Pfade der klassischen Teams-Electron-App unter AppData\Roaming\Microsoft\Teams. “New Teams” (die WebView2-basierte Neuentwicklung) legt seinen Cache stattdessen unter AppData\Local\Packages\MSTeams_8wekyb3d8bbwe ab. Läuft bei deinen Usern bereits New Teams, muss das Script entsprechend auf diesen Pfad angepasst werden.

Wie prüfe ich, ob der Scheduled Task sauber durchgelaufen ist?

Nach dem zweiten Neustart sollte der von Schritt eins erstellte Scheduled Task nicht mehr in der Aufgabenplanung (taskschd.msc) auftauchen, und auch das Script selbst sollte vom Gerät entfernt sein - beides ist der Beweis, dass die Bereinigung vollständig durchgelaufen ist. Ist der Task nach dem zweiten Neustart noch vorhanden, wurde er entweder nicht als System ausgeführt oder eine Softwarerichtlinie verhindert die Ausführung von Scheduled Tasks - prüfe in diesem Fall die Ausführung über die Intune-Script-Statusübersicht.

Ähnliche Beiträge

Intune Autopilot Set Time Zone
Microsoft Intune

Zeitzone automatisch setzen in Intune Autopilot

Setze die richtige Zeitzone während Intune Autopilot automatisch – mit meinem PowerShell-Skript und der IPInfo API. Schnell, einfach und ohne zusätzliche Dienste.

Windows Service mit Intune Verwalten
Microsoft Intune

Windows Service mit Intune Verwalten

Lerne, wie du Windows Services mit Microsoft Intune verwalten kannst. Ich nutze dazu PowerShell und die Script Funktion.

Start-SplashScreen: Splasscreen or Windows
PowerShell

Splash Screen für Windows: Start-SplashScreen

Ein PowerShell-Splashscreen für Windows mit Start-SplashScreen. Verbessere die Benutzerfreundlichkeit, verfolge den Skriptfortschritt und mehr.