NTFS

O que é o NTFS e quais são as suas características principais?

Partilhar

Contamos-lhe o que é o NTFS e quais são as suas características principais, bem como a sua evolução ao longo dos anos, para entender melhor os motivos pelos quais este sistema de ficheiros teve (e tem) uma vida tão longa e é ainda o file system principal da Microsoft.

O sistema de ficheiros NTFS tem sido usado pelos sistemas operativos de servidores da Microsoft desde o seu surgimento no Windows NT 3.1, em julho de 1993, além de ser usado pelos sistemas de desktop mais recentes.

O NTFS pode ser encontrado como o sistema de ficheiros principal nos seguintes sistemas atuais:

  • Windows Server 2022.
  • Windows Server 2019.
  • Windows Server 2016.
  • Windows 11.
  • Windows 10.

No entanto, devemos ter em mente que os sistemas de servidores da gigante de Redmond utilizam o NTFS desde o NT 3.1, portanto esta lista também incluiria outros sistemas descontinuados, como Windows Server 2012, Windows Server 2008 e as suas respetivas versões R2, entre outros.

Então como é possível que, sendo um sistema de ficheiros de 1993, ainda seja tão amplamente utilizado? Bem, a resposta é bastante extensa, mas tentaremos explicá-la de forma resumida.

O primeiro que temos de dizer é que a versão originalmente publicada tem pouco a ver com a atual, pois evoluiu notavelmente ao longo dos anos.

Em segundo lugar, este sistema de ficheiros oferece uma série de funcionalidades que o tornam altamente eficiente e seguro, e esse é justamente o segredo da sua longevidade.

 

Características do NTFS:

A seguir, e para entender melhor por que é que o NTFS é um sistema de ficheiros tão popular, vamos rever brevemente alguns dos recursos mais relevantes, abordando o máximo de informação possível.

Entre as funcionalidades do NTFS encontram-se:

  • Sistema de ficheiros transacional (Journaling).
  • Autorrecuperação (Self-Healing).
  • Maior fiabilidade.
  • Maior segurança dos dados.
  • Sistema de cotas de disco.
  • Nomes e caminhos longos.
  • Compatibilidade com grandes volumes.
  • Indexação de dados.

 

NTFS como sistema de ficheiros transacional:

Uma das principais vantagens do NTFS é que constitui um sistema de ficheiros transacionais, o que significa que inclui uma série de medidas destinadas a preservar a integridade dos dados e solucionar possíveis erros que ocorrem durante a movimentação dos mesmos.

O NTFS, como sistema transacional, fornece suporte do tipo ACID (Atomicity, Consistency, Isolation, Durability) ou seja, Atomicidade, Consistência, Isolamento e Durabilidade nas transações.

O modelo ACID permite que o sistema agrupe conjuntos de operações de ficheiros e registo para que se realizem todas as operações ou nenhuma. Desta forma, enquanto a transação está a ocorrer, as mudanças não são visíveis para os players que estão fora da operação. Assim, caso ocorra um erro, as operações serão revertidas até ao início da transação, recuperando o estado inicial.

Estas operações transacionais também podem ser combinadas com outros sistemas, como MSMQ (Message Queue Server), Microsoft SQL Server ou até mesmo com scripts de linha de comando.

NOTA: O conceito de ACID pode ser familiar para os leitores, especialmente quando se trata de design de bases de dados. Relembramos que é um termo cunhado por Andreas Reuter e Theo Härder e que se refere às propriedades necessárias para estabelecer transações fiáveis na década de 1980.

O objetivo final das transações do tipo ACID é garantir que as operações de ficheiros sejam concluídas sem interrupções de qualquer tipo e sem erros que possam tornar os dados instáveis.

Quando falamos de volumes NTFS, devemos pensar que estes são geridos de forma autónoma e se coordenam com o KTM (Kernel Transaction Manager) quando ocorrem transações entre diferentes volumes.

Isso seria combinado com o facto de que o NTFS, como sistema transacional, possui um registo próprio para cada volume, que usa para permitir recuperação e cancelamento, se necessário, permitindo assim que essas transações sejam rastreadas para reconstrução.

O exposto acima constitui o que se costuma chamar “journaling” (registo diário).

 

Autorrecuperação de sistemas NTFS (Self-Healing)

As versões atuais do Windows Server permitem implementar NTFS que se corrigem automaticamente. Isto permite que o sistema reduza processos de reparação em comparação com processos anteriores, em que a ferramenta “chkdsk” (Check Disk) era usada para realizar tarefas de manutenção. Esta ferramenta afetava tremendamente a disponibilidade do serviço, pois enquanto estava em execução, o desempenho era severamente penalizado.

