Entenda o conceito dos diferentes Sistema de arquivo Linux

Sistemas de arquivos Linux

Um sistema de arquivos é um conjunto de estruturas lógicas e de rotinas, que permitem ao sistema operacional controlar o acesso ao disco rígido. Diferentes sistemas operacionais usam diferentes sistemas de arquivos. Conforme cresce a capacidade dos discos e aumenta o volume de arquivos e acessos, esta tarefa torna-se mais e mais complicada, exigindo o uso de sistemas de arquivos cada vez mais complexos e robustos.

O Linux é conhecido por ter uma gama de sistemas de arquivos suportados, inclusive que são suportados em outros sistemas operacionais. Existem muitos desde dos mais simples, os experimentais e os que podem ser o futuro da próxima geração de sistemas de arquivos para Linux.

sistema de partiçoes

As distribuições Linux oferecem um sistema de arquivos "padrão" no momento da instalação, a menos que você decida o contrário. Em partes, é muito bom isso, pois auxilia recém chegados ou pessoas não preocupadas nisso a tomar uma decisão e a se sentirem confortáveis com ela. Por outro lado, para aqueles que precisam e procuram melhor desempenho do sistema; ou que possuem um recurso que trabalha com grande volume de dados, com diversas leituras e escritas em disco, conhecer e escolher o sistema de arquivos que melhor atenda as suas necessidades é importante.

Existem diversos sistemas de arquivos diferentes, que vão desde sistemas simples como o FAT16, até sistemas como o EXT4, BtrFS e ZFS, que incorporam recursos muito mais avançados. Para quem usa o Linux apenas para uso geral, estes sistemas podem parecer estranho, mas são velhos conhecidos de quem trabalha com servidores e com grande volumes de dados.

Tá mais qual sistema de arquivos Linux eu devo utilizar?

Por default, caso não se sinta seguro ou não tenha “necessidades especiais” para manter um sistema com características robustas para grandes volumes de dados e com baixo risco de falhas, atualmente, use o sistema de arquivos Ext4. O Ext4 é o sistema de arquivos adotado por padrão na maioria das distribuições do Linux. Ele é uma versão melhorada dos antigos sistemas de arquivos Ext3/2. Não é o mais avançado sistema de arquivos existente, mas ele é sólido e estável.

Ext2 e Ext3, o Ext4

Sucessor do Ext2 e Ext3, o Ext4 é uma versão melhorada e robusta. Ext significa “EXTended file system“, e foi o primeiro criado especificamente para Linux. Tem quatro revisões principais. “Ext” é a primeira versão do sistema de arquivos, introduzida em 1992. Foi uma grande atualização do sistema de arquivos Minix usado na época, mas não tem recursos importantes. Muitas distribuições Linux não suportam mais ele.

Já o Ext2 foi o primeiro sistema de arquivos a suportar atributos de arquivo estendidos e 2 unidades de terabyte. Também não possui suporte ao journaling – recurso importante que mantém o controle das modificações feitas no sistema de arquivos em um arquivo de log (journal) antes de escrevê-las no disco. Por isso recomendo evitar o Ext2 a menos que você saiba que precisa dele algum motivo.

Em seguida, o Ext3 foi o sistema de arquivos mais usado, por padrão, nos últimos anos nas distribuições Linux. Basicamente, ele é um Ext2 com suporte journaling. E, por volta de 2010, o Ext4 tornou-se o substituto “padrão” na maioria das distribuições Linux, no momento da instalação. Também foi projetado para ser compatível com as versões anteriores (Ext 2/3).

Ele inclui recursos mais recentes que reduzem a fragmentação de arquivos (desfragmentação online), permite maiores volumes de arquivos (16 TiB para um sistema com blocos de 4k), usa alocação com atraso para melhorar a vida útil da memória flash e outros. Esta é a versão mais moderna do sistema de arquivos Ext e é o padrão na maioria das distribuições Linux.

BTRFS

O BtrFS é um sistema de arquivos para Linux desenvolvido pela Oracle. É um novo sistema de arquivos e permanece em desenvolvimento pesado. A comunidade Linux a considera instável para alguns casos. O foco central do BtrFS baseia-se no princípio do copy-on-write (CoW) implementação onde o sistema mantém uma única cópia de um bit de dados antes que os dados tenham sido escritos; quando os dados forem escritos, uma cópia dele será feita. Essa estratégia é utilizada para reduzir a duplicação desnecessária de objetos de memória.

Além de suportar copy-on-write, o BtrFS pode suportar snaphots instantâneos (somente leitura) do sistema, clonagem de arquivos, subvolumes, compactação transparente, verificação de sistema de arquivos off-line, desfragmentação online e suporte para RAID 0, RAID 1, RAID 5, RAID 6 e RAID 10.

O Btrfs é visto como o sistema de arquivos da próxima geração para usuários de Linux, pois já está presente como opção, para instalação, na maioria das distribuições Linux existentes. Por exemplo, o OpenSUSE traz o Btrfs como opção default.

