Menulis ke USB flash drive sepenuhnya terenkripsi di Mavericks sangat lambat.
Model drive yang saya gunakan untuk pengujian adalah Kingston DataTraveler Ultimate 3.0 G3 (64 GB). Saya menguji kecepatan transfer dengan membaca / menulis file besar dari / ke drive terenkripsi dan tidak terenkripsi. Saya menguji pada Macbook saat ini dengan Mavericks dan pada mesin yang lebih tua dengan Mountain Lion. Saya menggunakan Disk Utility untuk memformat drive sebagai Mac OS Extended (Journaled) dan Mac OS Extended (Journaled, Encrypted).
MacBook Pro (2013) dengan USB 3.0 yang menjalankan OS X 10.9.2 (13C64)
Tulis: 86,16 MB / detik (terenkripsi: 0,62 MB / detik)
Baca: 181,66 MB / detik (terenkripsi: 151,15 MB / detik)
MacBook Pro (2007) dengan USB 2.0 yang menjalankan OS X 10.8.5 (12F45)
Tulis: 23,57 MB / detik (terenkripsi: 5,04 MB / detik)
Baca: 36,23 MB / detik (terenkripsi: 37,87 MB / detik)
Seperti yang Anda lihat pada mesin lama, kecepatan tulis jelas menurun saat menulis ke volume terenkripsi tetapi masih sekitar sepuluh kali lebih cepat dibandingkan dengan mesin baru yang menjalankan Mavericks. Mungkinkah ini masalah yang baru diperkenalkan di FileVault atau CoreStorage?
Pembaruan (2014-06-28)
Drive USB tampaknya memiliki cacat perangkat keras sejak awal. Saya mendapatkan drive pengganti (model yang sama) yang masih belum memberikan hasil yang saya harapkan tetapi setidaknya kecepatan tulis terenkripsi dari MBP 2013 sekarang setara dengan MBP 2007.
MacBook Pro (2013) dengan USB 3.0 yang menjalankan OS X 10.9.3 (13D65)
Tulis: 135,41 MB / detik (terenkripsi: 9,29 MB / detik)
Baca: 196,22 MB / detik (terenkripsi: 187,04 MB / detik)
MacBook Pro (2007) dengan USB 2.0 yang menjalankan OS X 10.8.5 (12F45)
Tulis: - MB / dtk (dienkripsi: 9,39 MB / dtk)
Baca: - MB / dtk (dienkripsi: 37,79 MB / dtk)
Ini masih menyisakan pertanyaan mengapa kecepatan tulis terenkripsi ke drive USB pada MBP 2013 kurang dari sepuluh persen dari kecepatan tulis biasa. Saya juga membandingkan kecepatan baca / tulis sebelum dan sesudah mengaktifkan FileVault pada SSD internal MBP 2013 dan di sana saya tidak dapat mendeteksi perlambatan sama sekali.
time
,dd
danawk
. Blackmagic memberi saya hasil yang sama: goo.gl/bn32fC (tidak terenkripsi) vs goo.gl/yghyqA (terenkripsi).Jawaban:
Saya memiliki masalah yang sama, yang saya cukup yakin adalah karena kombinasi dari cara operasi tulis pada memori flash dan cara penyimpanan inti (atau volume keseluruhan) enkripsi bekerja.
Pertama, perilaku tulis: tidak seperti memori volatil (hal-hal yang digunakan dalam memori komputer Anda) atau hard disk, di mana bit dapat ditulis ke 0 atau 1 kapan saja, memori flash memiliki dua status utama: ditulis dan dihapus. Di dalam "tertulis" adalah 0 dan 1. Ketika Anda perlu menulis ke memori flash Anda harus menulis seluruh blok yang saat ini dalam keadaan terhapus. Perangkat lunak sistem file di OS mungkin tahu blok apa yang gratis, tetapi pengontrol dan penyimpanan pada perangkat flash tidak. Cara khusus untuk OS untuk memberi tahu SSD untuk membuat blok tersedia telah dirancang untuk SSD "terhubung dengan bus": itu disebut TRIM. Tumpukan protokol USB tidak, setahu saya, mendukung TRIM. Jadi, pada dasarnya, memori flash terus terisi hingga tidak ada blok terhapus yang sebenarnya, di mana sistem file harus menghapus dan menulis ulang blok dengan membacanya, menggabungkan data baru, menghapus, dan menuliskannya kembali. Itu sebabnya Anda melihat kinerja penulisan file kecil menurun pada SSD seiring waktu.
Keadaan khusus volume terenkripsi menarik: tergantung pada cara enkripsi bekerja, itu mungkin benar-benar mengenkripsi seluruh volume, mengisi semua blok dengan apa yang tampak sebagai data acak bahkan jika blok sebenarnya tidak digunakan dan akan mengandung angka nol. Jadi ketika Anda mengaktifkan FileVault (atau mengaktifkan enkripsi penyimpanan inti), pada dasarnya ia akan menghabiskan seluruh volume, sehingga tidak ada ruang untuk operasi penulisan. Sistem file harus terus-menerus membaca, menghapus, dan menulis ulang blok sehingga dapat menulis ulang dengan data terenkripsi yang ingin Anda masukkan ke dalamnya.
Sekarang saya akan mengatakan di sini bahwa ini adalah spekulasi berdasarkan pada pemahaman yang masuk akal tentang bagaimana hal-hal bekerja, tetapi ada orang yang benar-benar mengetahui detailnya, yang dapat memperbaiki atau meningkatkan penjelasan saya dan saya berharap mereka akan melakukannya.
sumber
hdiutil attach
, kemudian gunakanrsync
untuk menyinkronkan dengan folder lokal saya, lalu unmount bundel jarang denganhdiutil detach
dan mengeluarkan drive disk dengandiskutil eject
.