Доступ к содержимому - Исправление расположения каталога содержимого - Приложение

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

Узел доступа к содержимому контролирует возможность сервера Application Virtualization Streaming Server получать доступ к каталогу содержимого, который может быть локальным или сетевым, и выполнять чтение запрошенных файлов. В каталоге содержимого хранятся пакеты, в том числе файлы с расширением SFT.

Knowledge Base article:

Сводка

Узел доступа к содержимому контролирует возможность сервера Application Virtualization Streaming Server получать доступ к каталогу содержимого, который может быть локальным или сетевым, и выполнять чтение запрошенных файлов. В каталоге содержимого хранятся пакеты, в том числе файлы с расширением SFT.

Решения

 Сведения об этом коде ошибки содержатся в статье базы знаний 931116.

СИМПТОМЫ

При запуске
службы Application Virtualization Server отображается следующее сообщение об ошибке.
  • Windows не удалось запустить сервер Application Virtualization Server на локальном компьютере. Дополнительные сведения см. в журнале системных событий. Если это не служба Microsoft, обратитесь к поставщику службы и укажите код внутренней ошибки 41508.
Кроме того, в журнал системных событий записывается следующее событие.
  • Код события: 7024 Источник: Диспетчер служб Тип: Описание ошибки Служба Application Virtualization Server остановлена из-за внутренней ошибки 41508.
В файле журнала Application Virtualization Server (Sft-server.log) делается следующая запись.
41508 «Недопустимый корневой путь: <путь>»

ПРИЧИНА

Данная проблема возникает при выполнении одного из следующих условий.
  1. Недопустимый путь к каталогу содержимого.
  2. Учетная запись входа Application Virtualization Server не имеет соответствующих разрешений для каталога содержимого.

По умолчанию используется следующий путь к каталогу содержимого: %ProgramFiles%\Microsoft

System Center App Virt Streaming Server\content

Путь к каталогу содержимого настраивается в локальном реестре сервера Application Virtualization Server и базе данных Application Virtualization. При запуске службы Application Virtualization Server выполняется попытка подключения к пути, указанному в реестре. Если службе Application Virtualization Server не удается подключиться к пути, указанному в реестре, служба пытается подключиться к пути, указанному в базе данных Application Virtualization. Если службе вновь не удается подключиться, она не запускается.
 
По умолчанию служба Application Virtualization Server запускается от имени учетной записи NETWORK SERVICE. Учетная запись входа Application Virtualization Server требует разрешение на чтение каталога содержимого. Если путь к каталогу содержимого указан в формате UNC, учетная запись входа Application Virtualization Server требует разрешение на чтение для совместного доступа. Если учетная запись входа Application Virtualization Server не имеет соответствующих разрешений, служба не запускается.

РЕШЕНИЕ

Для устранения данной проблемы воспользуйтесь одним из следующих способов.

Способ 1

Убедитесь, что указан допустимый путь к каталогу содержимого. Для этого выполните следующие действия.
  1. Запустите редактор реестра.
  2. Найдите подраздел реестра HKEY_LOCAL_MACHINE\Software\Microsoft\SoftGrid\4.5\DistributionServer\PackageRoot
  3. Щелкните правой кнопкой мыши параметр PackageRoot и выберите «Изменить».
  4. Запомните путь к каталогу содержимого и щелкните «Отмена».
  5. Закройте редактор реестра.

Способ 2

Убедитесь, что учетная запись входа Application Virtualization Server имеет соответствующие разрешения для каталога содержимого. Для этого выполните следующие действия.

Определите учетную запись входа службы Application Virtualization Server. Для этого выполните следующие действия.

  1. Откройте «Панель управления» > «Администрирование» > «Службы».
  2. Правой кнопкой мыши щелкните Application Virtualization Server и выберите «Свойства».
  3. Перейдите на вкладку «Вход в систему».
  4. Если данная учетная запись выбрана в разделе «Вход в систему как», обратите внимание на учетную запись в поле «Указанная учетная запись» (по умолчанию NETWORK SERVICE). Если выбрана учетная запись локальной системы, служба Application Virtualization Server запускается от имени учетной записи локальной системы (SYSTEM). Примечание. Если в разделе «Вход в систему как» выбрана учетная запись локальной системы и если каталог содержимого расположен на том же компьютере, что и сервер Application Virtualization Server, используйте учетную запись локальной системы (SYSTEM) для предоставления прав.
  5. Закройте «Службы».

Убедитесь, что учетная запись входа Application Virtualization Server имеет разрешение на чтение для совместного доступа, если путь к каталогу содержимого указан в формате UNC. Для этого выполните следующие действия.

  1. Откройте проводник Windows.
  2. Перейдите к каталогу содержимого.
  3. Щелкните правой кнопкой общее содержимое, затем щелкните «Свойства».
  4. Откройте вкладку «Общий доступ».
  5. Убедитесь, что ранее выбранная учетная запись имеет разрешение на чтение общего содержимого. Если для учетной записи отсутствует разрешение на чтение, щелкните «Разрешения», затем установите флажок «Разрешить» для чтения.
  6. Щелкните «ОК» и закройте проводник 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
Доступ к содержимому - Исправление расположения каталога содержимого - Приложение
{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>