Partager via


Compactage de disque dur virtuel

VHD Disk Compaction est un processus qui s’exécute chaque fois qu’un utilisateur se déconnecte. Le processus de compactage est conçu pour réduire automatiquement la quantité de stockage du conteneur d’un utilisateur, en fonction d’un seuil prédéfini. Pendant la phase de déconnexion, FSLogix évalue le disque pour déterminer si le compactage du disque doit s’exécuter.

Remarque

Le compactage de disque dur virtuel affecte les conteneurs Profile et ODFC (y compris les configurations cloud Cache )

Le compactage de disque dur virtuel est activé par défaut. Si vous souhaitez le désactiver, consultez Désactiver le compactage de disque dur virtuel.

Le processus de compactage s’appuie sur le service Optimize Drives (defragsvc). Ce service détermine la taille minimale prise en charge en interrogeant l’API MSFT_Partition , à l’aide du paramètre SizeMin de la méthode GetSupportedSize . Cette opération prend en compte l’emplacement des fichiers inaménagés (c’est-à-dire les fichiers qui ne peuvent pas être déplacés). Pour plus d’informations, consultez la méthode GetSupportedSize de la classe MSFT_Partition.

Important

  • Si le StartupType du service Optimize Drives (defragsvc) est défini sur Disabled, VHD Disk Compaction ne parvient pas à interroger la taille minimale prise en charge et le processus ne s’exécute pas. Le startupType du service doit être défini sur Manuel ou Automatique, que l’état du service soit en cours d’exécution ou arrêté.

  • Vous devez utiliser des disques durs virtuels en expansion dynamique ; Les disques durs virtuels de taille fixe ne peuvent pas être compactés.

Détermination du moment où vHD Disk Compaction s’exécute

FSLogix détermine s’il faut exécuter le processus de compactage chaque fois qu’un utilisateur se déconnecte. Si les critères suivants sont remplis, VHD Disk Compaction s’exécute :

  • La taille du conteneur doit être supérieure à 1 Go (taille sur le disque).
  • Différence(C) entre la taille consommée sur le disque(A) et la taille minimale interrogée(B). La différence doit être supérieure ou égale à 20 % de la taille consommée dans le conteneur (A).

La différence est calculée comme suit :

  • A - B = C
    • Si C ≥ (A x 0.2), le compactage s’exécute.
    • Si C < (A x 0.2), le compactage ne s’exécute pas.

Exemple de scénarios

Voici quelques exemples :

  • Exemple 1 : La taille consommée d’un conteneur est de 6 Go. Lorsque nous appelons GetSupportedSize, la taille minimale résultante est de 2,5 Go :

    • 6 - 2,5 = 3,5 Go
    • 20 % de 6 Go = 1,2 Go
    • 3,5 Go est supérieur à 1,2 Go, les exécutions de compactage.
  • Exemple 2 : La taille consommée d’un conteneur est de 12 Go. Lorsque nous appelons GetSupportedSize, la taille minimale résultante est de 10 Go :

    • 12 - 10 = 2 Go
    • 20 % de 12 Go = 2,4 Go
    • 2 Go est inférieur à 2,4 Go, le compactage ne s’exécute pas.

Exemple de table :

Conteneur Fixe/dynamique Taille configurée Taille consommée Taille prise en charge Sera-t-il compacté ?
<username>profile_.vhdx Dynamique 30 Go 6 Go 2.5 Go Oui
<username>profile_.vhdx Dynamique 30 Go 12 Go 10 Go Non
<username>profile_.vhdx Résolution 30 Go 30 Go S/O Non

Expérience utilisateur

Lorsque le compactage s’exécute, les utilisateurs voient le message En attente de FSLogix Apps Services pendant un certain temps. Selon l’espace à récupérer, le processus de compactage doit prendre une moyenne de 20 à 30 secondes. La première opération compacte est la plus longue et repose sur l’espace récupérable et d’autres facteurs de ressources de calcul.

Chaque déconnexion suivante doit être plus rapide, car la quantité de données à compacter doit diminuer. Le compactage de disque dur virtuel peut s’exécuter pendant un maximum de 5 minutes. Si ce maximum est atteint, l’opération se termine et la déconnexion se poursuit. Lors de la déconnexion suivante, l’opération reprend à partir de l’état précédent.

Événements Winlogon

VHD Disk Compaction fonctionne au moment de la déconnexion de l’utilisateur, qui fait partie du Winlogon processus. Le Winlogon processus crée un événement d’avertissement chaque fois qu’un processus entraîne la déconnexion de 60 secondes. Ces avertissements sont normaux et attendus. Le processus de compactage peut dépasser 60 secondes en fonction de la taille du disque dur virtuel(x) et de l’espace à récupérer. Le Winlogon seuil est une valeur fixe et ne peut pas être modifié.

Consultez Les avertissements de délai de winlogon (déconnexion) d’une requête Log Analytics pour afficher le nombre d’opérations qui dépassent le seuil de 60 secondes et leurs durées.

Étapes suivantes