Windows Server 2016 以降の NTFS ファイル システムの破損ルール

Microsoft.Windows.Server.10.0.LogicalDisk.NTFSFileSystemCorrupt.Alert (Rule)

このルールは、NTFS ファイル システムの破損を示すシステム イベントに基づいてアラートを生成します。

Knowledge Base article:

概要

NTFS が、論理ディスクが破損しているか、まったく使用できないことを報告しました。ボリュームに格納されている一部のデータにアクセスできない可能性があります。

原因

論理ディスクが破損、またはアクセス不能になる原因は多数ありますが、主に次のことが考えられます。

解決方法

障害がないか、ハードウェアの状態を確認します。ほとんどの場合、システム ログには、下位の記憶装置ドライバーで発生しているエラーのイベント情報も含まれています。

ハードウェアの問題を特定し、解決した後、次の手順を実行します。

Element properties:

TargetMicrosoft.Windows.Server.10.0.LogicalDisk
CategoryEventCollection
EnabledTrue
Alert GenerateTrue
Alert SeverityWarning
Alert PriorityNormal
RemotableTrue
Alert Message
Windows Server 2016 以降の NTFS ファイル システムの破損
{2} という名前のデバイスのドライブ {1} で、{3} の破損状態が検出されました。イベントの説明: {0}。
Event LogSystem

Member Modules:

ID Module Type TypeId RunAs 
EventDS DataSource Microsoft.Windows.EventProvider Default
GenerateAlert WriteAction System.Health.GenerateAlert Default

Source Code:

<Rule ID="Microsoft.Windows.Server.10.0.LogicalDisk.NTFSFileSystemCorrupt.Alert" Enabled="true" Target="ServervNext!Microsoft.Windows.Server.10.0.LogicalDisk" ConfirmDelivery="true">
<Category>EventCollection</Category>
<DataSources>
<DataSource ID="EventDS" TypeID="Windows!Microsoft.Windows.EventProvider">
<ComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<LogName>System</LogName>
<Expression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery>EventSourceName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>Microsoft-Windows-Ntfs</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">98</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<Value Type="String">$Target/Property[Type="Windows!Microsoft.Windows.LogicalDevice"]/Name$</Value>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<XPathQuery Type="String">Params/Param[1]</XPathQuery>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<Or>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">Params/Param[3]</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">1</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">Params/Param[3]</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">2</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">Params/Param[3]</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">3</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</Or>
</Expression>
</And>
</Expression>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="GenerateAlert" TypeID="SystemHealth!System.Health.GenerateAlert">
<Priority>1</Priority>
<Severity>1</Severity>
<AlertMessageId>$MPElement[Name="Microsoft.Windows.Server.10.0.LogicalDisk.NTFSFileSystemCorrupt.Alert.AlertMessage"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>$Data/EventDescription$</AlertParameter1>
<AlertParameter2>$Data/Params/Param[1]$</AlertParameter2>
<AlertParameter3>$Data/Params/Param[2]$</AlertParameter3>
<AlertParameter4>$Data/Params/Param[3]$</AlertParameter4>
</AlertParameters>
</WriteAction>
</WriteActions>
</Rule>