Como você desfragmenta o MFT em um disco NTFS?

Como você desfragmenta o MFT em um disco NTFS?

Há algum tempo, quase enchi meu disco rígido, muito mais do que o máximo recomendado de 85% da capacidade. Acredito que o NTFS começou a armazenar arquivos no espaço reservado para a Master File Table (MFT) e a MFT teve que se fragmentar em outro lugar à medida que crescia.
Limpei espaço no disco rígido, mas o MFT aparentemente permanece fragmentado e há muito acesso lento ao disco, mesmo para operações muito simples, como abrir uma pasta ou um arquivo pequeno. Isso está matando o desempenho. Lembro que o desfragmentador de disco padrão do Windows não desfragmenta o MFT porque o MFT está em uso quando o sistema operacional está em execução. Estou executando o Vista Ultimate e seu utilitário de desfragmentação tem muito poucos relatórios, menos do que versões mais antigas.

Suspeito que uma solução possa envolver a inicialização a partir de um disco óptico com um sistema operacional básico ("Live CD") e a execução de um utilitário de desfragmentação a partir dele. Alguém pode me dizer qual programa usar ou como desfragmentar meu MFT?

Obrigado!

Responder1

Você pode usar a ferramenta SysinternalsContig:

contig.exe c:\$mft

Responder2

Auslogics Disk Defrag Profará isso para você. Embora não seja um programa gratuito, você pode baixar uma versão de avaliação gratuita e, se decidir comprar, a licença estará disponível para uso em até três PCs.

Ultradesfragmentaçãoé gratuito e poderosoSoftware Livreferramenta de desfragmentação para a plataforma Windows. Ele pode desfragmentar qualquer arquivo do sistema, incluindo seções de registro e arquivo de paginação. Inclui otimização MFT, que processa apenas o MFT.

Responder3

De longe, a melhor ferramenta foi o antigo JKdefrag, agora Mydefrag. Desfragmentará o MFT. Além disso, é grátis.

O site original está fora do ar, mas você pode obter a versão mais recente aqui:https://www.techspot.com/downloads/3720-jkdefrag-mydefrag.html

editar

API de desfragmentação do Windows, usado pelo MyDefrag, oferece suporte à desfragmentação do MFT.

A seguir estão os arquivos de sistema, fluxo e tipos de fluxo suportados por FSCTL_MOVE_FILE no formato "filename:streamname:$typename".

$MFT::$DADOS $MFT::$ATTRIBUTE_LIST $MFT::$BITMAP

E o MyDefragdocumentação de script:

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.

Embora não seja executado em um Live CD, ele será executado emBart PEou oCD de inicialização definitivo do Windows.

Mas também não é necessário desfragmentar o MFT.

Responder4

Eu sei que este é um tópico antigo, mas sistemas antigos é o que eu faço. Estou lançando um projeto de código aberto emhttps://github.com/DHorse2/TaylorDoe todos são bem-vindos para usar esta biblioteca MyDefrag ou contribuir com ela.

A movimentação e desfragmentação do MFT são feitas no sistema funcionando normalmente. No entanto, são alguns $xxx e arquivos de sistema que, se você movê-los, o recurso falhará. Os pontos de restauração são o melhor exemplo.

O objetivo do produto TaylorDo é que ele fornece desempenho máximo APÓS a inicialização do sistema, enquanto outros produtos tendem apenas a otimizar a inicialização.

Editar 20240315: este projeto precisa de uma pequena limpeza antes do lançamento final (ativar/desativar o agendador); Estou mantendo-o aberto.

informação relacionada