Đầu tiên, lưu ý rằng Kích thước khối thiết bị khác với kích thước khối được sử dụng bởi hệ thống tệp. Giá trị trước đây được báo cáo bởi Diskutil đề cập đến kích thước khối thô được sử dụng bởi phần cứng. Tôi chưa tìm thấy một cách dễ dàng để kiểm tra giá trị sau bằng dòng lệnh, nhưng bạn chỉ cần tạo một tệp 0 byte sau đó thực hiện Nhận thông tin từ Finder. Nó sẽ nói 0 byte, nhưng 4k được sử dụng trên đĩa.
Thứ hai, bạn có thể tạo một hệ thống tệp HFS + với kích thước khối lớn hơn 4k bằng chương trình dòng lệnh newfs_hfs
. Cách dễ nhất là sử dụng Disk Utility để phân vùng ổ đĩa và tạo phân vùng với định dạng mặc định, sau đó sử dụng /bin/df
để xác định thiết bị khối (chỉ một ví dụ /dev/disk0s2
:). Sau đó ngắt kết nối phân vùng đó (sử dụng umount /dev/diskXXX
hoặc Disk Utility) và định dạng lại thành HFS + với các khối 64k:
newfs_hfs -v VolumeName -b 65536 /dev/disk0s2
Sử dụng mẹo Nhận thông tin ở trên để xác minh rằng một tệp nhỏ hiện chiếm 64k trên đĩa (có thể là 65 nghìn cho đơn vị quyền hạn 10).
Hiệu suất là lý do chính mà bạn có thể muốn làm điều này, nếu hầu hết dữ liệu được lưu trữ là các tệp lớn (như tệp MP3, ảnh, video, tệp .zip, v.v.) và nó cũng giúp giảm phân mảnh đĩa. Rõ ràng đừng bận tâm nếu bạn có kế hoạch lưu trữ hầu hết các tệp nhỏ.
Tôi đã thấy rằng trên các ổ đĩa lớn (> 1 TB) được định dạng là HFS với kích thước khối 4k mặc định, khi ổ đĩa gần hết dung lượng, hiệu suất ghi bị suy giảm khủng khiếp. Tôi đoán đó là do phân vùng bị phân mảnh và phải tìm và mổ các khối miễn phí để ghi ra 1% dữ liệu cuối cùng. Tôi hy vọng rằng kích thước khối lớn hơn sẽ giảm bớt vấn đề này.