O novo modelo, baseado numa melhoria substancial do kernel e das suas interações com os gestores do sistema de ficheiros, permite que a manutenção da totalidade do sistema de ficheiros seja mais eficiente e igualmente fiável, na verdade aumentando este segundo ponto, uma vez que é o próprio sistema que, por defeito, lança as verificações e corrige os erros à medida que os deteta.

Esta revisão automática visa, entre outras coisas, minimizar situações catastróficas que ocorreriam devido a erros no sistema, que acabariam por afetar o sistema de ficheiros.

Outro ponto que facilita este novo modelo de gestão é a melhor rastreabilidade do estado dos discos, através dos relatórios gerados pelas revisões realizadas.

Isto também significa que administradores e técnicos poderão utilizar todos estes relatórios para realizar processos de verificação, monitorização ou até auditorias muito mais completas e que agreguem maior valor às informações extraídas.

Apesar de tudo o que foi dito acima, podem surgir situações em que seja necessária uma recuperação manual com o sistema offline, mas esses eventos são muito mais improváveis devido à manutenção proativa realizada pelo sistema.

Uma situação em que poderá ser necessário fazer uma operação offline é, por exemplo, quando existe uma corrupção e o sistema não consegue identificar o sistema de ficheiros como NTFS, ainda que o arranque seja legível.

Um pouco mais à frente vamos falar sobre opções de manutenção de NTFS e “chkdsk”, entre outras ferramentas.

 

Maior fiabilidade:

Este ponto está intimamente ligado ao anterior. Nos sistemas de ficheiros tradicionais, um dos problemas recorrentes era que, quando o sistema era reiniciado ou se desligava de forma não planeada, muitas vezes, o sistema reiniciava-se num estado instável. Isto devia-se em grande parte ao facto de os sistemas de ficheiros não terem concluído algumas transações e estas não eram recuperáveis.

O NTFS usa registo diário (journaling) para gerar um rastreamento e um ponto de recuperação seguro para o qual regressar em caso de falha. Se for possível, terminará a transação; caso contrário, prosseguirá para o último ponto de recuperação seguro que encontrar.

Isto pode ser causado por erros na atribuição de clusters, por encerramentos abruptos do sistema ou por qualquer outro erro produzido pela mecânica do suporte no qual o sistema de ficheiros está alojado.

Caso este erro ocorra devido a uma falha mecânica, o sistema tentará resolvê-lo de forma autónoma através da reatribuição dinâmica, sem solicitar a intervenção do administrador.

Nos casos mais extremos, o NTFS pode tentar recuperar ficheiros ao reproduzir a cadeia de transações em que ocorreu a falha, sendo um procedimento com uma alta taxa de recuperação, mas que nem sempre garante a recuperação.

 

Maior segurança dos dados:

Outro dos pontos fortes do sistema de ficheiros NTFS é a grande segurança dos dados, pois permite a implementação de diferentes métodos de controlo de acesso, entre os quais se destacam:

  • As listas de controlo de acesso.
  • Criptografia de unidade com BitLocker.

As listas de controlo de acesso (ACL – Access Control List) permitem estabelecer permissões sobre ficheiros e pastas, especificando que utilizadores ou grupos podem aceder aos dados e até que ponto podem aceder.

Com as ACLs, podemos permitir ou restringir explicitamente o acesso com alto nível de granularidade. Podemos permitir, por exemplo, que o conteúdo de uma pasta seja visível, mas não seja possível abrir os ficheiros, ou que se possa abrir os ficheiros mas não editá-los.

O sistema de listas de controlo de acesso, geralmente, é baseado num conceito em que tudo é negado à partida e as permissões são gradualmente “desbloqueadas” para os utilizadores que precisam de aceder aos recursos.

Por outro lado, a criptografia de unidade com BitLocker fornece um nível adicional de segurança que permite isolar as informações mais críticas em volumes de dados NTFS criptografados, evitando que os dados estejam disponíveis caso um disco seja removido e conectado a outro sistema.

Embora não entremos em detalhes, já que este artigo é mais informativo do que técnico, queremos dizer que o BitLocker oferece suporte à criptografia de dispositivos em computadores baseados em x86 e x64 e no TPM (Trusted Platform Module) compatível com o modo de espera conectado.

