GNU/Linux >> Tutoriales Linux >  >> Linux

¿Simula un dispositivo de bloque defectuoso con errores de lectura?

No es un dispositivo de bucle invertido lo que está buscando, sino un mapeador de dispositivos.

Usa dmsetup para crear un dispositivo respaldado por el objetivo de "error". Aparecerá en /dev/mapper/<name> .

La página 7 de la presentación del mapeador de dispositivos (PDF) tiene exactamente lo que está buscando:

dmsetup create bad_disk << EOF
  0 8       linear /dev/sdb1 0
  8 1       error
  9 204791 linear /dev/sdb1 9
EOF

O omita el sdb1 partes y coloque el objetivo de "error" como el dispositivo para los bloques 0 - 8 (en lugar de sdb1 ) para hacer un disco de error puro.

Consulte también el apéndice del Mapeador de dispositivos de "RHEL 5Administración del administrador de volúmenes lógicos".

También hay un flakey objetivo - una combinación de linear y error que a veces tiene éxito. También un delay para introducir retrasos intencionales para las pruebas.


Parece que las capacidades integradas de inyección de fallas de Linux serían una buena idea para usar.

Blog:http://blog.wpkg.org/2007/11/08/using-fault-injection/
Referencia:https://www.kernel.org/doc/Documentation/fault-injection/fault-injection.txt


Linux
  1. Cómo corregir:error:permisos insuficientes para el dispositivo con ADB [Consejo rápido]

  2. Error al usar GRANT con IDENTIFICADO por contraseña en MySQL

  3. ¿Errores al clonar disco con Cat?

  4. Cómo crear un dispositivo de bloque virtual (dispositivo de bucle/sistema de archivos) en Linux

  5. “No se pudo encontrar el dispositivo con uuid [UUID]” – error con el comando pvs

Comando Lsblk en Linux (Lista de dispositivos de bloque)

Cómo corregir el error de conversión con Calibre

O_RDWR en canalizaciones con nombre con poll()

No se puede compilar con make | error fatal No queda espacio en el dispositivo

Error al volver a leer la tabla de particiones con el error 16:Dispositivo o recurso ocupado

Crear un dispositivo de bloque en RAM