Entretanto, não é ideal para todas as aplicações, mas certamente é uma boa escolha para uma solução de desktop.

Portanto, se deseja ver novos horizontes, este sistema de arquivos é para você obter um pouco mais de seu sistema de arquivos e experimentar novos recursos. Pois, se procura um melhor suporte para SSD, vale a pena dá testar ele.

ZFS

Foi projetado pela antiga Sun Microsystems (hoje Oracle) para o Solaris – sistema construído por ela. O ZFS suporta muitos recursos avançados, incluindo pooling de unidades, snapshots e striping de discos dinâmicos o BtrFS trará muitos desses recursos para o Linux por padrão.

Para executar o ZFS, você deve instalar software de repositórios de terceiros. Contudo, como dito, a licença do ZFS é restritiva e impede que ele venha no kernel Linux; assim, pode ser muito complicado ou simplesmente impossível executá-lo sobre algumas distribuições Linux.

XFS

Foi desenvolvido pela Silicon Graphics em 1994 para o sistema operacional SGI IRX e foi portado para Linux em 2001. É semelhante ao Ext4 em alguns aspectos, bem como o recurso da alocação com atraso para diminuir a fragmentação de arquivos e aumentar a vida útil do disco.

O XFS tem bom desempenho ao lidar com arquivos grandes, mas tem pior desempenho do que outros sistemas de arquivos ao lidar com muitos arquivos pequenos. Pode ser útil para certos tipos de servidores que precisam principalmente lidar com arquivos grandes tipo base de dados ou servidor de arquivos.

Além disso, o XFS é a solução recomendada para o Red Hat Enterprise Linux desde a versão 7. Tem uma história rica em supercomputação e uso de servidores, o que provavelmente é parte do motivo pelo qual a Red Hat está defendendo seu uso. Existem, no entanto, algumas desvantagens importantes para o uso do XFS. A mais notável das desvantagens é a falta de checksums de dados ou ECC deixando-o susceptível a corrupção de dados silenciosos, também conhecido como “bit rot, tornando a falta de compressão transparente.

JFS

Ou “Journaled File System", foi desenvolvido pela IBM, para o sistema operacional IBM AIX, em 1990 e posteriormente portado para Linux desde a versão do kernel 2.4.18pre9-ac4. Possui baixo uso da CPU e bom desempenho para arquivos grandes e pequenos.

As partições JFS podem ser redimensionadas dinamicamente, mas não encolhidas. Ele foi extremamente bem planejado e tem suporte na maioria das grandes distribuições, no entanto, seus testes de produção em servidores Linux não são tão extensos como o Ext; já que foi projetado para o AIX. O Ext4 é mais comumente usado e é mais amplamente testado.

A utilização do JFS no Linux não tão comum, já que existe o Ext4; e ele, normalmente, oferece um melhor desempenho. Por outro lado, especialmente para sistemas de bancos de dados que precisam de gravações síncronas para sobreviver a um acidente de hardware, o JFS parece ser uma boa opção. Por exemplo, ele é leve e eficiente com atividades de discos “pesadas" com uso de CPU baixa.

F2FS

F2FS é um sistema de arquivos desenvolvido pela Samsung especificamente para armazenamento de dados em memória flash e em SSD. F2FS é uma tecnologia relativamente nova. Apesar disso, ele já tem algum sucesso real no Linux.

A maioria das distribuições Linux não suportam o F2FS, por padrão, no momento da instalação. Pois, o kernel Linux precisa ser configurado e ajustado antes para ficar pronto para uso. Um ponto de desvantagem para usuários com pouco conhecimento no universo Linux.

Se possui um armazenamento de dados em memória flash SSD, e se você é um “usuário avançado” que procura obter o máximo de sua unidade de armazenamento no Linux; este é um sistema de arquivos que você pode pensar em usar.

FAT, FAT32 e exFAT

Os sistemas de arquivos FAT da Microsoft são muitas vezes uma opção ao formatar uma unidade no Linux. Esses sistemas de arquivos não incluem um journal, assim são ideais para unidades USB externas. Eles são suportados em diversos sistemas operacionais, como: Windows, macOS, Linux e outros dispositivos.

Isto os torna o sistema de arquivos recomendados para formatação de uma unidade externa que você deseja usar com outros sistemas operacionais. FAT32 é mais antigo. O exFAT é a opção ideal, pois suporta arquivos com mais de 4 GB de tamanho e partições com mais de 8 TB de tamanho, ao contrário do FAT32.


Existem muitos sistemas de arquivos disponíveis no Linux por volta de 36 suportados diretamente pelo kernel Linux ou que não são mais utilizados com o tempo, como o ReiserFS.
Cada um serve para uma finalidade específica de cada usuário que procura resolver diferentes problemas. Este artigo focou somente nas opções mais populares para a plataforma Linux. Pois, estas são as opções que você verá com mais frequência ao usar o Linux.

Leave a Reply

Your email address will not be published. Required fields are marked *

You May Also Like