Accès aux données du contenu - Correction de l'emplacement du répertoire de contenu - Application

Microsoft.AppVirtualization.Server.45.LightWeightServer.ContentDataAccess_FixlocationoftheContentDirectory_Application (UnitMonitor)

Le nœud Accès aux données du contenu vérifie si Application Virtualization Streaming Server est capable d'accéder au répertoire du contenu, situé localement ou sur un partage réseau, et de lire les fichiers demandés. Le répertoire de contenu comprend les packages, dont les fichiers .SFT.

Knowledge Base article:

Résumé

Le nœud Accès aux données du contenu vérifie si Application Virtualization Streaming Server est capable d'accéder au répertoire du contenu, situé localement ou sur un partage réseau, et de lire les fichiers demandés. Le répertoire de contenu comprend les packages, dont les fichiers .SFT.

Résolutions

Ce code d'erreur est traité dans l'article de la Base des connaissances 931116. 

SYMPTÔMES

Lorsque vous démarrez le service
Application Virtualization Server, vous recevez le message d'erreur suivant :
  • Windows n'a pas pu démarrer Application Virtualization Server sur l'ordinateur local. Pour plus d'informations, consultez le journal des événements système. S'il ne s'agit pas d'un service Microsoft, contactez le fournisseur du service et faites référence au code d'erreur spécifique au service 41508.
De plus, l'événement suivant est consigné dans le journal système :
  • ID de l'événement : 7024 Source : Gestionnaire de contrôle des services Type : Description de l'erreur : Le service Application Virtualization Server s'est terminé en affichant l'erreur spécifique au service 41508.
Le message suivant est consigné dans le fichier journal (Sft-server.log) Application Virtualization Server :
41508 « Chemin racine non valide : <chemin> »

CAUSE

Ce problème se produit si l'une des conditions suivantes est remplie :
  1. Le chemin d'accès au répertoire de contenu n'est pas valide.
  2. Le compte de connexion Application Virtualization Server ne possède pas les autorisations permettant d'accéder au répertoire de contenu.

Par défaut, le chemin du répertoire de contenu est le suivant :  %ProgramFiles%\Microsoft

System Center App Virt Streaming Server\content

Le chemin du répertoire de contenu est configuré dans le registre local du serveur Application Virtualization Server et dans la base de données Application Virtualization. Au moment du démarrage du service Application Virtualization Server, celui-ci tente de se connecter au chemin d'accès configuré dans le registre. Si le service Application Virtualization Server ne peut pas se connecter, il tente de se connecter au chemin d'accès configuré dans la base de données Application Virtualization. Si le service ne parvient toujours pas à se connecter, il ne démarre pas.
 
Par défaut, le compte de connexion Application Virtualization Server est le compte Service réseau. Le compte de connexion Application Virtualization Server a besoin de l'autorisation d'accès en lecture pour accéder au répertoire de contenu. Si le chemin au répertoire de contenu utilise la convention d'affectation de noms (UNC), le compte de connexion Application Virtualization Server a besoin de l'autorisation d'accès en lecture sur le partage. Si le compte de connexion Application Virtualization Server ne possède pas les autorisations appropriées, le service ne démarre pas.

RÉSOLUTION

Pour résoudre ce problème, utilisez l'une des méthodes suivantes :

Méthode 1

Assurez-vous que le chemin d'accès du répertoire de contenu est valide. Pour ce faire, procédez comme suit :
  1. Démarrez l'éditeur du registre.
  2. Naviguez jusqu'à la sous-clé de registre suivante : HKEY_LOCAL_MACHINE\Software\Microsoft\SoftGrid\4.5\DistributionServer\PackageRoot.
  3. Cliquez avec le bouton droit de votre souris sur PackageRoot, puis cliquez sur Modifier.
  4. Notez le chemin d'accès du répertoire de contenu, puis cliquez sur Annuler.
  5. Quittez l'éditeur du registre.

Méthode 2

Assurez-vous que le compte de connexion Application Virtualization Server dispose des autorisations appropriées pour accéder au répertoire de contenu. Pour ce faire, procédez comme suit :

