6GBファイルをUSBフラッシュドライブにコピーしようとしていますが、コピーされません。
これは、FAT32の制限によるものです。 4GBを超えるファイルできないはFAT32ボリュームに保存されます。フラッシュドライブをexFATまたはNTFSとしてフォーマットすると、この問題が解決します。
警告:データをバックアップします。フォーマットすると、デバイス上のすべてのデータが削除されます。
USBドライブを再フォーマットしたくない、またはFAT32にする必要がない場合は、大きなファイルを単純にsplit分割できます。ほとんどのアーカイブマネージャーにはsplitオプションがあり、コマンドラインにはsplit
があります。あなたの場合:
split -b4294967295 /path/to/input.file /path/to/pen/drive/output.file.
完全なドキュメントについては、 man split
を参照してください。これにより、次のファイルが作成されます。
4,0G output.file.aa
1,6G output.file.ab
output.file.aa
のファイルサイズは、FAT32形式のUSBドライブの最大ファイルサイズと正確に一致します。これは、4 Gibibyte(GiB、つまりnotギガバイトGBと同じ)マイナス1バイト。
この重要な追加について Gilles に感謝します。
ファイルに再度アクセスする前に、まずその部分をmergeする必要があります。 Linuxシステムでは、次の方法で実行できます。
cat output.file.* > input.file
これによりファイルが誤って読み取られるのではないかと心配している場合 Bashでは、ワイルドカード展開が正しいことを保証されていますか?
Windowsシステムで対応するコマンドは次のとおりです。
copy /b output.file.aa+output.file.ab input.file
他の多くの便利なGNUユーティリティsplit
もWindowsにインストールできます。 GNUユーティリティfor Win32 を参照してください。
さまざまなシナリオとファイルシステムが検討され、考慮された代替案が検索されます
Ubuntu(および他のLinuxディストリビューション)でのみドライブを使用する場合は、linuxファイルシステムを使用することをお勧めします。たとえば、ext4です。これにより、読み取り/書き込み速度が速くなり(どのプロセスがボトルネックかによって異なります)、所有権とアクセス許可に関する柔軟性が高くなります。
gparted
を使用して、ext4ファイルシステムを作成できます。WindowsにはLinuxファイルシステムに問題があり、MacOSにはLinuxファイルシステムとNTFSの両方に問題があると思います。したがって、読み取りと書き込みの「完全な互換性」が必要な場合は、FAT32、UDF、およびexFATのみが残ります。
FAT32には、ファイルサイズに4GiB(ギビバイト、ベース2)の制限があります。
パッケージでdosfsck
に付属しているdosfstools
を使用してUbuntuで保守できます。
Sudo apt-get install dosfstools
Sudo dosfsck -a /dev/sdxn # least destructive option
Sudo dosfsck -r /dev/sdxn # more powerful option
xはドライブ文字で、nはパーティション番号です。たとえば、ドライブbの最初のパーティションの/dev/sdb1
です。
UDFおそらくファイルシステムを修復するツールが欠けている、
UDFの作成および使用方法: SBスティックのFATの後継としてUDFを使用
したがって、使用するには、USBスティックが/dev/sdx
であると仮定します。
パッケージudftools
をインストールします
Sudo apt-get install udftools
gparted
またはgnome-disks
でパーティションテーブルと1つのパーティションを作成します
危険なdd
でターゲットパーティションの最初のmibibyteをワイプします(コマンドラインを再確認してください!)
Sudo dd if=/dev/zero of=/dev/sdx1 bs=1M count=1
mkudffs
を実行します。
Sudo mkudffs -b 512 --media-type=hd --lvid=my-label /dev/sdx1
UDFでフォーマットされた後、USBスティックがFATとして検出されないように、パーティションの最初のmibibyteをワイプして以前のファイルシステム情報(またはその他の残りのデータ)を消去します。
-b 512
は、UDF仕様で要求されるように、USBスティックの物理ブロックサイズに等しいファイルシステムブロックサイズを強制します。より適切なブロックサイズのUSBスティックがあれば幸いです。
その後、USBスティックはGNU/Linuxおよび他の無料オペレーティングシステムでの読み取りおよび書き込みに使用できるようになりますが、Windowsの現在のバージョン(古いバージョンXPでは読み取り専用)およびMacOSでも使用できます。
exFATは別のオプションです。FAT32と比較して新しいUDFそしてうまく機能すると主張した
UbuntuでexFATのテストを開始しました。この回答を編集する予定がありますが、使用した経験があります。次から始めましょうlinks、
ExFATは、Microsoft独自のファイルシステムであり、
軽量であり、低メモリと低電力要件を持ち、ファームウェアに実装できるソリューションに適しているため、組み込みシステム。
そして、このコマンドラインはUbuntuでexFATの[読み取り/書き込み]サポートをインストールします
Sudo apt-get install exfat-utils exfat-Fuse
次のコマンドラインを使用して、WindowsおよびMacOSおよびLinuxで作成できます。
Sudo mkfs.exfat -n YOUR-LABEL /dev/sdxi
ここで、x
はドライブ文字で、i
はパーティション番号です(例:/dev/sdb1
)。
Windowsで保守できます。
最初のテスト結果:
md5sum
で確認しましたが、速度はUSBシステムによって制限されていました)。したがって、UbuntuとWindowsから完全な読み取り/書き込みアクセスが必要な場合、NTFSを使用することをお勧めします。 (exFATを使用することもできます。)
gparted
を使用してNTFSファイルシステムを作成できます。MacOSでは、FAT32、UDFおよびexFATを使用できます。
ext4と回避策、Ubuntuサーバーと仮想マシンのSSHサーバーを使用することもできます。 (同じ回避策はWindowsでも機能すると思います。)これは、ドライブとそのファイルシステムを介して多くのファイルにアクセスする場合に価値があるかもしれませんが、小さなUSB2ペンドライブではおそらくそうではありません。
このリンクをご覧ください。
似たような問題があり、USBスティックを再フォーマットしたくないので、アーカイバを使用しました。ほぼすべての最新のGUI(ファイルローラー、7Zipなど)またはCLIでは、アーカイブファイルを分割できます。分割制限をFAT境界(4GB程度)未満に設定します。速度を上げるには、「ストア」でさえ低い圧縮率を選択できます。つまり、まったく圧縮しないでください。
再フォーマットまたは分割の使用は素晴らしいオプションです。または、Zipを使用してファイルを圧縮してみてください。一部のファイルは既に圧縮されているので、圧縮するとサイズが大きくなります。 (また、ファイルの所有権、タイムスタンプなどを失う可能性があります)