Questão Sistema de arquivos de plataforma cruzada


Eu gostaria que minhas unidades externas fossem legíveis e graváveis ​​no Linux, Mac OS X e Windows.

O FAT32 funciona, mas o limite de tamanho de arquivo de 4 GB é um impedimento nos dias de hoje. Existem alternativas?


82


origem




Respostas:


Como Breakthrough disse, use NTFS. No Mac OS e no Linux, você pode usar NTFS-3G para habilitar a leitura / gravação em uma partição NTFS.

No OS X, o NTFS-3G também pode ser instalado Homebrew de graça com brew install ntfs-3g. Você também precisa Fusível para o OS X, Mas é isso.

Esses projetos são gratuitos, de código aberto e maduros. Eu usei essa configuração em um Mac e não tive problemas para acessar dados de uma partição NTFS.


46



Uma palavra de aviso: Nem todas as operações são suportadas pelo driver ntfs-3g. en.wikipedia.org/wiki/NTFS#Linux "Devido à complexidade das estruturas internas do NTFS, tanto o driver do kernel 2.6.14 embutido quanto os drivers FUSE não permitem mudanças no volume que são consideradas inseguras, para evitar corrupção." Tive a sorte de experimentar isso: minha unidade NTFS congelou uma vez no meio da operação. Eu finalmente desliguei e anexei novamente, e o ntfs-3g não tocou nele desde então. Eu finalmente tive que anexar a unidade NTFS a uma caixa do Windows e inicializá-la, depois conectá-la novamente na caixa do Linux, para fazê-la funcionar. - nagul
Bem, se você considerar que o formato ntfs foi todo de engenharia reversa, ainda é bastante estável. Concedido, provavelmente ainda terá algumas peculiaridades. Você perdeu algum dado? - alex
Não, felizmente não houve perda de dados. Apenas me irritou que eu não conseguisse fazer o disco funcionar sem anexando-o a um host do Windows primeiro. Eu esperava que pelo menos pudesse forçar a montagem da unidade. Desde então, voltei a usar o fat32 quando preciso de compatibilidade entre plataformas, pois acho o limite de 4 GB mais palatável. Mas isso sou só eu. Eu vou concordar com a parte de estabilidade embora; Eu nunca temi corrupção de dados ao usar o ntfs-3g. - nagul
Além disso, o NTFS é imensamente não-suportado ou pouco estável fora do grande 3. Por exemplo, o OpenBSD tem um suporte de somente leitura estável, mas somente gravação é muito instável. Tenho certeza de que existem outros SOs com o mesmo problema devido a ser um FS proprietário - Earlz
@nagul, Como você sabe que não tem perdas de dados? - Pacerier


UDF é um candidato. Ele funciona de forma simples no linux> = 2.6.31, Windows> = Vista, MacOS> = 9 e em muitos BSDs.

Nota: O UDF vem em versões diferentes, que não são igualmente suportadas em todas as plataformas, consulte Wikipedia - Compatibilidade.

Questão relacionada: Usando o UDF em uma unidade flash USB


38



Este parece ser o melhor método para mim. Ele funciona no Windows, Linux e Mac muito bem. - Vortico
Para melhor compatibilidade, certifique-se de usar as opções corretas de formatação, leia este tópico: serverfault.com/questions/55089/… - MarcH
Parece que o Linux suporta apenas UDF write up até a versão 2.05: git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/fs/… :( - Gerry
@Gerry Funciona aqui sem problemas: truncate -s 100M udf.img && mkudffs udf.img && mount udf.img /mnt && echo foo > /mnt/foo && umount /mnt && uname -r → 3.16.0-4-amd64 - Marco
@Marco Eu acho que ele quis dizer versão 2.05 de UDF, não Linux - osvein


A resposta simples é não. Não há menor denominador comum entre esses sistemas operacionais além do FAT32.

Pelo menor denominador comum, quero dizer sistemas de arquivos internos. Para complementos, você está sozinho.


16



Não é tão difícil encontrar alternativas :) - alex
Se alguém quiser conectar a unidade a uma computação arbitrária, previamente desconfigurada, se as alternativas são possíveis é um ponto discutível. - EmmEff
UDF é o menor denominador comum. Exceto para sistemas embarcados, todos os sistemas operacionais de PC atuais têm suporte interno para UDF - phuclv
O UDF não funciona para Chromebooks. Veja aqui: support.google.com/chromebook/answer/183093?hl=pt - Jim Hunziker


