NTFSv3 para Linux

NTFSv3 para Linux
NTFSv3 para Linux
  
    Noticiei o lançamento do kernel 5.14 e, além de não ter visto adicionarem suporte as novas plataformas da AMD, outro recurso que tive noticias que não tive noticias de sua adoção é o sistema de arquivos NTFS3. Em Setembro de 2020 Konstantin Komarov da Paragon Software anunciou que estaria  trabalhando no desenvolvimento do sistema de arquivos NTFSv3 para Linux. Não é nenhuma novidade que o Linux já possui suporte a NTFS (algo que já via na época que utilizava o Kurumin (não me lembro qual versão) e o Fedora 6  facilmente). Tanto é que eu já fiz benchmarks duas vezes; uma vez em 2015 aqui no blog e outro no meu canal em 2018 (pretendo fazer mais no futuro, mas por ora não).


    O que se nota no NTFS em ambos os benchmarks é uma diferença enorme de sua melhoria. Mas por que a Paragon Software decidiu então desenvolver sua própria versão de NTFS sendo que já possuímos NTFS no Linux? Bom, o maior motivo pode ser conferido em sua FAQ, está relacionado a desempenho. O NTFS que utilizamos no Linux (chamado NTFS-3G e que é desenvolvido pela Tuxera) é na verdade um filesystem in userspace que também conhecemos abreviadamente como FUSE, uma interface simples para exportar um sistema de arquivos virtual para o kernel Linux que, apesar do NTFS-3G funcionar bem, já é conhecido entre nós que o FUSE sofre de perda de desempenho. É o mesmo caso que ocorreu com o ExFat (e o Vfat) que também rodavam via FUSE e que depois que a Microsoft disponibilizou sua especificação técnica, pudemos ver lançamento do kernel com suporte nativo ao ExFat. Foi pensando nisso que a Paragon desenvolveu sua própria versão do NTFSv3 que é realmente um driver. 
    A ASUSD-Link, CorsairBelkin e NETGEAR também já apresentaram relatórios de melhor qualidade em seus serviços e produtos com Linux e que dependem do NTFS. A FixMeStick, a AJA Video e a Wester Digital apresentam seus casos de estudos sobre os produtos da Paragon.


    Mas essa não é sua única vantagem; o NTFSv3 também oferece acesso total a volumes NTFS e o HFS+, melhor integridade, proteção de dados, facilidade de instalação, 
melhor interoperabilidade entre outros sistemas operacionais e dispositivos (seja entre Android, Windows, Macbook, iPad, notebooks Linux, Chromebook e etc),   suporte aos kernels Linux (do 2.6.36 a acima do 5.12.x), distribuições mais recentes e suporte a SMP do kernel. Há uma tabela comparativa de recursos dos sistemas de arquivos desenvolvidos pela paragon para Windows, Linux, MacOSX, iOS UEFI e QNX que pode ser conferida clicando aqui, ou baixando PDF. Seu NTFS acaba apresentando melhores recursos para Linux:

tabela comparativa de sistemas de arquivos entre sistemas operacionais.
tabela comparativa de sistemas de arquivos entre sistemas operacionais.

    O NTFS da Paragon está sob licença EULA (mesmo assim, está disponível o seu código fonte) e há duas edições disponíveis para download:
Diferença de recursos entre a versão free e a profissional do NTFS da Paragon.
Diferença de recursos entre a versão free e a profissional do NTFS da Paragon.

DESVANTAGENS DO NTFS

    Eu já ouvi afirmarem que "para debater assuntos e termos técnicos, é necessário que a Microsoft disponibilize seu código fonte"; o que eu acho uma extrema de uma tolice (não acredito em software livre a troco de nada). É possível sim debater assuntos técnicos sobre ferramentas sem a necessidade de código fonte, alias, muitos dos que brigam para que as empresas disponibilizem seus códigos fonte, nem sabem ler e muito menos contribuem. Então vamos a analise técnica; nem tudo são as mil maravilhas e o NTFS também possui suas limitações. Já me perguntaram o que eu acho do NTFS e isso virou tema de um vídeo. Acho que o NTFS um sistema de arquivos rico e pobre ao mesmo tempo (rico em recursos e pobre em sua execução).

    Vemos na versão Free do NTFSv3 em limitações que:
  1. Arquivos criptografados não possuem a capacidade de serem descriptografados.
  2. Somente stream de dados é copiado durante a operação de cópia
  3. Hard links e symlinks são copiados como arquivos, sem informações de link. 
    Há uma informação interessante na Wikipedia que diz que "Se usado em uma mídia removível, ela pode se corromper mais facilmente; Não é possível otimizar para remoção rápida".  Isso é realmente verdade (ao menos nas versões atuais tanto do Windows quanto no NTFS-3G que usamos no Linux) e relatei isso em um vídeo:


    A vantagem de se ter NTFS no Linux é que pode ocorrer de certas aplicações que foram desenvolvidas primeiramente para Windows (ou serem aplicações somente para Windows) serem escritas com base em recursos do seu sistemas de arquivos. Isso acaba facilitando muito o trabalho tanto para os desenvolvedores quanto sysadmins e até usuários finais. Na FAQ do Wine é mencionado que "nem todos os sistemas de arquivos / drivers possuem suporte a todos os recursos do Fat32 ou do NTFS. Um exemplo é que driver do NTFSv3 não possuem suporte a shared-write mmap, um recurso que não pode ser emulado e é utilizado por aplicações assim como a Steam." Ou seja, até mesmo entre NTFS e NTFSv3 há seus conflitos (o que não é um caso de se estranhar, já vimos casos assim como é caso que ocorreu no MacOS X).

