Como nenhum sistema de arquivos é o melhor em todas as situações, determinar qual sistema de arquivos é o melhor para seu aplicativo nem sempre é fácil. No entanto, como você verá por si mesmo, escolher o sistema de arquivos correto pode oferecer ganhos de desempenho superiores a 95%.
Sistemas de arquivos Linux. Por que tantos?
Existem três razões principais pelas quais existem tantos sistemas de arquivos no Linux:
* It's open source: effectively everyone owns it.
* File Systems competing for better performance and or scalability.
* File Systems allowing for compatibility/portability of existing data (migrations from other systems).
Comparação do sistema de arquivos
A lista a seguir descreve as características do sistema de arquivos do Linux e indica quando esse sistema de arquivos é melhor usado. Esta lista não é exaustiva de todos os sistemas de arquivos disponíveis no mundo, mas se concentra naqueles que têm participação de mercado ou atenção no mercado hoje. Uma comparação detalhada dos recursos do sistema de arquivos pode ser encontrada em: link
EXT2
* Recommended to move to EXT3
* Not Journaled
* POSIX access control
O sistema de arquivos EXT2 é o predecessor do sistema de arquivos EXT3. O EXT2 não é registrado no diário e, portanto, não é mais recomendado (os clientes devem migrar para o EXT3).
Uso recomendado: USB / Solid State Drives ou qualquer outra causa em que você precise de alta estabilidade com o mínimo de leituras / gravações.
EXT3
* Most popular Linux file system, limited scalability in size and number of files
* Journaled
* POSIX extended access control
O sistema de arquivos EXT3 é um sistema de arquivos com registro em diário que hoje é o mais utilizado no Linux. É o sistema de arquivos "Linux". É bastante robusto e rápido, embora não se adapte bem a grandes volumes nem a um grande número de arquivos. Recentemente, foi adicionado um recurso de escalabilidade chamado htrees, que melhorou significativamente a escalabilidade do EXT3. No entanto, ainda não é tão escalonável quanto alguns dos outros sistemas de arquivos listados, mesmo com htrees. Ele é semelhante ao NTFS com htrees. Sem htrees, o EXT3 não manipula mais de 5.000 arquivos em um diretório.
Uso recomendado: Se você não tiver um motivo específico para outro sistema de arquivos, o ext3 é um excelente padrão.
Ext4
O mais recente na linha de sistema de arquivos ext, o ext4 inclui muitas melhorias importantes sobre o ext3, como suporte a sistemas de arquivos maiores, verificação mais rápida, timestamps em nanossegundos e verificação do diário por meio de somas de verificação. É compatível com as versões 2 e 3 para trás e para frente, para que você possa montar um sistema de arquivos ext2 ou ext3 como ext4 e vice-versa. Você pode, no entanto, perder alguns dos benefícios das versões mais novas ao montar como as mais antigas. Muitas das distribuições modernas do Linux agora oferecem ext4 durante a instalação, e algumas estão usando como padrão.
Uso recomendado: O Ext4 deve ser estável o suficiente para as necessidades de desktop e servidor. Se a sua distribuição oferecer isso como uma opção de instalação, ela deverá ser uma boa opção para praticamente todas as necessidades de uso.
FAT32
* Most limited file system, but most ubiquitous
* Not Journaled
* No access controls
FAT32 é o mais cruel dos sistemas de arquivos listados. Sua popularidade é com o seu uso generalizado e popularidade no mundo de desktop do Windows e que ele fez o seu caminho para ser o sistema de arquivos em dispositivos flash de memória RAM (câmeras digitais, cartões de memória USB, etc.). Ele não possui controle de acesso de segurança integrado, portanto, é pequeno e funciona bem nesses aplicativos portáteis e incorporados. Ele escala o menor dos sistemas de arquivos listados. A maioria dos sistemas tem suporte à compatibilidade FAT32 devido à sua onipresença.
NTFS
* The Windows file system, best for workgroup shared LAN file serving
* Journaled
* Windows access controls (richer than POSIX)
O sistema de arquivos do Microsoft Windows para o kernel do Windows NT (Windows NT, Windows 2000, Windows XP e Windows 2003). A versão Linux OpenSource deste sistema de arquivos só é capaz de ler somente dados NTFS existentes. Isso permite a migração do Windows e o acesso aos discos do Windows. O NTFS inclui um modelo de ACL que não é POSIX. O modelo de ACL do NTFS é exclusivo da Microsoft, mas é um derivado do modelo de ACL do Novell NetWare 2.x. O NTFS é a opção padrão (e praticamente única) nos servidores Windows. Inclui recursos avançados de metadados e atributos. O NTFS também suporta múltiplos fluxos de dados e herança de direitos de ACL desde sua implementação do Windows 2000. No Windows 2003 R2, a Microsoft incluiu um recurso chamado "Enumeração Baseada em Acesso". Isso é semelhante à visibilidade no NSS e no NWFS, mas não é implementado na camada do sistema de arquivos, mas como um recurso do mecanismo do protocolo CIFS no Windows 2003 R2, portanto, esse recurso só está disponível ao acessar o Windows 2003 por meio do protocolo CIFS.
ReiserFS
* Best performance and scalability when number of files is great and/or files are small
* Journaled
* POSIX extended access controls
O Reiser File System é o sistema de arquivos padrão nas distribuições do SUSE Linux. O Reiser FS foi projetado para remover as limitações de escalabilidade e desempenho existentes nos sistemas de arquivos EXT2 e EXT3. Ele é dimensionado e funciona muito bem no Linux, superando EXT3 com htrees. Além disso, o Reiser foi projetado para usar muito eficientemente o espaço em disco. Como resultado, é o melhor sistema de arquivos no Linux, onde há um grande número de pequenos arquivos no sistema de arquivos. Como a colaboração (email) e muitos aplicativos de serviço da Web têm muitos arquivos pequenos, o Reiser é mais adequado para esses tipos de cargas de trabalho.
Uso recomendado: interagindo com arquivos pequenos em um sistema de núcleo único.