Bem, você tem duas soluções. Muitas distribuições Linux incluem ferramentas para ler e gravar em unidades NTFS ...

Uma alternativa seria usar o Ext2. Existe um utilitário do windows que integra o sistema de arquivos com o sistema operacional Windows. Eu acho que essa seria sua solução ideal:

Ele instala um driver do sistema de arquivos em modo kernel puro Ext2fs.sys, que na verdade estende o sistema operacional Windows para incluir o sistema de arquivos Ext2. Como ele é executado na mesma camada de software no núcleo do sistema operacional Windows NT, como todos os drivers de sistema de arquivos nativos do Windows (por exemplo, NTFS, FASTFAT ou CDFS para CD-ROMs Joliet / ISO), todos os aplicativos podem acessar diretamente Volumes ext2. Os volumes ext2 recebem letras de unidade (por exemplo, O :). Arquivos e diretórios de um volume Ext2 aparecem nos diálogos de arquivos de todos os aplicativos. Não há necessidade de copiar arquivos de ou para volumes Ext2 para trabalhar com eles.


9



Soluções válidas se alguém puder e estiver disposto a instalar essas ferramentas de terceiros nas máquinas de destino. - EmmEff
Isso seria uma boa solução é o OSX poderia suportar nativamente Ext2. Mas usando Ext2, AFAIK, significa que você tem que instalar um driver no Windows e Fuse no OSX. - Rolf


experimentar exFAT, que se torna disponível para mais e mais sistemas operacionais. Acordos para o artigo da Wikipédia linkada (veja fontes) há um módulo de kernel de código aberto para o Linux em desenvolvimento. OS X suporta desde 10.6.5, o Windows suporta desde o Vista. Existem atualizações para sistemas operacionais Microsoft.

O exFAT suporta arquivos grandes.


8



O exFAT não está realmente disponível em sistemas Linux. - polemon
Na verdade parece que exFAT tem suporte de leitura / escrita no Linux. Você simplesmente não pode criar volumes exFAT. No entanto, não sei quão bom é o suporte. Finalmente seus desenvolvedores dizem que ainda está em beta.


Monte suas unidades externas em um servidor com NFS e Samba.


6





FAT32 é algo que você pode ter certeza de trabalhar em praticamente qualquer lugar.

Eu luto com o limite de tamanho de arquivo, que pelos padrões de hoje não é tão grande assim. Desde exFAT não está disponível no Linux ainda, eu estava procurando alternativas, e é realmente difícil encontrar algo adequado.

A UDF já foi criada para ser uma plataforma cruzada e um sistema de arquivos cross media, mas meio que esquecida. Há uma opção para formatar UDF para discos rígidos, o que é bastante adequado para unidades removíveis, mas pelo que eu experimentei, suporte no Windows é mínimo, se em tudo. Não sei se o Windows 7 oferece suporte a unidades UDF além de discos BluRay.

Eu decidi usar o NTFS para minhas unidades externas, que precisam ser conectadas a computadores Windows, assim como a computadores Linux. Para minhas unidades removíveis, que são principalmente, se não usadas apenas em computadores Linux, eu uso o XFS.

O mesmo problema se aplica à criptografia também: eu uso o LUKS no Linux, que tem algum suporte no Windows. O TrueCrypt não pode ser integrado aos sistemas Linux muito bem, em comparação com o LUKS, então decidi por esse.


4



O UDF agora funciona (Windows 7). Vejo serverfault.com/questions/55089/… - MarcH
superuser.com/questions/39942/using-udf-on-a-usb-flash-drive - MarcH