O ponto mais interessante do BitLocker é a simplicidade de uso na ótica do utilizador, já que basta conhecer uma palavra-passe ou ter um método de autorização de acesso aos dados, sendo uma mecânica muito transparente.

 

Sistema de cotas de disco no NTFS:

O sistema de cotas de disco em volumes NTFS é outro dos grandes avanços dos sistemas de arquivos, pois através de uma ferramenta realmente simples de implementar, configurar e manter, permite atribuir cotas de disco ou porções por utilizador.

Estas cotas permitem limitar o volume que cada utilizador e grupo pode utilizar, com alertas para utilizadores que queiram ocupar mais espaço do que o autorizado ou com bloqueio direto da escrita quando se atinge esse limite.

As cotas podem ser aplicadas a volumes, pastas ou subpastas.

O sistema de cotas permite executar as seguintes tarefas:

  • Criar cotas para limitar o espaço alocado para um volume ou pasta.
  • Gerar notificações quando o soft limit for atingido, que é um limite de aviso.
  • Gerar notificações quando o hard limit for atingido, ou seja, quando o limite da referida cota for excedido e a escrita deixar de ser permitida.
  • Gerar cotas automáticas aplicáveis a todas as pastas existentes num ambiente.
  • Definir modelos de cotas que podem ser aplicados com mais facilidade.
  • Limitar por utilizadores e grupos.

 

Imagem. Exemplo de definição de cota básica
Imagem. Exemplo de definição de cota básica

 

Nomes e caminhos longos:

O sistema de arquivos NTFS permite nomes de ficheiros e caminhos muito mais longos do que os sistemas de arquivos anteriores.

A este respeito, vale a pena notar a compatibilidade para caminhos de comprimento estendido que permite caminhos de comprimento estendido de até 32767 caracteres.

Este limite está a anos-luz do limite de caminho de 260 caracteres definido pela configuração “MAX_PATH”.

Neste sentido, esta expansão estende-se também a modelos de armazenamento baseados em NTFS como o CSV (Cluster Shared Volume) em que os vários nós acedem aos mesmos dados em simultâneo, garantindo que em caso de falha de energia num nó o serviço não será perdido.

 

Compatibilidade com grandes volumes:

O sistema de ficheiros NTFS evoluiu ao longo dos anos e, claro, também evoluiu em termos de capacidade. Agora, o NTFS é capaz de trabalhar com volumes de até 8 Petabytes no Windows Server 2022 e até 256 TB no Windows 11.

A forma como o disco é formatado durante a sua preparação afeta diretamente o tamanho suportado, sendo necessário escolher o tamanho de cluster adequado para discos maiores, embora haja sempre a opção de escolher a seleção automática.

Com base nisso, apresentamos a tabela a seguir, para que saiba que tamanhos deve escolher ao trabalhar com grandes volumes NTFS:

Tamanho do cluster Maior volume e ficheiro
4 KB (tamanho predefinido) 16 TB
8 KB 32 TB
16 KB 64 TB
32 KB 128 TB
64 KB (máx. anterior) 256 TB
128 KB 512 TB
256 KB 1 PB
512 KB 2 PB
1024 KB 4 PB
2048 KB (tamanho máx.) 8 PB

 

Indexação de dados:

O NTFS fornece indexação de ficheiros, ou seja, criação de tabelas de índices de conteúdo. Este é um processo através do qual o sistema de ficheiros percorre todo o conteúdo armazenado e cria um índice detalhado de tudo o que encontra, tanto ao nível do conteúdo como dos metadados.

Desta forma, uma vez criados os índices, as buscas serão muito mais rápidas, o que agiliza o acesso às informações de forma notável.

O principal problema deste processo é que, quando a indexação é feita pela primeira vez, pode demorar horas. Isto depende do tamanho do disco, e também pode prejudicar severamente os acessos ao disco. Por esse motivo, é recomendável realizar os processos em horários em que o sistema não seja utilizado, ou quando tenha menor carga de trabalho.

O processo requer manutenção automática, que ocorrerá de vez em quando em segundo plano, e não prejudicará o rendimento.

 

Trabalhar com NTFS:

Existem diferentes tarefas de operação e manutenção que podem ser executadas ao lidar com sistemas de ficheiros e, naturalmente, isso também é aplicável ao NTFS.

A seguir, vamos rever brevemente as operações básicas de:

  • Manutenção de NTFS.
  • Gestão de permissões NTFS (apenas algumas notas).
  • Proteção de dados com BitLocker.

 

Manutenção de NTFS:

