Tôi đang cố sao chép tệp 6GB vào ổ flash USB nhưng nó sẽ không sao chép.
Tôi đang cố sao chép tệp 6GB vào ổ flash USB nhưng nó sẽ không sao chép.
Câu trả lời:
Điều này là do giới hạn FAT32. Không thể lưu trữ các tệp lớn hơn 4GB trên ổ đĩa FAT32. Định dạng ổ đĩa flash là exFAT hoặc NTFS sẽ giải quyết vấn đề này.
CẢNH BÁO: Sao lưu dữ liệu của bạn. Định dạng sẽ xóa tất cả dữ liệu trên thiết bị của bạn.
ext3
cũng là một tùy chọn
Nếu bạn không muốn định dạng lại ổ USB của mình hoặc cần nó là FAT32, bạn chỉ cần chia tệp lớn của mình thành nhiều phần. Hầu hết các trình quản lý lưu trữ đi kèm với tùy chọn phân tách và cho dòng lệnh có split
, ví dụ cho trường hợp của bạn:
split -b4294967295 /path/to/input.file /path/to/pen/drive/output.file.
Xem man split
tài liệu đầy đủ. Điều này sẽ tạo ra các tập tin sau:
4,0G output.file.aa
1,6G output.file.ab
Kích thước tệp output.file.aa
khớp chính xác với kích thước tệp tối đa của ổ USB được định dạng FAT32 của bạn, là 4 Gibibyte (GiB, không giống với Gigabyte GB) trừ đi 1 Byte .
Cảm ơn Gilles cho sự bổ sung quan trọng này.
Trước khi bạn có thể truy cập lại tệp, bạn cần hợp nhất các phần của nó trước. Trên các hệ thống Linux, bạn có thể làm như vậy với:
cat output.file.* > input.file
Nếu bạn sợ rằng điều này có thể sắp xếp các tệp được đọc không chính xác trong Bash, thì việc mở rộng ký tự đại diện có được đảm bảo theo thứ tự không?
Lệnh tương ứng trên các hệ thống Windows là:
copy /b output.file.aa+output.file.ab input.file
Cùng với nhiều tiện ích GNU hữu ích khác split
cũng có thể được cài đặt trong Windows, hãy xem các tiện ích GNU cho Win32 .
split
ngay cả khi không có sự phân biệt giữa GiB và GB. Nhưng tôi sẽ gửi một tùy viên cho điều đó ...
split
tồn tại chính xác cho mục đích này và không bắt buộc ở đầu nhận. FAT32 là ngôn ngữ chung của các ổ USB vì một lý do.
-b 4095M
sẽ đơn giản hơn nhiều và đạt được như bc
lệnh. Trong Bash người ta cũng có thể sử dụng số học shell : $(((4<<30)-1))
.
Các kịch bản và hệ thống tệp khác nhau được kiểm tra để tìm giải pháp thay thế có tính đến
Nếu bạn có ý định chỉ sử dụng ổ đĩa với Ubuntu (và các bản phân phối linux khác), thì nên sử dụng hệ thống tệp linux , ví dụ như ext4 . Bằng cách này, bạn có thể có tốc độ đọc / ghi cao hơn (tùy thuộc vào quá trình nào là nút cổ chai) và bạn sẽ có được tính linh hoạt cao hơn về quyền sở hữu và quyền.
gparted
để tạo hệ thống tệp ext4 .Windows có vấn đề với hệ thống tệp linux và tôi nghĩ MacOS có vấn đề với cả hệ thống tệp linux và NTFS . Vì vậy, nếu bạn muốn 'tương thích hoàn toàn' để đọc và viết, chỉ còn lại FAT32 , UDF và exFAT .
FAT32 có giới hạn 4GiB (gibibyte, cơ sở 2) cho kích thước tệp.
Có thể được duy trì trong Ubuntu với dosfsck
, đi kèm với gói dosfstools
,
sudo apt-get install dosfstools
sudo dosfsck -a /dev/sdxn # least destructive option
sudo dosfsck -r /dev/sdxn # more powerful option
Trong đó x là ký tự ổ đĩa và n là số phân vùng, ví dụ /dev/sdb1
cho phân vùng đầu tiên trong ổ đĩa b.
UDF có thể thiếu các công cụ để sửa chữa hệ thống tập tin,
Cách tạo và sử dụng UDF: Sử dụng UDF như một sự kế thừa của FAT cho các thanh USB
Vì vậy, để sử dụng nó, giả sử thanh USB của bạn là /dev/sdx
:
Cài đặt gói udftools
sudo apt-get install udftools
Tạo một bảng phân vùng và một phân vùng có gparted
hoặcgnome-disks
Lau sạch mibibyte đầu tiên của phân vùng mục tiêu với rủi ro dd
(kiểm tra kỹ dòng lệnh!)
sudo dd if=/dev/zero of=/dev/sdx1 bs=1M count=1
Chạy mkudffs
,
sudo mkudffs -b 512 --media-type=hd --lvid=my-label /dev/sdx1
Xóa mibibyte đầu tiên của phân vùng để xóa thông tin hệ thống tệp trước đó (hoặc dữ liệu còn lại khác), để ngăn USB của bạn không bị phát hiện dưới dạng FAT sau khi được định dạng bằng UDF.
Điều -b 512
này là để buộc kích thước khối hệ thống tệp bằng với kích thước khối vật lý của thanh USB, theo yêu cầu của thông số UDF. Điều chỉnh nó nếu bạn may mắn có một thanh USB với kích thước khối phù hợp hơn.
Sau đó, thẻ USB của bạn sẽ có thể sử dụng để đọc và ghi với GNU / Linux và các hệ điều hành miễn phí khác, nhưng cũng với các phiên bản Windows hiện tại (chỉ đọc với phiên bản XP lỗi thời) và với MacOS.
exFAT là một lựa chọn khác. Nó là mới so với FAT32 và UDF và được cho là hoạt động tốt
Tôi đã bắt đầu thử nghiệm exFAT trong Ubuntu. Tôi dự định chỉnh sửa câu trả lời này, khi tôi có nhiều kinh nghiệm sử dụng nó. Hãy để chúng tôi bắt đầu với các liên kết sau đây ,
ExFAT là một hệ thống tệp độc quyền của Microsoft được tối ưu hóa cho
hệ thống nhúng vì nó nhẹ và phù hợp hơn cho các giải pháp có bộ nhớ thấp và yêu cầu năng lượng thấp, và có thể được thực hiện trong phần sụn.
Cách nhận ổ đĩa được định dạng với exfat hoạt động (trong Ubuntu)
và dòng lệnh này để cài đặt hỗ trợ [đọc / ghi] cho exFAT trong Ubuntu
sudo apt-get install exfat-utils exfat-fuse
Có thể được tạo trong Windows và MacOS và trong Linux với dòng lệnh sau
sudo mkfs.exfat -n YOUR-LABEL /dev/sdxi
nơi x
là ký tự ổ đĩa và i
là số phân vùng, ví dụ /dev/sdb1
.
Có thể được duy trì trong Windows.
Kết quả kiểm tra đầu tiên của tôi :
md5sum
và tốc độ bị giới hạn bởi hệ thống USB).Vì vậy, nếu bạn muốn truy cập đọc / ghi đầy đủ từ Ubuntu và Windows, tôi khuyên bạn nên sử dụng NTFS , có ghi nhật ký và rất được gỡ lỗi và đánh bóng là hệ thống tệp [độc quyền] cho Windows. (Cũng có thể sử dụng exFAT .)
gparted
để tạo một hệ thống tệp NTFS.Trong MacOS, có thể sử dụng FAT32 , UDF và exFAT .
Bạn cũng có thể sử dụng ext4 với một cách giải quyết, Máy chủ Ubuntu với máy chủ SSH trong máy ảo . (Tôi nghĩ cách giải quyết tương tự cũng sẽ hoạt động với Windows.) Điều này có thể đáng giá khi bạn có ý định truy cập nhiều tệp qua ổ đĩa và hệ thống tệp của nó, nhưng có lẽ không phải với một ổ USB2 nhỏ.
Xem liên kết này,
Có một vấn đề tương tự và không muốn định dạng lại thanh USB, tôi chỉ sử dụng một bộ lưu trữ. Nhiều hơn hoặc ít hơn tất cả các GUI hiện đại (như Con lăn tệp, 7Zip, v.v.) hoặc CLI cho phép chia nhỏ tệp lưu trữ. Đặt giới hạn phân chia bên dưới ranh giới FAT (có phần 4GB), để đạt tốc độ, bạn có thể chọn tốc độ nén thấp, thậm chí là "lưu trữ", tức là không nén chút nào, một voila!
Nếu bạn có quyền truy cập vào máy Windows, bạn có thể chuyển đổi hệ thống tệp dính USB mà không cần định dạng. Bạn nên sử dụng dòng lệnh Windows như sau: nhấn Win + R
, gõ cmd
-> OK
, trong cửa sổ mở, nhập lệnh convert X: /FS:ntfs
trong đó X:
chữ cái cho thanh USB được gắn của bạn. Trong vòng chưa đầy một phút, nó đã sẵn sàng. Thưởng thức.
Định dạng lại hoặc sử dụng phân tách là các tùy chọn tuyệt vời hoặc bạn có thể thử sử dụng zip để nén tệp, chỉ cần biết rằng một số tệp đã được nén, do đó, nén chúng sẽ làm cho chúng lớn hơn. (Ngoài ra, bạn có thể mất quyền sở hữu tệp, dấu thời gian, v.v.)