Ao formatar partições em um PC Linux, você verá uma grande variedade de opções de sistema de arquivos. Estas opções não precisam ser esmagadoras. Se você não tem certeza de qual sistema de arquivos Linux usar, há uma resposta simples.
A Resposta Rápida: Use Ext4 se você não tem certeza
Nós entraremos nas ervas daninhas e vamos correr para baixo a diferença entre os vários sistemas de arquivos em um momento, mas se você não tem certeza: Use Ext4.
Ext4 é o sistema de arquivos padrão na maioria das distribuições Linux por uma razão. É uma versão melhorada do antigo sistema de arquivos Ext3. Não é o sistema de arquivos mais avançado, mas isso é bom: significa que o Ext4 é sólido e estável.
No futuro, as distribuições Linux irão gradualmente mudar para o BtrFS. O BtrFS ainda está na vanguarda e está vendo muito desenvolvimento, então você vai querer evitá-lo em sistemas de produção. O risco de corrupção de dados ou outros problemas não vale a pena a potencial melhoria da velocidade.
RELACIONADO: Qual é a diferença entre FAT32, exFAT e NTFS?
Nota, no entanto, que este conselho de “usar Ext4” só se aplica a partições do sistema Linux e outras partições em disco que só o Linux irá acessar. Se você está formatando um drive externo que você quer compartilhar com outros sistemas operacionais, você não deve usar Ext4 porque Windows, macOS e outros dispositivos não podem ler sistemas de arquivos Ext4. Você vai querer usar exFAT ou FAT32 ao formatar uma unidade externa no Linux.
Se você estiver configurando partições em sua unidade de inicialização principal do Linux, você também vai querer criar uma partição swap de pelo menos alguns GBs de tamanho ao configurar essas partições. Esta partição é usada para “espaço swap”. É similar ao arquivo de paginação no Windows. O Linux troca a memória para o espaço de swap quando a sua RAM está cheia. Esta partição deve ser formatada como “swap” ao invés de com um sistema de arquivos em particular.
What Is Journaling?
Uma coisa que você vai notar ao escolher entre sistemas de arquivos é que alguns deles são marcados como um sistema de arquivos “journaling” e alguns não são. Isto é importante.
Journaling é projetado para prevenir a corrupção de dados de falhas e perda repentina de energia. Digamos que o seu sistema está a meio caminho de escrever um ficheiro no disco e de repente perde energia. Sem um diário, seu computador não teria idéia se o arquivo estivesse completamente gravado no disco. O arquivo ficaria lá no disco, corrompido.
Com um diário, seu computador notaria que iria escrever um determinado arquivo no disco, escrever esse arquivo no disco, e então remover esse trabalho do diário. Se a energia se esgotasse em parte ao escrever o arquivo, o Linux verificaria o diário do sistema de arquivos quando ele iniciasse e retomaria qualquer trabalho parcialmente concluído. Isso evita a perda de dados e corrupção de arquivos.
Journaling faz com que o desempenho do disco fique um pouco mais lento, mas é bem valido em um desktop ou laptop. Não é tão sobrecarregado quanto você possa pensar. O arquivo completo não é escrito para a revista. Em vez disso, apenas os metadados do arquivo, inode, ou localização do disco são gravados no journal antes de serem escritos no disco.
Todos os sistemas de arquivo modernos suportam journaling, e você vai querer usar um sistema de arquivo que suporte journaling ao configurar um desktop ou laptop.
Sistemas de arquivo que não oferecem journaling estão disponíveis para uso em servidores de alto desempenho e outros sistemas desse tipo, onde o administrador quer espremer o desempenho extra. Eles também são ideais para unidades flash removíveis, onde você não quer o maior overhead e escritas adicionais de journaling.
Qual é a diferença entre todos esses sistemas de arquivos Linux?
Enquanto a Microsoft desenvolve Windows e Apple controla macOS, Linux é um projeto open-source desenvolvido pela comunidade. Qualquer pessoa (ou qualquer empresa) com habilidade e tempo pode criar um novo sistema de arquivos Linux. Essa é uma das razões pelas quais existem tantas opções. Aqui estão as diferenças:
- Ext significa “Extended file system”, e foi o primeiro criado especificamente para Linux. Ele teve quatro grandes revisões. “Ext” é a primeira versão do sistema de arquivos, introduzida em 1992. Foi uma grande actualização do sistema de ficheiros Minix utilizado na altura, mas falta-lhe características importantes. Muitas distribuições Linux já não suportam Ext.
- Ext2 não é um sistema de ficheiros de journaling. Quando introduzido, foi o primeiro sistema de arquivo a suportar atributos de arquivo estendido e 2 drives terabyte. A falta de um diário no Ext2 significa que ele escreve menos em disco, o que o torna útil para memória flash como drives USB. Entretanto, sistemas de arquivos como exFAT e FAT32 também não usam journaling e são mais compatíveis com diferentes sistemas operacionais, então recomendamos que você evite Ext2 a menos que você saiba que precisa dele por algum motivo.
- Ext3 é basicamente apenas Ext2 com journaling. O Ext3 foi projetado para ser compatível com o Ext2, permitindo que partições sejam convertidas entre Ext2 e Ext3 sem qualquer formatação necessária. Ele existe há mais tempo que o Ext4, mas o Ext4 existe desde 2008 e é amplamente testado. Neste ponto, você está melhor usando Ext4.
- Ext4 também foi projetado para ser compatível com o Ext4 ao contrário. Você pode montar um sistema de arquivos Ext4 como Ext3, ou montar um sistema de arquivos Ext2 ou Ext3 como Ext4. Ele inclui novos recursos que reduzem a fragmentação de arquivos, permite volumes e arquivos maiores e usa alocação retardada para melhorar a vida útil da memória flash. Esta é a versão mais moderna do sistema de arquivos Ext e é o padrão na maioria das distribuições Linux.
- BtrFS, pronunciado “Butter” ou “Better” FS, foi originalmente projetado pela Oracle. Ele significa “B-Tree File System” (Sistema de Arquivos B-Tree) e permite o agrupamento de drives, instantâneos instantâneos, compressão transparente e desfragmentação online. Ele compartilha várias das mesmas idéias encontradas no ReiserFS, um sistema de arquivos que algumas distribuições Linux usavam por padrão. O BtrFS é projetado para ser uma quebra limpa da série Ext de sistemas de arquivos. Ted Ts’o, o mantenedor do sistema de arquivos Ext4, considera o Ext4 uma solução de curto prazo e acredita que o BtrFS é o caminho a seguir. Espere ver o BtrFS se tornar o padrão em ambas as distribuições de servidores corporativos e desktop Linux de consumo nos próximos anos, já que ele foi testado.
- O ReiserFS foi um grande salto para os sistemas de arquivos Linux quando foi introduzido em 2001 e incluiu muitas novas funcionalidades que o Ext nunca seria capaz de implementar. O ReiserFS foi substituído pelo Reiser4, que melhorou em muitas das funcionalidades que estavam incompletas ou faltando no lançamento inicial, em 2004. Mas o desenvolvimento do Reiser4 estagnou depois que o principal desenvolvedor, Hans Reiser, foi enviado para a prisão em 2008. O Reiser4 ainda não está no kernel principal do Linux e é pouco provável que chegue lá. BtrFS é a melhor escolha a longo prazo.
RELACIONADO: Como instalar e usar ZFS no Ubuntu (e porque você quer)
- ZFS foi projetado pela Sun Microsystems para Solaris e agora é de propriedade da Oracle. O ZFS suporta muitos recursos avançados, incluindo drive pooling, snapshots e striping de disco dinâmico – o ZFS vai trazer muitos desses recursos para o Linux por padrão. Cada arquivo tem um checksum, assim o ZFS pode dizer se um arquivo está corrompido ou não. O ZFS de código aberto da Sun sob a licença Sun CDDL, o que significa que ele não pode ser incluído no kernel do Linux. No entanto, você pode instalar o suporte ao ZFS em qualquer distribuição Linux. O Ubuntu agora oferece suporte oficial ao ZFS a partir do Ubuntu 16.04, também. O Ubuntu usa ZFS por padrão para containers.
- XFS foi desenvolvido pela Silicon Graphics em 1994 para o sistema operacional SGI IRX, e foi portado para Linux em 2001. É similar ao Ext4 em alguns aspectos, pois também usa alocação retardada para ajudar na fragmentação de arquivos e não permite a montagem de snapshots. Ele pode ser aumentado, mas não encolhido, na hora certa. XFS tem boa performance quando se lida com arquivos grandes, mas tem pior performance que outros sistemas de arquivos quando se lida com muitos arquivos pequenos. Ele pode ser útil para certos tipos de servidores que precisam principalmente lidar com arquivos grandes.
- JFS, ou “Journaled File System”, foi desenvolvido pela IBM para o sistema operacional IBM AIX em 1990 e posteriormente portado para Linux. Possui baixo uso de CPU e bom desempenho tanto para arquivos grandes quanto pequenos. As partições JFS podem ser redimensionadas de forma dinâmica, mas não encolhidas. Foi extremamente bem planejado e tem suporte em quase todas as grandes distribuições, no entanto seus testes de produção em servidores Linux não são tão extensos como Ext, como foi projetado para o AIX. Ext4 é mais comumente usado e é mais amplamente testado.
- Swap é uma opção ao formatar um drive, mas não é um sistema de arquivo real. É usado como memória virtual e não tem uma estrutura de sistema de arquivos. Você não pode montá-lo para ver seu conteúdo. Swap é usado como “espaço raspado” pelo kernel Linux para armazenar temporariamente dados que não podem caber na RAM. Ele também é usado para hibernar. Enquanto o Windows armazena seu arquivo de paginação como um arquivo em sua partição principal do sistema, o Linux apenas reserva uma partição vazia separada para o espaço swap.
RELATADO: Qual é a diferença entre FAT32, exFAT, e NTFS?
- FAT16, FAT32, e exFAT: Os sistemas de arquivos FAT da Microsoft são frequentemente uma opção ao formatar uma unidade no Linux. Estes sistemas de ficheiros não incluem um diário, por isso são ideais para unidades USB externas. Eles são um padrão de fato que todo sistema operacional – Windows, macOS, Linux e outros dispositivos – pode ler. Isto faz deles o sistema de arquivo ideal para usar ao formatar um drive externo que você vai querer usar com outros sistemas operacionais. FAT32 é mais antigo. 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 de FAT32.
Existem outros sistemas de arquivos Linux também, incluindo sistemas de arquivos projetados especificamente para armazenamento flash em dispositivos embutidos e em cartões SD. Mas estas são as opções que você verá mais frequentemente quando usar o Linux.