Quase todas as opções de manutenção do NTFS são executadas de forma autónoma, mas pode ser necessária uma verificação manual; tanto por uma questão de auditoria do estado do sistema como para procurar problemas específicos.

As revisões manuais do sistema de ficheiros podem ser realizadas com “chkdsk” ou na consola gráfica.

Caso queira fazer as verificações através da linha de comando com “chkdsk”, a sintaxe utilizada é a seguinte:

chkdsk <destino> <parâmetros>

Donde:

  • <destino>: é o disco que queremos analisar.
  • <parámetros>: refere-se aos parâmetros e modificadores que podem ser aplicados, entre os quais podemos destacar:
    • /f Corrige erros no disco.
    • /r Procura setores defeituosos e recupera informações legíveis.
    • /x Força o volume a desconectar-se.

Fica aqui o link com mais informações sobre o chkdsk de Microsoft Learn, com todos os parâmetros e diferentes exemplos de uso.

 

Imagem. Exemplo de uso do chdsk sem parâmetros
Imagem. Exemplo de uso do chdsk sem parâmetros

 

Se quiser fazer a verificação na consola gráfica, pode usar a ferramenta de verificação de disco.

Se prefere verificar erros com a ferramenta gráfica, basta aceder ao Windows Explorer, clicar com o botão direito no volume que deseja verificar e selecionar a opção “Propriedades“.

Uma vez nas propriedades do disco, devemos ir à guia “Ferramentas“, onde podemos clicar em “Verificar“.

 

Gestão de permissões NTFS:

A gestão de permissões e acessos no sistema de arquivos NTFS é possivelmente uma das tarefas mais complicadas nos sistemas Microsoft. Não por ser difícil de entender ou de executar, mas porque exige cuidados especiais para evitar problemas de atribuição e de gestão da herança.

A gestão inadequada de permissões pode fazer com que um acesso seja incorreto e os utilizadores possam aceder a locais que não deveriam.

Por este motivo, acreditamos que tem importância suficiente para merecer um artigo próprio. Aí, todos os aspetos de concessão de permissões, heranças, etc. serão tratados com bastante cuidado e dedicação. Em breve será publicado neste mesmo blog.

 

Proteção de dados com BitLocker:

A proteção de unidades com BitLocker é relativamente simples. Ao criptografar os volumes, ajudamos a proteger os dados naqueles dispositivos cujo acesso queremos limitar a utilizadores autorizados, quer seja através de palavra-passe, token de acesso, identificador biométrico, etc.

Esta funcionalidade não está disponível em todas as versões dos sistemas operativos, não sendo suportada, por exemplo, pelo Windows 10 Home Edition.

O processo de ativação é muito simples. Basta ir ao explorador de ficheiros, clicar com o botão direito do rato no disco onde deseja ativar o BitLocker e selecionar a opção “Ativar BitLocker”. A partir desse momento, o método de acesso e a palavra-passe serão solicitados. Com este passos será realizada a alteração.

NOTA: Os volumes onde já existem dados devem ser copiados de forma preventiva, caso haja problemas ao ativar o BitLocker.

Imagem. Exemplo de ativação do Bitlocker num disco externo no Windows 10
Imagem. Exemplo de ativação do Bitlocker num disco externo no Windows 10

 

Conclusão:

Vimos neste artigo sobre o NTFS que este é um sistema de ficheiros amplamente utilizado no mundo dos servidores da Microsoft, e que também é usado no mundo dos sistemas desktop.

Com quase 30 anos de vida, o segredo da longevidade deste sistema de ficheiros tem sido a sua evolução contínua e as suas características realmente úteis, que fazem do NTFS um sistema estável, seguro e eficiente.

Tendo em conta o seu funcionamento positivo e o grande número de funcionalidades que se gerem automaticamente, não é necessária uma operação intensa deste sistema.

Neste artigo vimos ainda as suas características, a sua gestão e alguns truques de manutenção que esperamos que lhe sejam úteis.

Obrigado!

Categorias:Cloud e sistemas

Outros artigos que podem interessar-lhe

21 de Fevereiro de 2024
Como empresa de software, é possível que tenha sentido atração pela reputação, variedade de serviços e solidez de algum
21 de Fevereiro de 2024
Para muitas empresas de software, ter uma infraestrutura própria significa independência e controlo, bem como uma potencial fonte de
21 de Fevereiro de 2024
Para um ISV, escolher o fornecedor de serviços cloud ideal é uma decisão crucial que pode impactar a satisfação