Saat mencoba menghapus SSD dengan aman, kami memiliki beberapa masalah:
- SSD aus setelah siklus penghapusan yang terbatas
- SSD memiliki pengontrol yang secara dinamis memetakan LBAs (alamat blok logis yang digunakan oleh sistem untuk mengakses disk) ke sel NVRAM (sel memori flash aktual) untuk menyeimbangkan keausan, yang berarti memerintahkan disk untuk menimpa blok yang sebelumnya menyimpan spesifik file dapat mengakibatkan menimpa blok cadangan lainnya.
- SSD memiliki persentase kapasitas cadangan yang terkenal yang digunakan untuk mengkompensasi sel penyimpanan yang sekarat dan mengurangi pemakaian. Mereka tidak terlihat oleh sistem dan mungkin menyimpan fragmen data lama.
Sekarang pilihan apa yang kita miliki dari dalam Ubuntu untuk menghapus SSD dengan aman?
Saya telah mendengar bahwa beberapa SSD yang lebih baru seharusnya dapat menghapus sendiri dengan aman, tetapi bagaimana cara mengetahui apakah SSD saya mampu melakukan ini dan bagaimana saya memicunya?
Seharusnya juga ada perintah penghapusan aman ATA, bagaimana cara mengetahui apakah itu didukung dan bagaimana saya memicu itu?
Apakah ada juga cara untuk menghapus secara aman hanya file yang diberikan atau hanya ruang yang tidak digunakan?
Saya kira membuat cadangan semua partisi, dengan aman menyeka seluruh disk dan kemudian memulihkan cadangan mungkin dilakukan tetapi terdengar terlalu rumit dan akan terlalu lama untuk praktis. Apakah ada alternatif lain? Jika tidak, alat apa yang dapat saya gunakan untuk membuat cadangan partisi tanpa juga membuat cadangan file yang sudah dihapus?
Tentu saja alat standar suka shred
atau wipe
tidak dapat digunakan di sini untuk poin yang dijelaskan di atas. Mereka hanya menimpa file aa (dengan menimpa cluster sistem file yang terikat pada BBA yang tidak terus-menerus menunjuk pada sel flash yang sama karena pengontrol leveling aus).
sumber
Jawaban:
Saat ini tidak ada cara untuk menghapus file di SSD dengan aman tanpa menghapus konten seluruh drive atau akses ke firmware SSD.
Mustahil untuk mengetahui di mana SSD dapat menyimpan salinan blok logis sebelumnya.
Lebih buruk lagi, karena mekanisme penjurnalan dan copy-on-write dari sistem file mungkin tidak mungkin untuk mengetahui blok logis mana yang mungkin menyimpan salinan sebelumnya dari file tertentu.
Satu-satunya cara untuk mencegah kebocoran file yang terhapus ke seseorang dengan akses langsung ke drive adalah mengenkripsi mereka di tempat pertama dan menjaga kunci enkripsi tetap aman dari mata yang mengintip.
Tambahan:
Saya melakukan riset dan menemukan bahwa Anda dapat menyortir-menghapus semua file yang sebelumnya dihapus jika Anda berhasil mempelajari semua sektor yang tidak dihuni sistem file, yang secara umum mungkin dan ditawarkan oleh beberapa alat sistem file (misalnya untuk keluarga ext * ), dan kemudian membuangnya (misalnya dengan yang
blkdiscard(8)
dijabarkan dalam jawaban untuk pertanyaan terkait ), yang mengembalikan blok untuk pengumpulan sampah sampai digunakan kembali dan ditimpa dalam proses.Ini aman terhadap semua orang yang tidak dapat mengakses sel-sel flash secara langsung, demikian juga setiap orang yang
sumber
Cara termudah untuk menentukan apakah drive Anda mendukung penghapusan aman adalah dengan bertanya: Saya telah menggunakan / dev / sdX dalam contoh di bawah ini. Anda harus mengubahnya dengan hati-hati agar sesuai dengan perangkat yang bekerja dengan Anda:
Sumber:
https://ata.wiki.kernel.org/index.php/ATA_Secure_Erase
/superuser/1161531/how-to-un-freeze-drive-in-linux
Pada SSD saya ini menghasilkan:
Jika penghapusan aman didukung oleh perangkat Anda, memicu itu adalah proses 2 atau 3 langkah.
sudo hdparm -I /dev/sdX
mirip dengan ini:Buang beku dengan menangguhkan dan melanjutkan sistem Anda. Saya melakukan ini dengan perintah
sudo systemctl suspend
memindahkan pointer hingga sistem dilanjutkan.Anda harus menetapkan kata sandi untuk menggunakan penghapusan aman dalam hal ini saya menggunakan foobar sebagai kata sandi, Anda dapat menggunakan kata sandi tidak kosong apa pun yang Anda suka karena bersifat sementara.
sudo hdparm --user-master u --security-set-pass foobar /dev/sdX
Dengan set kata sandi Anda sekarang dapat menggunakannya untuk menghapus drive dengan aman:
sudo hdparm --user-master u --security-erase foobar /dev/sdX
Jika drive Anda mendukungnya dan Anda ingin, Anda dapat memilih untuk menggunakan penghapusan keamanan yang disempurnakan dengan:
sudo hdparm --user-master u --security-erase-enhanced foobar /dev/sdX
sumber