Identifiez le compte de connexion Application Virtualization Server. Pour ce faire, procédez comme suit :

  1. Dans le Panneau de configuration, ouvrez Outils d'administration, puis cliquez sur Services.
  2. Cliquez avec le bouton droit de la souris sur le serveur Application Virtualization Server, puis cliquez sur Propriétés.
  3. Cliquez sur l'onglet Connexion.
  4. Si ce compte est sélectionné dans la zone Ouvrir une session en tant que, notez le compte indiqué dans la zone Ce compte (la valeur par défaut est Service réseau). Si le compte du système local est sélectionné dans la zone Ouvrir une session en tant que, le compte de connexion Application Virtualization Server est le compte du système local (SYSTEM). Remarque : si le compte du système local est sélectionné dans la zone Ouvrir une session en tant que et si le répertoire de contenu est un répertoire local du serveur Application Virtualization Server, utilisez le compte du système local (SYSTEM) lorsque vous octroyez des autorisations. Si le répertoire de contenu est un chemin UNC, utilisez le compte de l'ordinateur local d'Application Virtualization Server lorsque vous accordez des autorisations.
  5. Quittez les Services.

Si le chemin d'accès au répertoire de contenu est un chemin UNC, assurez-vous que le compte de connexion Application Virtualization Server possède l'autorisation d'accès en lecture sur le partage. Pour ce faire, procédez comme suit :

  1. Démarrez l'explorateur Windows.
  2. Recherchez le répertoire de contenu.
  3. Cliquez avec le bouton droit de votre souris sur le partage, puis cliquez sur Propriétés.
  4. Cliquez sur l'onglet Partage.
  5. Assurez-vous que le compte que vous avez identifié précédemment possède l'autorisation d'accès en lecture sur le partage. Si tel n'est pas le cas, cliquez sur Autorisations, puis cochez la case Autoriser pour les autorisations d'accès en lecture.
  6. Cliquez sur OK, puis quittez l'explorateur Windows.

Element properties:

TargetMicrosoft.AppVirtualization.Server.45.LightWeightServer
Parent MonitorMicrosoft.AppVirtualization.Server.45.ContentDataAccess_LWS.HealthState
CategoryEventCollection
EnabledTrue
Alert GenerateTrue
Alert SeverityMatchMonitorHealth
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.Windows.2SingleEventLogManualReset3StateMonitorType
RemotableTrue
AccessibilityPublic
Alert Message
Accès aux données du contenu - Correction de l'emplacement du répertoire de contenu - Application
{0}
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.AppVirtualization.Server.45.LightWeightServer.ContentDataAccess_FixlocationoftheContentDirectory_Application" Accessibility="Public" Target="Microsoft.AppVirtualization.Server.45.LightWeightServer" TypeID="Windows!Microsoft.Windows.2SingleEventLogManualReset3StateMonitorType" ParentMonitorID="Microsoft.AppVirtualization.Server.45.ContentDataAccess_LWS.HealthState">
<Category>EventCollection</Category>
<AlertSettings AlertMessage="Microsoft.AppVirtualization.Server.45.LightWeightServer.ContentDataAccess_FixlocationoftheContentDirectory_Application.Alert">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Data/Context/EventDescription$</AlertParameter1>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="Yellow" HealthState="Warning" MonitorTypeStateID="FirstEventRaised"/>
<OperationalState ID="Red" HealthState="Error" MonitorTypeStateID="SecondEventRaised"/>
<OperationalState ID="Green" HealthState="Success" MonitorTypeStateID="ManualResetEventRaised"/>
</OperationalStates>
<Configuration>
<FirstComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/PrincipalName$</FirstComputerName>
<FirstLogName>Application</FirstLogName>
<FirstExpression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">Application Virtualization Server</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<Or>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">41520</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">41561</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">41584</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">42001</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">42002</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</Or>
</Expression>
</And>
</FirstExpression>
<SecondComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/PrincipalName$</SecondComputerName>
<SecondLogName>Application</SecondLogName>
<SecondExpression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">Application Virtualization Server</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<Or>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">41508</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">41523</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</Or>
</Expression>
</And>
</SecondExpression>
</Configuration>
</UnitMonitor>