Esen!
Bu yazıya kadar geldiyseniz siz de ayırdındasınız ki bazen bir belleği biçimlendirmek(formatlamak) yeterli değildir. Gönül istiyorki; öyle bir silinsin veriler, geri getirilemesin. Dosyalarımızın nasıl geri getirildiğini anlarsak eğer, bu yapacağımız işlemin önemini daha iyi kavrarırız.
Şimdi 1GB’lık film dosyanızı bilgisayarınızdan USB’ye attığınızı düşünün. Ne kadar sürdü? Şimdi de aynı dosyayı sildiğinizi düşünün; ne kadar sürdü? Aralarında ciddi bir zaman farkı var. Çünkü işletim sistemleri zamandan kazanmak ve daha verimli çalışma şartları sunmak amacıyla dosyaları diskinizden gerçekte silmezler.
İşletim sistemleri harddiskleri kendi anlayabilecekleri ve yönetebilecekleri şekilde biçimlendirdikten sonra; hdd’ye yazılan dosyalar için bir tablo oluştururlar ve bu tabloda dosyanın adı ve hangi konum(lar)da oldukları gibi bilgileri saklarlar. Bir silme işlemi yaptığınız zaman aslında bu dosyanın bilgilerinin tutulduğu tablo silinir. Oysa depolama biriminiz üzerindeki sildiğinizi sandığınız dosyanın sayısal verileri durmaktadır.
İşte “recovery” yazılımları bunu bildiklerinden harddiskinizi dikkatlice inceleyerek bu kalıntıları ortaya çıkartır.
Bu şartlar altında biz verilerin geri getirilmemesini istiyorsak, bütün depolama aygıtımıza bir, sıfır ya da “rastgele/random” veri yazdırabiliriz. Bu sayede “recovery” yazılımları bizim belleğimiden anlamlı herhangi bir veri çıkartamazlar.
DD
Bu işlemler için KALI Linux kullanacağım. Linuxlar ile birlikte gelen “dd” uygulaması da bize yardım edecek. Arkadaşlar dd adı kısa ama çok yararlı bir araç, belgelendirmesini mutlaka inceleyin.
Önce usb belleğimiz hangi sürüce atanmış öğrenelim bunun birkaç yolu var:
[email protected]:~# blkid /dev/sda1: UUID="f03e6e1e-273e-4b76-bafb-aae6ed3d0a56" TYPE="ext4" PARTUUID="f9fbdc32-01" /dev/sda5: UUID="522562d6-a9d6-51a7-b06d-9eac20174732" TYPE="swap" PARTUUID="f9fbdc32-05" /dev/sdb1: UUID="C7R2-UX1T" TYPE="vfat"
Bir başka yolu ise lsblk:
[email protected]:~# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 50G 0 disk ├─sda1 8:1 0 38G 0 part / ├─sda2 8:2 0 1K 0 part └─sda5 8:5 0 2G 0 part [SWAP] sdb 8:16 1 14.6G 0 disk └─sdb1 8:17 1 14.6G 0 part /media/root/C7R2-UX1T sr0 11:0 1 1024M 0 rom
Başka bir yol ise linux makinenizde fdisk -l komutu vermenizdir:
[email protected]:~# fdisk -l
Benim USBmin takıldığı yer /dev/sdb yoluymuş iki örnekten bunu öğrenebildim. TYPE=”vfat” özelliğine dikkat. “sda” ise ext4 ve swap alanıyla benim KALI makinem.
Şimdi ise dd uygulamasını terminalde çalıştıralım ve bütün usb belleğe 0 yazdıralım.
[email protected]:~# dd if=/dev/zero of=/dev/sdc bs=1k count=2048 2048+0 records in 2048+0 records out 2097152 bytes (2.1 MB, 2.0 MiB) copied, 0.900479 s, 2.3 MB/s
Tüm USB’yi sıfırlamak yerine dd’ye rastgele bir ve sıfırlar ile doldur da diyebiliriz. bunun içinde “if=/dev/zero” yerine “if=/dev/urandom” yazmalıyız:
[email protected]:~# dd if=/dev/urandom of=/dev/sdc bs=1k count=1024 1024+0 records in 1024+0 records out 1048576 bytes (1.0 MB, 1.0 MiB) copied, 0.608123 s, 1.7 MB/s
ÖNEMLİ NOT: blkid ve lsblk çıktılarında “sdb” olarak mount edilen USBmiz örneklerde “sdc” oldu. Sizde “sdd” ya da başka birşey olabilir bunu kasıtlı olarak değiştirdim. Lütfen işlemleri dikkatle yapınız.”Kök” kullanıcı olarak yaptığınız işlemler sonucunda geri dönülemez sonuçlarla karşılaşabilirsiniz.
SHRED
Bir diğer kalıcı silme yöntemi ise “SHRED” aracını kullanmaktır. Belgelendirmesini buradan inceleyebilirsiniz. Kullanacağımız komut aşağıdaki gibidir:
[email protected]:~# shred -f -n 5 -v /dev/sdc shred: /dev/sdc: pass 1/5 (random)... shred: /dev/sdc: pass 1/5 (random)...48MiB/15GiB 0% shred: /dev/sdc: pass 1/5 (random)...72MiB/15GiB 0% shred: /dev/sdc: pass 1/5 (random)...108MiB/15GiB 0% shred: /dev/sdc: pass 1/5 (random)...132MiB/15GiB 0% shred: /dev/sdc: pass 1/5 (random)...156MiB/15GiB 1% shred: /dev/sdc: pass 1/5 (random)...180MiB/15GiB 1% shred: /dev/sdc: pass 1/5 (random)...204MiB/15GiB 1% . . .
-f, –force :yazma izinlerinde takıldığında yazmaya zorla
-n, –iterations=N : kaç defa diske bir sıfır yazsın? Varsayılan değeri 3
-v, –verbose : ayrıntılı çıktı gösterir.
Parametreleri verdiğim belgelendirme bağlantısından ayrıntılı inceleyebilirsiniz.
Kali Linux’da sadece bu işlemi yapınca bazı makinelerde dosyalar gözükebiliyor ancak o dosyalar gerçekte orada değil. USBnizi çıkartıp yeniden takarsanız orada olmadıklarını görürsünüz. Hatta USBnizi Windows bir makineye takın hata alırsınız.
GPARTED
Şimdi de Gparted aracını kullanarak bu rastgele(ya da sadece sıfır) bitler ile doldurduğumuz USBmizi kullanılabilir hale getirelim.
0.Gparted aracını çalıştırın ve sağ üst taraftan makinenizin hard diskini değil USB belleğinizi seçin.
1.Mönüden “Device > Create Partition Table” tıklayın ve “msdos” seçin.
2. Hazırız. USBmizi temsil eden o uzun gri çubuğa sağ tıklayın ve “New” seçeneğini seçin. Zaten başka şeçenek yok ;)
3. Açılan pencereden Fat32’yi seçin. Böylece her makinede rahatlıkla kullanabilirsiniz. Eğer sadece Linux için USB yapacaksanız tabi ext4 seçebilirsiniz. Eğer OS X için biçimlendirecekseniz, o zaman bir OS X makinede USBnizi biçimlendirin.
4. Sola doğru olan bir ok işareti var ona tıklayarak da bu yağtığımız işlemlerin uygulanmasını sağlayın.
5. Tertemiz USBniz hayırlı olsun.
Buralarda hatam varsa affedin şu an saat 03:30. Yorumlarınızı her zaman beklerim. Eklemek istediğiniz ya da düzeltmek istediğiniz varsa. İyi geceler.
Ertesi gün notu: Arkadaşlar, çok geç olduğu için yazmayı unuttuğum bir konu var: “shred” komutu “dd” komutundan USB belleği sıfırlamak adına çok daha iyi çalışıyor. Ancak Melez ve “Tekrarlı” çalışma yapmak çok daha mantıklı. Yani hem “dd” komutuyla sıfırlamak ve random yazmak sonra bir kere biçimlendirmek, devamında “shred” ile silme işlemi yapmak belki 10 tekrar, daha kesin ve temiz sonuç verecektir.
Saygılar.
Comments of this post