Versi 1.0
Penulis:Srijan Kishore
Tutorial ini akan membantu Anda memulihkan data dari data yang terhapus secara tidak sengaja dari sistem file Linux. Ini adalah kesalahan yang sangat drastis oleh pengguna/admin mana pun yang membutuhkan penalti besar. Script ini akan menjadi keuntungan bagi pemula/ahli untuk manajemen data. Saya akan menggunakan TestDisk untuk pemulihan data. Di sini saya telah menyederhanakan tugas dengan bantuan skrip.
1. Latar belakang
TestDisk adalah perangkat lunak pemulihan data gratis yang kuat. Misalkan Anda memiliki drive ext3/ext4 yang mogok/dihapus dengan rm -rf atau shift+delete seperti perintah, dengan bantuan TestDisk Anda dapat memulihkan data/file.TestDisk dapat digunakan untuk
- Perbaiki tabel partisi
- Membatalkan penghapusan file dari partisi FAT, exFAT, NTFS, dan ext2/ext3/ext4
Selain fungsi-fungsi ini, TesdDisk memiliki beberapa fungsi untuk pemeliharaan/pengelolaan data
2. Persyaratan
Saya menggunakan Ubuntu12.04 LTS tempat saya akan menginstal TestDisk &mengimplementasikan skrip pemulihan data pada drive yang macet. Skrip ini berfungsi dengan baik dengan OS Ubuntu. Bahkan jika ada harddisk yang terhapus, sambungkan saja harddisk dengan mesin ubuntu &jalankan skrip untuk memulihkan data.3. Skrip
#!/bin/bash
#######################################################################################################
#######################################################################################################
#######################################################################################################
###### #######
###### #######
###### This script will help you to recover the accidentally #######
###### deleted data from crashed linux file systems #######
###### Script created by (Srijan Kishore) #######
###### #######
###### #######
#######################################################################################################
#######################################################################################################
#######################################################################################################
# User Check
if [ "$USER" = 'root' ]
then
gdialog --title "User Check" --msgbox "User is root, you can execute the script successfully." 200 150
echo "User is root, you can execute the script successfully"
else
gdialog --title "User Check" --msgbox "User is not Root. Please run the script as root user." 200 150
echo "User is not Root. Please run the script as root user."
exit 1
fi
# Check your operating system
cat /etc/debian_version >> /dev/null
if [ "$?" = 0 ]
then
echo "You are using ubuntu/debian"
gdialog --title "Your Operating System" --msgbox "You are using ubuntu/debian"
else
gdialog --title "Your Operating System" --msgbox "You are not using debian/ubuntu.You can download the TestDisk from this link http://www.cgsecurity.org/wiki/TestDisk_Download"
echo "You are not using debian/ubuntu. You can download the TestDisk from this link http://www.cgsecurity.org/wiki/TestDisk_Download"
fi
# Installing Testdisk
testdisk /version >> /dev/null
if [ "$?" = 0 ]
then
echo "Testdisk already installed"
else
echo "Installing Testdisk"
apt-get update
apt-get upgrade
apt-get --force-yes -y install testdisk
gdialog --title "Success" --msgbox "Testdisk installed successfully" 100 50
fi
# Set backup directory
mkdir -p /root/result/lostfiles
#Run the recovery program
photorec /d /root/result/lostfiles
# Filters files
user=`ps aux | grep gnome-session | grep -v grep | head -1 | cut -d " " -f1`
mkdir "/home/$user/recovered_output"
mkdir "/home/$user/recovered_output/Debians"
mkdir "/home/$user/recovered_output/rpms"
mkdir "/home/$user/recovered_output/conf_files"
mkdir "/home/$user/recovered_output/exe"
mkdir "/home/$user/recovered_output/binaries"
mkdir "/home/$user/recovered_output/Docs"
mkdir "/home/$user/recovered_output/Pdfs"
mkdir "/home/$user/recovered_output/Mbox"
mkdir "/home/$user/recovered_output/Images"
mkdir "/home/$user/recovered_output/Videos"
mkdir "/home/$user/recovered_output/Sound"
mkdir "/home/$user/recovered_output/ISO"
mkdir "/home/$user/recovered_output/Excel"
mkdir "/home/$user/recovered_output/Presentation"
mkdir "/home/$user/recovered_output/Web_Files"
mkdir "/home/$user/recovered_output/Archives"
mkdir "/home/$user/recovered_output/Others"
#Sorting the Recovered data
find /root/result/ -name "*.doc" -type f -exec mv {} "/home/$user/recovered_output/Docs/" \;
find /root/result/ -name "*.docx" -type f -exec mv {} "/home/$user/recovered_output/Docs/" \;
find /root/result/ -name "*.odt" -type f -exec mv {} "/home/$user/recovered_output/Docs/" \;
find /root/result/ -name "*.pdf" -type f -exec mv {} "/home/$user/recovered_output/Pdfs/" \;
find /root/result/ -name "*.mbox" -type f -exec mv {} "/home/$user/recovered_output/Mbox/" \;
find /root/result/ -name "*.png" -type f -exec mv {} "/home/$user/recovered_output/Images/" \;
find /root/result/ -name "*.jpg" -type f -exec mv {} "/home/$user/recovered_output/Images/" \;
find /root/result/ -name "*.jpeg" -type f -exec mv {} "/home/$user/recovered_output/Images/" \;
find /root/result/ -name "*.gif" -type f -exec mv {} "/home/$user/recovered_output/Images/" \;
find /root/result/ -name "*.avi" -type f -exec mv {} "/home/$user/recovered_output/Videos/" \;
find /root/result/ -name "*.mpeg" -type f -exec mv {} "/home/$user/recovered_output/Videos/" \;
find /root/result/ -name "*.mp4" -type f -exec mv {} "/home/$user/recovered_output/Videos/" \;
find /root/result/ -name "*.mkv" -type f -exec mv {} "/home/$user/recovered_output/Videos/" \;
find /root/result/ -name "*.webm" -type f -exec mv {} "/home/$user/recovered_output/Videos/" \;
find /root/result/ -name "*.wmv" -type f -exec mv {} "/home/$user/recovered_output/Videos/" \;
find /root/result/ -name "*.flv" -type f -exec mv {} "/home/$user/recovered_output/Videos/" \;
find /root/result/ -name "*.mp3" -type f -exec mv {} "/home/$user/recovered_output/Sound/" \;
find /root/result/ -name "*.wav" -type f -exec mv {} "/home/$user/recovered_output/Sound/" \;
find /root/result/ -name "*.deb" -type f -exec mv {} "/home/$user/recovered_output/Debians/" \;
find /root/result/ -name "*.bin" -type f -exec mv {} "/home/$user/recovered_output/binaries/" \;
find /root/result/ -name "*.exe" -type f -exec mv {} "/home/$user/recovered_output/exe/" \;
find /root/result/ -name "*.rpm" -type f -exec mv {} "/home/$user/recovered_output/rpms/" \;
find /root/result/ -name "*.conf" -type f -exec mv {} "/home/$user/recovered_output/conf_files" \;
find /root/result/ -name "*.iso" -type f -exec mv {} "/home/$user/recovered_output/ISO/" \;
find /root/result/ -name "*.xls" -type f -exec mv {} "/home/$user/recovered_output/Excel/" \;
find /root/result/ -name "*.xlsx" -type f -exec mv {} "/home/$user/recovered_output/Excel/" \;
find /root/result/ -name "*.csv" -type f -exec mv {} "/home/$user/recovered_output/Excel/" \;
find /root/result/ -name "*.ods" -type f -exec mv {} "/home/$user/recovered_output/Excel/" \;
find /root/result/ -name "*.ppt" -type f -exec mv {} "/home/$user/recovered_output/Presentation/" \;
find /root/result/ -name "*.pptx" -type f -exec mv {} "/home/$user/recovered_output/Presentation/" \;
find /root/result/ -name "*.odp" -type f -exec mv {} "/home/$user/recovered_output/Presentation/" \;
find /root/result/ -name "*.html" -type f -exec mv {} "/home/$user/recovered_output/Web_Files/" \;
find /root/result/ -name "*.htm" -type f -exec mv {} "/home/$user/recovered_output/Web_Files/" \;
find /root/result/ -name "*.jsp" -type f -exec mv {} "/home/$user/recovered_output/Web_Files/" \;
find /root/result/ -name "*.xml" -type f -exec mv {} "/home/$user/recovered_output/Web_Files/" \;
find /root/result/ -name "*.css" -type f -exec mv {} "/home/$user/recovered_output/Web_Files/" \;
find /root/result/ -name "*.js" -type f -exec mv {} "/home/$user/recovered_output/Web_Files/" \;
find /root/result/ -name "*.zip" -type f -exec mv {} "/home/$user/recovered_output/Archives/" \;
find /root/result/ -name "*.tar" -type f -exec mv {} "/home/$user/recovered_output/Archives/" \;
find /root/result/ -name "*.rar" -type f -exec mv {} "/home/$user/recovered_output/Archives/" \;
find /root/result/ -name "*.gzip" -type f -exec mv {} "/home/$user/recovered_output/Archives/" \;
find /root/result/ -name "*.tar.gz" -type f -exec mv {} "/home/$user/recovered_output/Archives/" \;
find /root/result/ -name "*.7z" -type f -exec mv {} "/home/$user/recovered_output/Archives/" \;
find /root/result/ -name "*.bz" -type f -exec mv {} "/home/$user/recovered_output/Archives/" \;
find /root/result/ -name "*.bz2" -type f -exec mv {} "/home/$user/recovered_output/Archives" \;
find /root/result/ -name "*.*" -type f -exec mv {} "/home/$user/recovered_output/Others/" \;
chown -R $user "/home/$user/recovered_output"
zenity --display :0 --info --width=350 --height=100 --title "Recovery Successful" --text " Data has been recovered successfully in recovered_output folder in your home directory."
nautilus /home/$user/recovered_output &
exit 0
4. Eksekusi Skrip
Cukup salin skrip di atas &tempel di file yaitu. script.sh &berikan izin eksekusi ke skrip.
chmod +x script.sh
Catatan:Silahkan jalankan script dengan root dengan menggunakan perintah
sudo -i #### Masukkan sandi login sistem Anda##########
Jalankan skrip &itu akan memandu Anda lebih jauh.
sh script.sh
5. Finalisasi
Skrip pertama akan mengkonfirmasi apakah pengguna yang menjalankan skrip adalah root, kemudian akan memeriksa instalasi alat TestDisk. Ini akan mengarahkan Anda ke halaman pemilihan drive untuk pemulihan data.

Pilih drive yang ingin Anda pulihkan.

Pilih sistem filenya.

Tekan enter untuk melanjutkan.

Setelah Penyelesaian pemulihan itu akan menunjukkan jumlah file pulih.

Keluar dari alat TestDisk sebagai berikut.


Script akan muncul untuk pesan sukses.


Selamat Anda telah memulihkan data Anda.