¿Cómo se desfragmenta el MFT en un disco NTFS?

¿Cómo se desfragmenta el MFT en un disco NTFS?

Hace un tiempo casi llené mi disco duro, mucho más que el máximo recomendado del 85% de capacidad. Creo que NTFS comenzó a almacenar archivos en el espacio reservado para la Master File Table (MFT) y la MFT tuvo que fragmentarse en otros lugares a medida que crecía.
He liberado espacio en el disco duro, pero el MFT aparentemente permanece fragmentado y hay mucho acceso lento al disco incluso para operaciones muy simples como abrir una carpeta o un archivo pequeño. Esto está acabando con el rendimiento. Recuerdo que el desfragmentador de disco estándar de Windows no desfragmenta el MFT porque el MFT está en uso cuando el sistema operativo se está ejecutando. Estoy ejecutando Vista Ultimate y su utilidad de desfragmentación tiene muy pocos informes, menos que las versiones anteriores.

Sospecho que una solución podría implicar arrancar desde un disco óptico con un sistema operativo básico ("Live CD") y ejecutar una utilidad de desfragmentación desde allí. ¿Alguien puede decirme qué programa usar o cómo desfragmentar mi MFT?

¡Gracias!

Respuesta1

Puedes utilizar la herramienta SysinternalsContig:

contig.exe c:\$mft

Respuesta2

Auslogics Disk Defrag Prologrará esto por usted. Si bien no es un programa gratuito, puede descargar una versión de prueba gratuita y, si decide comprarla, la licencia estará disponible para usar en hasta tres PC.

Ultradefrages un libre y poderosoFOSSherramienta de desfragmentación para la plataforma Windows. Puede desfragmentar cualquier archivo del sistema, incluidos los subárboles del registro y el archivo de paginación. Incluye optimización de MFT, que procesa únicamente la MFT.

Respuesta3

La mejor herramienta con diferencia fue el antiguo JKdefrag, ahora Mydefrag. Desfragmentará el MFT. Además, es gratis.

El sitio original no funciona, pero puede obtener la última versión aquí:https://www.techspot.com/downloads/3720-jkdefrag-mydefrag.html

editar

API de desfragmentación de Windows, utilizado por MyDefrag, admite la desfragmentación de MFT.

A continuación se detallan los archivos del sistema, secuencias y tipos de secuencias admitidos por FSCTL_MOVE_FILE en formato "nombre de archivo:nombre de secuencia:$nombre de tipo".

$MFT::$DATA $MFT::$ATTRIBUTE_LIST $MFT::$BITMAP

Y el de MyDefragdocumentación del guión:

Inode   Filename    Description
0   $MFT    Master File Table - An index of every file.
1   $MFTMirr    A backup copy of the first 4 records of the MFT.
2   $LogFile    Transactional logging file.
3   $Volume Serial number, creation time, dirty flag.
4   $AttrDef    Attribute definitions.
6   $Bitmap Contains volume's cluster map (in-use vs. free).
7   $Boot   Boot record of the volume.
8   $BadClus    Lists bad clusters on the volume.
9   $Quota  [Windows NT only] Quota information.
9   $Secure Security descriptors used by the volume.
10  $UpCase Table of uppercase characters used for collating.
11  $Extend A directory for: $ObjId, $Quota, $Reparse, $UsnJrnl.
$Extend\$ObjId  Unique Ids given to every file.
$Extend\$Quota  Quota information.
$Extend\$Reparse    Reparse point information.
$Extend\$UsnJrnl    USN Journal.
$Extend\$RmMetadata Transactional data.

Si bien no se ejecutará en un Live CD, sí se ejecutará enBart educación físicao elCD de arranque definitivo de Windows.

Pero tampoco es necesario desfragmentar el MFT.

Respuesta4

Sé que este es un hilo antiguo, pero lo que hago es sistemas antiguos. Estoy lanzando un proyecto de código abierto enhttps://github.com/DHorse2/TaylorDoy todos son bienvenidos a utilizar esta biblioteca MyDefrag o contribuir a ella.

El movimiento MFT y la desfragmentación se realizan en el sistema funcionando normalmente. Sin embargo, son unos pocos $xxx y archivos del sistema que, si los mueve, la función fallará. Los puntos de restauración son el mejor ejemplo.

El objetivo del producto TaylorDo es que proporciona el máximo rendimiento DESPUÉS del inicio del sistema, mientras que otros productos tienden a optimizar únicamente el inicio.

Edición 20240315: este proyecto necesita una limpieza menor antes del lanzamiento final (el programador se habilita/deshabilita); Lo mantendré abierto.

información relacionada