NTFSv3 da Paragon sendo instalado no Ubuntu.
NTFSv3 da Paragon sendo instalado no Ubuntu.

    Com a crescente adoção de Linux se tornando cada vez mais forte, acabamos vendo a Microsoft portando suas ferramentas para Linux, desenvolvendo novas ferramentas também pensando no Linux e até mesmo abrindo alguns de seus códigos fonte (confira aqui algumas destas noticias). Não vai ser estranho acabarmos vendo a Microsoft sacrificando o Windows para em seu lugar construir um sistema operacional Linux com as aplicações do Windows e assim ela ter o melhor dos dois mundos para o seu publico (já vimos a Microsoft fazer isso com o windows phone que em seu final era uma versão de Android com a cara do Windows phone e a Apple sacrificar o MacOS para colocar em seu lugar o NextSptep com a Cara do MacOS). 

Comente com o Facebook:

Nenhum comentário:

Postar um comentário

Viu algum erro e quer compartilhar seu conhecimento? então comente aí.

Observação: somente um membro deste blog pode postar um comentário.

Marcadores

A pior história sobre Linux que já ouvi (5) A.I (1) ambiente gráfico (19) AMD (14) analise (10) Andriod (16) android (7) Apple (1) arm (4) artigo (5) aws (1) bc (23) benchmark (6) BetrFS (1) blackhat (1) BSDs (29) btrfs (32) bugs (2) Caixa de Ferramentas do UNIX (19) canto do Diego Lins (2) certificações Linux (7) Código Fonte (54) comandos (30) comp (1) compressores (5) container (7) CPU (19) cracker (1) criptografia (5) crowdfunding (9) cursos (24) daemons (13) Debian (31) desempenho (1) desenvolvimento (90) desktop (19) DevOps (3) DevSecOps (4) dic (1) Dica de leitura (90) dica DLins (2) dicas do Flávio (27) Dicas TechWarn (1) diet libc (3) diocast (1) dioliunx (3) distribuições Linux (14) Docker (12) DragonflyBSD (22) driver (1) ead Diolinux (2) edição de vídeo (5) embarcados (1) EMMI Linux (4) emuladores (9) endless (5) English interview (3) Enless OS (2) entrevista (17) espaço aberto (82) evento (6) facebook (1) Fedora (10) filesystem (82) financiamento coletivo (2) fork (4) fox n forests (4) FreeBSD (20) Funtoo Linux (13) games (93) gerenciadores de pacotes (4) glaucus (2) GOG (3) google (8) gpu (3) hacker (2) hardware (104) hash (1) helenos (3) I.A (1) init system (10) Intel (15) inteligencia artificial (1) IoT (1) ispconfig (1) jogos (37) kde (1) kernel (138) lançamento (64) leis (1) LFCS (1) libs (2) licenças (8) Linus (16) linus torvalds (2) Linux (194) linux foundation (3) linux para leigos (1) live (5) LPI (8) LTS (1) Mac (1) machine learning (1) matemática (9) mesa redonda (27) microcontroladores (1) microsoft (6) microst (1) muito além do GNU (159) musl (2) não viva de boatos (9) navegadores (5) NetBSD (7) newlib (1) nim (1) nintendo (1) novatec (17) novidades (1) nuvem (1) o meu ambiente de trabalho (3) off-topic (12) open source (84) OpenBSD (6) OpenShift (1) os vários sabores de Linux (42) padrim (2) palestras e eventos (5) partições (6) pentest (8) performance (1) pipewire (1) plan9 (1) playstation (1) processadores (30) professor Augusto Manzano (11) Programação (64) promoção (1) propagandas com Linux (8) ps4 (1) real-time. (1) Red Hat (22) redes (4) resenha nerd (4) Resumo da Semana do Dlins (2) resumo do Tux (19) retrospectiva Linux (1) risc-V (14) RISCV (13) rtos (1) runlevel (2) rust (12) segurança digital (24) servidores (1) shell (7) shell script (6) sistema operacional (25) smartphones (3) Software livre e de código aberto (151) sorteio (3) Steam (10) Steam no Linux (8) supercomputadores (4) suse (5) systemd (7) terminal (87) terminal de comandos (16) toca do tux (1) toybox (26) tutorial (6) Tux (3) unboxing (7) UNIX (17) UNIX Toolbox (14) vartroy (1) vga (1) virtualização (2) vulnerabilidade (6) wayland (5) whatsapp (1) whitehat (1) Windows Subsystem for Linux (2) wine (14) WoT (1) ZFS (15) zsh (3)