
Estoy escribiendo una utilidad de línea de negocio que, entre otras tareas, ejecutará chkdsk.exe en modo de sólo lectura en discos duros de datos secundarios NTFS. Para probar completamente mi utilidad necesito inducir un estado en uno de estos discos que chkdsk detectará como un error... preferiblemente de una manera que no destruya los datos existentes en el disco. ¿Cuál es la forma más sencilla de hacer esto?
Editar:
Idealmente, me gustaría crear un archivo de texto ficticio en una de estas unidades y luego estropear ese archivo de tal manera que chkdsk piense que es necesario arreglarlo. No estoy seguro de cómo hacer para estropear un archivo.
Respuesta1
Simplemente puedes dar una línea de comando no válida:
c:\>chkdsk FailPlease
The drive, the path, or the file name is not valid.
c:\>echo %ERRORLEVEL%
3
Respuesta2
Creo que quieres algo que pueda montar de manera confiable el sistema de archivos como una unidad desde un estado corrupto (o pseudocorrupto). Lo primero que me viene a la mente esCripta verdadera
- Cree un contenedor de archivos cifrados TrueCrypt
- Móntalo, almacena algunos archivos en él.
- Estropear esos archivos de alguna manera. O simplemente déjelo sin formato, eso podría ser suficiente para
chkdsk
que devuelva un valor distinto de cero. - Guarda tu imagen
Ahora su secuencia de comandos puede hacer una copia de la imagen, montar la copia, dejar que chkdsk intente arreglarla y luego eliminar la imagen.