Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Los datos dañados y los errores de disco abarcan diferentes áreas, como problemas de acceso a una unidad, daños en la unidad y rendimiento lento.
Los siguientes identificadores de evento indican que hay daños en los datos o un error de disco:
Id. de evento 153
Se reintentó la operación de E/S en la dirección de bloque lógica 123456 del disco 2.
Id. de evento 129
Se emitió el restablecimiento al dispositivo\Device\RaidPort1.
Id. de evento 157
El disco 2 se ha quitado por sorpresa.
Id. de evento 55
La estructura del sistema de archivos del disco está dañada e inutilizable. Ejecute la utilidad chkdsk en el volumen.
Id. de evento 98
Volumen C: (\Device\HarddiskVolume3) debe desconectarse para realizar un chkdsk completo. Ejecute "CHKDSK /F" localmente a través de la línea de comandos o ejecute "REPAIR-VOLUME <drive:>" local o remotamente a través de PowerShell.
Lista de comprobación de solución de problemas
Nota:
En este artículo se describen los comandos que deben ejecutarse en un símbolo del sistema con privilegios elevados.
En el registro de eventos del sistema, busque Sistema de archivos de nueva tecnología (NTFS) y advertencias y errores relacionados con el disco. Por ejemplo, ID de evento 55, 153 o 98.
Ejecute el comando
chkdsk /scan
y compruebe el resultado.Nota:
El
chkdsk /scan
comando es de solo lectura.Para consultar una unidad para obtener información de volumen específica de NTFS, ejecute el siguiente comando:
fsutil fsinfo ntfsinfo <rootpath>:
Nota:
El marcador <de posición rootpath> representa la letra de unidad de la unidad raíz.
Ejecute el comando
fsutil dirty query <volumepath>:
para comprobar si el volumen está con modificaciones.Nota:
La ruta> de volumen del marcador <de posición representa la letra de unidad.
Para un volumen cuyo sistema de archivos sea NTFS, ejecute el comando
chkdsk /f /r
si el volumen está con modificaciones. El comandochkdsk /F /R
necesita tiempo de inactividad porque el disco no será accesible.En el caso de un volumen cuyo sistema de archivos sea el Sistema de archivos resistente (ReFS), los daños en el disco se repararán automáticamente.
Si la utilidad "chkdsk" no corrige los errores de disco, realice una restauración a partir de una copia de seguridad.
Ejecute una validación del almacenamiento para comprobar si hay algún error relacionado con el almacenamiento.
Quite los discos del clúster y compruebe el nivel de sistema operativo.
Ejecute el comando
chkdsk /f
en todos los volúmenes para los que se registra el evento.Actualice el firmware o los controladores de almacenamiento de terceros.
Si el problema persiste, pruebe los siguientes métodos:
Desinstale cualquier software de administración de discos de terceros (por ejemplo, Diskeeper).
Quite o actualice los controladores de filtro.
Póngase en contacto con el proveedor de hardware y ejecute el diagnóstico de hardware para evitar posibles incidencias de hardware.
Póngase en contacto con el proveedor de almacenamiento para comprobar la configuración de múltiples rutas.
Actualice el puerto SCSI o los controladores del controlador RAID.
Cambiar a diferentes tipos de controladores. Por ejemplo, controladores del controlador RAID o controladores monolíticos.
Actualice los controladores del adaptador de bud de host (HBA).
Actualice los controladores de múltiples rutas de módulos específicos del dispositivo (DSM).
Actualice el firmware de HBA.
Solución de problemas del identificador de evento 153
El ID de evento 153 indica que hay un error con el subsistema de almacenamiento. El ID de evento 153 es similar al ID de evento 129, pero la diferencia es que el ID de evento 129 se registra cuando el controlador de Storport agota el tiempo de espera de una solicitud en el disco y el ID de evento 153 se registra cuando el controlador de miniport de Storport agota el tiempo de espera de una solicitud. El controlador de miniporte también se puede denominar controlador de adaptador o controlador HBA, que normalmente está escrito por el proveedor de hardware.
Si se registra el identificador de evento 153 o el identificador de evento 129, el tiempo de espera de E/S de disco es la causa común porque el controlador de almacenamiento no puede controlar la carga. En este caso, la operación de E/S agota el tiempo de espera y el controlador de miniporte (de un proveedor) envía los mensajes al controlador storport (el último controlador de almacenamiento de Microsoft en la pila). A continuación, el controlador de Storport traduce la información y registra el evento en el Visor de eventos.
Dado que el controlador de miniporte tiene conocimientos suficientes sobre el entorno de ejecución de solicitudes, algunos controladores de miniportan la hora de la solicitud en lugar de permitir que el controlador de Storport controle el tiempo de solicitud. El controlador de miniport puede anular una solicitud individual y devolver un error, mientras que el controlador storport restablece la unidad después de un tiempo de espera. Restablecer la unidad es perjudicial para el subsistema de E/S y puede que no sea necesario si solo se agota el tiempo de espera de una solicitud. El controlador de miniporte devuelve el error al controlador de clase que registra el identificador de evento 153 y vuelve a intentar la solicitud.
Este es un ejemplo del identificador de evento 153:
Log Name: System
Source: disk
Event ID: 153
Level: Warning
Description: The IO operation at logical block address 123456 for Disk 2 was retried.
Este evento indica que se ha producido un error en una solicitud y que el controlador de clase ha vuelto a intentarlo. No se registró ningún mensaje de error en esta situación porque el controlador de Storport no agotó el tiempo de espera de la solicitud. La falta de mensajes produjo confusión al solucionar errores de disco porque no había evidencias del error.
En la pestaña Detalles del registro de eventos, la información detallada muestra el error que provocó el reintento y si la solicitud era una solicitud de lectura o escritura. Por ejemplo:
0000: 0004010F 002C0003 00000000 80040099
0010: 00000000 00000000 00000000 00000000
0020: 00000000 00000000 28090000
in bytes
0000: 0F 01 04 00 03 00 2C 00 ......,.
0008: 00 00 00 00 99 00 04 80 ......
0010: 00 00 00 00 00 00 00 00 ........
0018: 00 00 00 00 00 00 00 00 ........
0020: 00 00 00 00 00 00 00 00 ........
0028: 00 00 09 28 ...*
En este ejemplo, el desplazamiento 29
de bytes muestra el estado SCSI, el desplazamiento 30
de bytes muestra el estado del bloque de solicitud SCSI (SRB) que provocó el reintento y el desplazamiento 31
de bytes muestra el comando SCSI que se está reintentando. En este caso, el estado SCSI es 00
(SCSISTAT_GOOD
), el estado de SRB es 09
(SRB_STATUS_TIMEOUT
) y el comando SCSI es 28
(SCSIOP_READ
).
Estos son los comandos SCSI más comunes:
SCSIOP_READ - 0x28
SCSIOP_WRITE - 0x2A
Consulte scsi.h para obtener una lista de operaciones y estados SCSI.
Estos son los estados de SRB más comunes:
SRB_STATUS_TIMEOUT - 0x09
SRB_STATUS_BUS_RESET - 0x0E
SRB_STATUS_COMMAND_TIMEOUT - 0x0B
Consulte srb.h para obtener una lista de los estados de SRB.
Nota:
Los errores de tiempo de espera (
SRB_STATUS_TIMEOUT
oSRB_STATUS_COMMAND_TIMEOUT
) indican que se agota el tiempo de espera de una solicitud en el adaptador. Se envió una solicitud a la unidad y no hubo respuesta dentro del período de tiempo de espera.El error de restablecimiento de bus (
SRB_STATUS_BUS_RESET
) indica que el dispositivo se ha restablecido y la solicitud se está reintentando debido al restablecimiento, ya que todas las solicitudes incompletas se anulan cuando una unidad recibe un restablecimiento.
Un administrador debe comprobar el estado del subsistema de disco. Aunque un tiempo de espera ocasional puede formar parte del funcionamiento normal de un sistema, las solicitudes de reintento frecuentes indican un problema de rendimiento con el almacenamiento que se debe corregir.
Más información
Dado que el problema suele estar fuera del sistema operativo, compruebe las siguientes causas comunes:
Se configura algún tipo de limitación, como las limitaciones de E/S. A veces, el control de E/S de almacenamiento en VMware provoca este problema.
Hay demasiadas unidades con una carga alta en el mismo controlador de almacenamiento. Por lo tanto, las unidades deben dividirse entre diferentes controladores.
Si se configura la E/S de múltiples rutas (MPIO), un solo cable o una NIC dañada pueden causar problemas con iSCSI.
Solución de problemas del identificador de evento 129
El ID de evento 129 se registra con el nombre del controlador del adaptador de almacenamiento (HBA) como origen. El controlador storport (Storport.sys) registra este evento cuando detecta que se agota el tiempo de espera de una solicitud. El nombre del controlador HBA se usa en el evento porque es el controlador de miniport que está asociado al controlador storport.
Este es un ejemplo de Id. de evento 129:
Event Type: Warning
Event Source: <HBA_Name>
Event Category: None
Event ID: 129
Computer: <Computer_Name>
Description: Reset to device, \Device\RaidPort1, was issued.
Información sobre la arquitectura de pila de E/S de Windows
La operación de E/S de Windows usa una arquitectura superpuesta en la que los controladores de dispositivo se encuentran en una pila de dispositivos. En un modelo básico, la parte superior de la pila es el sistema de archivos. El siguiente es el administrador de volúmenes, seguido del controlador de disco. Los controladores de puerto y minipuerto se encuentran en la parte inferior de la pila de dispositivos. Cuando una solicitud de E/S llega al sistema de archivos, toma el número de bloque del archivo y lo convierte en un desplazamiento del volumen. A continuación, el administrador de volúmenes traduce el desplazamiento del volumen a un número de bloque en el disco y pasa la solicitud al controlador de disco. Cuando la solicitud llegue al controlador de disco, creará un bloque de descriptor de comandos (CDB) y lo enviará al dispositivo SCSI. El controlador de disco inserta el CDB en la estructura SCSI_REQUEST_BLOCK (SRB). Este SRB se envía al controlador de puerto como parte del paquete de solicitud de E/S (IRP).
El controlador de puerto realiza la mayor parte del procesamiento de solicitudes. Existen diferentes controladores de puerto en función de la arquitectura. Por ejemplo, el controlador de puerto ATA (Ataport.sys) y el controlador de puerto SCSI (Storport.sys). Estas son algunas responsabilidades de un controlador de puerto:
Proporcionar servicios de control de tiempo para solicitudes
Aplicar la profundidad de la cola para asegurarse de que un dispositivo no tiene más solicitudes de las que puede controlar
Creación de matrices de "dispersión" y "recopilación" para búferes de datos
El controlador de puerto interactúa con el controlador de miniport y el controlador de minipuerto está diseñado por el proveedor de hardware para trabajar con un adaptador específico. Es responsable de tomar solicitudes del controlador de puerto y enviarlos al número de unidad lógica (LUN) de destino. El controlador de puerto llama a la HwStorStartIo()
función para enviar solicitudes al controlador de minipuerto y el controlador de miniportar enviará las solicitudes al controlador HBA para que se puedan enviar a través del medio físico (Fibra o Ethernet) al LUN. Cuando se complete la solicitud, el controlador de miniportar llamará a la StorPortNotification()
función con el NotificationType
parámetro con un valor establecido RequestComplete
en , junto con un puntero a la SRB completada.
Cuando se envía una solicitud al controlador de miniport, el controlador storport colocará la solicitud en una cola pendiente y se ha temporizador. Cuando se completa la solicitud, se quita de esta cola.
El mecanismo de control de tiempo es sencillo. Hay un temporizador por unidad lógica y se inicializa en -1
. Cuando se envía la primera solicitud al controlador de miniport, el temporizador se establece en el valor de tiempo de espera de SRB. El valor de tiempo de espera del disco es un parámetro ajustable que se encuentra bajo la siguiente clave del Registro:
HKLM\System\CurrentControlSet\Services\Disk\TimeOutValue
Algunos proveedores de hardware ajustarán este valor para que coincida mejor con su hardware. No cambie este valor sin instrucciones del proveedor de almacenamiento.
El temporizador se disminuye una vez por segundo. Cuando se completa una solicitud, el temporizador se actualiza con el valor de tiempo de espera de la solicitud principal en la cola pendiente. Por lo tanto, el temporizador nunca irá a cero siempre que se completen las solicitudes. Si el temporizador va a cero, significa que el dispositivo ha dejado de responder. Por ejemplo, cuando el controlador de Storport registra el identificador de evento 129, el controlador de Storport debe tomar medidas correctivas intentando restablecer la unidad. Cuando se restablece la unidad, todas las solicitudes incompletas se completan con un error y se reintentan. Cuando se borra la cola pendiente, el temporizador se establece -1
en , que es el valor inicial.
Cada SRB tiene un valor de tiempo establecido. Cuando se completan las solicitudes, el temporizador de cola se actualiza con el valor de tiempo de espera de la SRB en el encabezado de la lista.
Las causas más comunes de Event ID 129 son LUN no responde o una solicitud eliminada. Las solicitudes eliminadas pueden deberse a enrutadores defectuosos u otros problemas de hardware en la red del área de almacenamiento (SAN).
Solución de problemas del identificador de evento 157
Este evento indica que el controlador Classpnp.sys ha recibido una solicitud de eliminación sorpresa del administrador de plug and play (PNP) para un disco no extraíble.
Este problema suele producirse cuando algo interrumpe la comunicación del sistema con un disco, como un error de tejido san o un problema de bus SCSI. Los errores también pueden deberse a un disco que produce un error o cuando un usuario desconecta un disco mientras se ejecuta el sistema. En este caso, un administrador debe comprobar el calor del subsistema de disco.
Solución de problemas del identificador de evento 55 y 98
Si se registran eventos NTFS como id. de evento 55, 50, 140 y 98, debe ejecutar la utilidad "chkdsk".
Dado que NTFS no pudo escribir datos en el registro de transacciones, esto podría afectar a la capacidad de NTFS de detener o revertir las operaciones en las que no se pudieron escribir los datos de transacción.
Este es un ejemplo del identificador de evento 55:
Event Type: Error
Event Source: NTFS
Event ID: 55
Description: The file system structure on the disk is corrupt and unusable. Please run the chkdsk utility on the volume.
Normalmente, el identificador de evento 55 se registra cuando se produce daños en el sistema de archivos. Los daños en el sistema de archivos se producen cuando se producen uno o varios de los siguientes problemas:
Un disco tiene sectores incorrectos.
Las solicitudes de E/S que entrega el sistema de archivos al subsistema de disco no se completan correctamente.
La mayoría de los problemas están relacionados con el hardware y el hardware puede estar dañado inesperadamente. Puede probar los métodos siguientes para corregir los problemas:
Actualice el puerto SCSI o los controladores del controlador RAID.
Quite o actualice los controladores de filtro.
Actualice el firmware o los controladores de almacenamiento de terceros.
Cambiar a diferentes tipos de controladores. Por ejemplo, controladores del controlador RAID o controladores monolíticos.
Reorganiza el hardware en varias combinaciones.
Aviso de declinación de responsabilidades sobre la información de terceros
Los productos de otros fabricantes que se mencionan en este artículo han sido creados por compañías independientes de Microsoft. Microsoft no ofrece ninguna garantía, ya sea implícita o de otro tipo, sobre la confiabilidad o el rendimiento de dichos productos.