Menghapus Byte Terakhir (Sengaja Membuat Korup) Suatu Berkas ISO

Bismillahirrahmanirrahim.

Tujuan menghapusan byte dari suatu berkas ISO adalah supaya saya dapat memperagakan bagaimana memperbaiki berkas ISO korup dengan BitTorrent.

Versi Gambar


penelitian-korup-file

penelitian-korup-file1

Versi Teks



┌─[master@master]─[/tmp]
└──╼ head -c -2 --verbose ubuntu-12.04-desktop-i386.iso > ubuntu-12.04-desktop-i386-korup.iso
^C
┌─[✗]─[master@master]─[/tmp]
└──╼ head -c -2 ubuntu-12.04-desktop-i386.iso > ubuntu-12.04-desktop-i386-korup.iso
┌─[master@master]─[/tmp]
└──╼ md5
md5pass           md5sum            md5sum.textutils
┌─[master@master]─[/tmp]
└──╼ md5sum ubuntu-12.04-desktop-i386.iso
d791352694374f1c478779f7f4447a3f  ubuntu-12.04-desktop-i386.iso
┌─[master@master]─[/tmp]
└──╼ md5sum ubuntu-12.04-desktop-i386-korup.iso
25d7a79813dabb7db29bd8afbd68b0db  ubuntu-12.04-desktop-i386-korup.iso
┌─[master@master]─[/tmp]
└──╼ ls -lah ubuntu*
-rw-rw-r-- 1 master master 702M Apr 27  2012 ubuntu-12.04-desktop-i386.iso
-rw-rw-r-- 1 master master 702M Feb 18 18:58 ubuntu-12.04-desktop-i386-korup.iso
┌─[master@master]─[/tmp]
└──╼ ls -la ubuntu*
-rw-rw-r-- 1 master master 735358976 Apr 27  2012 ubuntu-12.04-desktop-i386.iso
-rw-rw-r-- 1 master master 735358974 Feb 18 18:58 ubuntu-12.04-desktop-i386-korup.iso
┌─[master@master]─[/tmp]
└──╼ ls -las ubuntu*
718128 -rw-rw-r-- 1 master master 735358976 Apr 27  2012 ubuntu-12.04-desktop-i386.iso
718128 -rw-rw-r-- 1 master master 735358974 Feb 18 18:58 ubuntu-12.04-desktop-i386-korup.iso

Alur Kerja


  1. Lakukan penyalinan data ke buffer dengan head kecuali 2 byte paling akhir. Ini dilakukan dengan head -c -2.
  2. Redirect ke berkas baru dengan ekstensi .iso.
  3. Berkas ISO yang sama tetapi korup tercipta.

Hasil


Tercipta satu berkas ISO dengan nama ubuntu-12.04-desktop-i386-korup.iso dengan hash MD5 berbeda dengan ISO aslinya (telah dipastikan valid dengan MD5SUM Hash resmi). Perbedaan ukuran berkasnya 735358976 byte (asli) dan 735358974 byte (korup). Berbeda tepat 2 byte sesuai angka -2 pada head -c. Masya Allah.

Komentar


Alur kerja yang saya temukan ini bukan yang paling efisien karena masih ada redirecting. Sebetulnya saya ingin seperti pembuat virus di Windows yang mampu menghapus sebagian isi berkas (membuat korup) hanya dalam satu kali kerja. Namun sementara ini sudah cukup karena tujuan tersebut di atas. GNU head (sebetulnya saya juga mencoba GNU dd sebelumnya) telah sangat baik melakukan ini. Implementasi GNU tail, GNU truncate, dan perl pun masih ada dan saya belum mencoba semuanya.

Referensi


http://www.quora.com/How-do-I-chop-off-just-the-last-byte-of-a-file-in-Bash

Iklan

Dilarang menggunakan emotikon

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s