Estou tentando copiar um arquivo de 6 GB para uma unidade flash USB, mas ele não será copiado.
Estou tentando copiar um arquivo de 6 GB para uma unidade flash USB, mas ele não será copiado.
Respostas:
Isso ocorre devido à limitação do FAT32. Arquivos maiores que 4 GB não podem ser armazenados em um volume FAT32. A formatação da unidade flash como exFAT ou NTFS resolverá esse problema.
AVISO: Faça backup dos seus dados. A formatação excluirá todos os dados do seu dispositivo.
ext3
também é uma opção
Se você não quiser reformatar sua unidade USB ou precisar que ela seja FAT32, basta dividir seu arquivo grande em partes. A maioria dos gerenciadores de arquivos vem com a opção split e, para a linha de comando, existe split
, por exemplo, para o seu caso:
split -b4294967295 /path/to/input.file /path/to/pen/drive/output.file.
Veja man split
para a documentação completa. Isso criará os seguintes arquivos:
4,0G output.file.aa
1,6G output.file.ab
O tamanho do arquivo output.file.aa
corresponde exatamente ao tamanho máximo do seu drive USB formatado em FAT32, que é de 4 Gibibyte (GiB, que não é o mesmo que Gigabyte GB) menos 1 Byte .
Agradecemos a Gilles por esta importante adição.
Antes de poder acessar o arquivo novamente, você precisa mesclar suas partes primeiro. Nos sistemas Linux, você pode fazer isso com:
cat output.file.* > input.file
Se você tem medo de que isso possa classificar os arquivos com a leitura incorreta no Bash, as expansões de curingas estão em ordem?
O comando correspondente nos sistemas Windows é:
copy /b output.file.aa+output.file.ab input.file
Juntamente com muitos outros utilitários GNU úteis, também split
podem ser instalados no Windows, consulte Utilitários GNU para Win32 .
split
mesmo sem a distinção entre GiB e GB. Mas eu vou enviar uma attaboy para isso ...
split
existe precisamente para esse fim e não é necessária para o recebimento. O FAT32 é a língua franca das unidades USB por um motivo.
-b 4095M
que seria muito mais simples e alcançaria o mesmo que o bc
comando. Em Bash pode-se também usar shell aritmética: $(((4<<30)-1))
.
Diferentes cenários e sistemas de arquivos são examinados, procurando alternativas levando em consideração
Se você pretende usar a unidade apenas com o Ubuntu (e outras distribuições linux), é uma boa idéia usar um sistema de arquivos linux , por exemplo ext4 . Dessa forma, você poderá obter maior velocidade de leitura / gravação (dependendo de qual processo é o gargalo) e maior flexibilidade em relação à propriedade e permissões.
gparted
para criar o sistema de arquivos ext4 .O Windows tem problemas com os sistemas de arquivos linux, e acho que o MacOS tem problemas com os sistemas de arquivos linux e o NTFS . Portanto, se você deseja 'compatibilidade total' para leitura e gravação, apenas FAT32 , UDF e exFAT permanecem.
O FAT32 possui um limite de 4GiB (gibibyte, base 2) para o tamanho do arquivo.
Pode ser mantido no Ubuntu com dosfsck
, que acompanha o pacote dosfstools
,
sudo apt-get install dosfstools
sudo dosfsck -a /dev/sdxn # least destructive option
sudo dosfsck -r /dev/sdxn # more powerful option
onde x é a letra /dev/sdb1
da unidade en é o número da partição, por exemplo, para a primeira partição na unidade b.
O UDF provavelmente não possui ferramentas para reparar o sistema de arquivos,
Como criar e usar UDF: Usando o UDF como sucessor do FAT para pen drives
Portanto, para usá-lo, assumindo que o seu pendrive é /dev/sdx
:
Instale o pacote udftools
sudo apt-get install udftools
Crie uma tabela de partição e uma partição com gparted
ougnome-disks
Limpe o primeiro mibibyte da partição de destino com o risco dd
(verifique duas vezes a linha de comando!)
sudo dd if=/dev/zero of=/dev/sdx1 bs=1M count=1
Run mkudffs
,
sudo mkudffs -b 512 --media-type=hd --lvid=my-label /dev/sdx1
Limpe o primeiro mibibyte da partição para apagar as informações anteriores do sistema de arquivos (ou outros dados restantes), para impedir que o pendrive seja detectado como um FAT depois de formatado com UDF.
Isso -b 512
é forçar um tamanho de bloco do sistema de arquivos igual ao tamanho do bloco físico do pendrive, conforme exigido pela especificação UDF. Adapte-o se tiver a sorte de ter um pendrive com um tamanho de bloco mais apropriado.
Depois disso, seu pendrive será utilizável para leitura e gravação com o GNU / Linux e outros sistemas operacionais gratuitos, é claro, mas também com as versões atuais do Windows (somente leitura com a versão desatualizada XP) e com o MacOS.
exFAT é outra opção. É novo em comparação ao FAT32 e UDF e alegou funcionar bem
Comecei a testar o exFAT no Ubuntu. Pretendo editar esta resposta, quando tiver mais experiência em usá-la. Vamos começar com os seguintes links ,
O ExFAT é um sistema de arquivos proprietário da Microsoft otimizado para
sistemas embarcados porque é leve e é mais adequado para soluções com pouca memória e baixo consumo de energia e pode ser implementado em firmware.
Como obter uma unidade formatada com o exfat working (no Ubuntu)
e esta linha de comando para instalar o suporte [leitura / gravação] para exFAT no Ubuntu
sudo apt-get install exfat-utils exfat-fuse
Pode ser criado no Windows e MacOS e no Linux com a seguinte linha de comando
sudo mkfs.exfat -n YOUR-LABEL /dev/sdxi
onde x
é a letra da unidade e i
é o número da partição, por exemplo /dev/sdb1
.
Pode ser mantido no Windows.
Meus primeiros resultados de teste :
md5sum
e a velocidade foi limitada pelo sistema USB).Portanto, se você deseja acesso total de leitura / gravação do Ubuntu e do Windows, sugiro que você use o NTFS , que possui registro no diário e é muito depurado e polido como o sistema de arquivos [proprietário] do Windows. (Também é possível usar exFAT .)
gparted
para criar um sistema de arquivos NTFS.No MacOS, é possível usar o FAT32 , UDF e exFAT .
Você também pode usar ext4 com uma solução alternativa, o Ubuntu Server com um servidor SSH em uma máquina virtual . (Acho que a mesma solução alternativa também funcionaria com o Windows.) Isso pode valer a pena quando você pretende acessar muitos arquivos através da unidade e do sistema de arquivos, mas provavelmente não com um pequeno pendrive USB2.
Veja este link,
Tendo tido um problema semelhante e não estava disposto a reformatar o pen drive, usei apenas um arquivador. Mais ou menos todas as GUIs modernas (como File Roller, 7Zip etc.) ou CLIs permitem dividir o arquivo morto. Defina o limite de divisão abaixo do limite do FAT (que é de 4 GB), para obter velocidade, você pode escolher uma baixa taxa de compactação, até "armazenar", ou seja, não comprimir nada, e pronto!
Se você tiver acesso a uma máquina Windows, poderá converter seu sistema de arquivos USB-stick sem formatação. Você deve usar a linha de comando do Windows da seguinte maneira: pressione Win + R
, digite cmd
-> OK
, na janela aberta, digite o comando convert X: /FS:ntfs
onde X:
está a letra do seu pendrive USB montado. Em menos de um minuto está pronto. Desfrutar.
Reformatar ou usar a divisão são ótimas opções, ou você pode tentar usar o zip para compactar o arquivo, apenas saiba que alguns arquivos já estão compactados, portanto, compactá-los aumentará. (Além disso, você pode perder a propriedade do arquivo, registros de data e hora etc.)