PDA

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : بازیابی اطلاعات در مواقع اضطراری اختلال کش سرور



hamed.ramzi
October 24th, 2014, 00:33
با سلام
خوب این آموزش بیشتر به کار هاستینگ ها میاد

خوب در بعضی مواقع در هاستینگ ها کاربران بر حسب اتفاقدر زمان بک اپ گیری فایل های از سرور حذف میکنند و بیا به خاطر اتفاقی ناگهانی اختلالاتی در کشس تبادل دیتا بین داده ها پیش میاد .

خوب برای مدیر سرور عموما بازیابی اختلالات اطلاعات بر روی هاستینگ زمانگیر و فشار آورنده به سیستم و زمانگیر هست .

خوب در اینجا ما با هم روشی اسان رو یاد میگیریم

قبل از هر چیز اکثرا testdisk را اپلیکیشنی برای تست و یا از بین بردن بد سکتور میشناسن.

اما تست دیسسک قابلیتهایی زیادی داره مانند بازیابی پارتیشن و ریکاوری دیتا ازبین بردن اختلالات بر حسب کش و ...

خوب نیازمندیهای این اموزش اپ های زیر هستند:

سیستم عامل : Redhat, CentOS and Fedora
اپلیکشن : testdisk


جهت سهولت کار عزیزان اسکریپتی اماده شده که نیاز اصلی شما رو برطرف میکنه و حالا اگر دوستانی اطلاعات کافی داشتند میتونند خودشون تغییرات گسترده تری بدن


ابتندا فایل اسکریپت را ایجاد میکنیم.




nano script.sh


حال اطلاعات زیر را وارد کنید



#!/bin/bash

# User Check

if [ "$USER" = 'root' ]
then

whiptail --title "User check" --msgbox "User is root, you can execute the script successfully." 8 78

echo "User is root, you can execute the script successfully"
else
whiptail --title "User check" --msgbox "User is not Root. Please run the script as root user." 8 78


echo "User is not Root. Please run the script as root user."
exit 1
fi


# Check your operating system

cat /etc/redhat-release >> /dev/null
if [ "$?" = 0 ]
then

whiptail --title "Your OS" --msgbox "You are using CentOS/Redhat/Fedora" 8 78
echo "You are using CentOS/Redhat/Fedora"

else

whiptail --title "Your OS" --msgbox "You are not using CentOS/Redhat/Fedora.You can download the TestDisk from this link http://www.cgsecurity.org/wiki/TestDisk_Download" 8 78

echo "You are not using CentOS/Redhat/Fedora.You can download the TestDisk from this link http://www.cgsecurity.org/wiki/TestDisk_Download"
exit 1
fi

#adding repo
ver=`cat /etc/redhat-release | cut -d " " -f3 | cut -d "." -f1`
ls -l /etc/yum.repos.d/rpmforge*

if [ "$?" != 0 ]

then
whiptail --title "Repository requirement" --msgbox "You need to add rpmforge repository to install testdisk" 8 78
if [[ `uname -i` = 'i386' && $ver = 6 ]]
then
echo "you are running i386 with 6 version"
yum install -y http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.i686.rpm
fi

if [[ `uname -i` = 'x86_64' && $ver = 6 ]]
then
echo "you are running i386 with 6 version"
yum install -y http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm
fi

if [[ `uname -i` = 'i386' && $ver = 5 ]]
then
echo "you are running i386 with 5 version"
yum install -y http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el5.rf.i386.rpm
fi

if [[ `uname -i` = 'x86_64' && $ver = 5 ]]
then
echo "you are running x86_64 with 5 version"
yum install -y http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el5.rf.x86_64.rpm
fi

if [[ `uname -i` = 'x86_64' && $ver = 4 ]]
then
echo "you are running i386 with 4 version"
yum install -y http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el4.rf.i386.rpm
fi

if [[ `uname -i` = 'x86_64' && $ver = 4 ]]
then
echo "you are running x86_64 with 4 version"
yum install -y http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el4.rf.x86_64.rpm
fi
else
whiptail --title "Repository requirement" --msgbox "You already have TestDisk repos configured" 8 78
echo "You already have TestDisk repos configured"
fi


# TestDisk installation
testdisk --version >> /dev/null
if [ "$?" = 0 ]
then
whiptail --title "Info" --msgbox "Testdisk already installed" 8 78
echo "Testdisk already installed"
else
whiptail --title "Info" --msgbox "Testdisk not installed, installing Testdisk" 8 78
echo "Testdisk not installed, installing Testdisk"

yum install -y testdisk
fi


#Recovery part of deleted files


ls -l /root/result/lostfiles
if [ $? != 0 ]
then
mkdir -p /root/result/lostfiles
whiptail --title "Data recovery" --msgbox "You are proceeding towards recovering the data from the lost drive. Please select the affected drive to get the data recovered" 8 78
photorec /d /root/result/lostfiles

else
whiptail --title "Folder Exists" --msgbox "There is already an existing folder viz /root/result/lostfiles, you are adviced to rename/remove the folder to allow the data recovery process" 8 78
exit 2
fi

#File filtering

user=`ps aux | grep gnome-session | grep -v grep | head -1 | cut -d " " -f1`
mkdir "/home/recovered_output"
mkdir "/home/recovered_output/Debians"
mkdir "/home/recovered_output/rpms"
mkdir "/home/recovered_output/conf_files"
mkdir "/home/recovered_output/exe"
mkdir "/home/recovered_output/binaries"
mkdir "/home/recovered_output/Docs"
mkdir "/home/recovered_output/Pdfs"
mkdir "/home/recovered_output/Mbox"
mkdir "/home/recovered_output/Images"
mkdir "/home/recovered_output/Videos"
mkdir "/home/recovered_output/Sound"
mkdir "/home/recovered_output/ISO"
mkdir "/home/recovered_output/Excel"
mkdir "/home/recovered_output/Presentation"
mkdir "/home/recovered_output/Web_Files"
mkdir "/home/recovered_output/Archives"
mkdir "/home/recovered_output/Others"


#Sorting the Recovered data


find /root/result/ -name "*.doc" -type f -exec mv {} "/home/recovered_output/Docs/" \;
find /root/result/ -name "*.docx" -type f -exec mv {} "/home/recovered_output/Docs/" \;
find /root/result/ -name "*.odt" -type f -exec mv {} "/home/recovered_output/Docs/" \;
find /root/result/ -name "*.pdf" -type f -exec mv {} "/home/recovered_output/Pdfs/" \;
find /root/result/ -name "*.mbox" -type f -exec mv {} "/home/recovered_output/Mbox/" \;
find /root/result/ -name "*.png" -type f -exec mv {} "/home/recovered_output/Images/" \;
find /root/result/ -name "*.jpg" -type f -exec mv {} "/home/recovered_output/Images/" \;
find /root/result/ -name "*.jpeg" -type f -exec mv {} "/home/recovered_output/Images/" \;
find /root/result/ -name "*.gif" -type f -exec mv {} "/home/recovered_output/Images/" \;
find /root/result/ -name "*.avi" -type f -exec mv {} "/home/recovered_output/Videos/" \;
find /root/result/ -name "*.mpeg" -type f -exec mv {} "/home/recovered_output/Videos/" \;
find /root/result/ -name "*.mp4" -type f -exec mv {} "/home/recovered_output/Videos/" \;
find /root/result/ -name "*.mkv" -type f -exec mv {} "/home/recovered_output/Videos/" \;
find /root/result/ -name "*.webm" -type f -exec mv {} "/home/recovered_output/Videos/" \;
find /root/result/ -name "*.wmv" -type f -exec mv {} "/home/recovered_output/Videos/" \;
find /root/result/ -name "*.flv" -type f -exec mv {} "/home/recovered_output/Videos/" \;
find /root/result/ -name "*.mp3" -type f -exec mv {} "/home/recovered_output/Sound/" \;
find /root/result/ -name "*.wav" -type f -exec mv {} "/home/recovered_output/Sound/" \;
find /root/result/ -name "*.deb" -type f -exec mv {} "/home/recovered_output/Debians/" \;
find /root/result/ -name "*.bin" -type f -exec mv {} "/home/recovered_output/binaries/" \;
find /root/result/ -name "*.exe" -type f -exec mv {} "/home/recovered_output/exe/" \;
find /root/result/ -name "*.rpm" -type f -exec mv {} "/home/recovered_output/rpms/" \;
find /root/result/ -name "*.conf" -type f -exec mv {} "/home/recovered_output/conf_files" \;
find /root/result/ -name "*.iso" -type f -exec mv {} "/home/recovered_output/ISO/" \;
find /root/result/ -name "*.xls" -type f -exec mv {} "/home/recovered_output/Excel/" \;
find /root/result/ -name "*.xlsx" -type f -exec mv {} "/home/recovered_output/Excel/" \;
find /root/result/ -name "*.csv" -type f -exec mv {} "/home/recovered_output/Excel/" \;
find /root/result/ -name "*.ods" -type f -exec mv {} "/home/recovered_output/Excel/" \;
find /root/result/ -name "*.ppt" -type f -exec mv {} "/home/recovered_output/Presentation/" \;
find /root/result/ -name "*.pptx" -type f -exec mv {} "/home/recovered_output/Presentation/" \;
find /root/result/ -name "*.odp" -type f -exec mv {} "/home/recovered_output/Presentation/" \;
find /root/result/ -name "*.html" -type f -exec mv {} "/home/recovered_output/Web_Files/" \;
find /root/result/ -name "*.htm" -type f -exec mv {} "/home/recovered_output/Web_Files/" \;
find /root/result/ -name "*.jsp" -type f -exec mv {} "/home/recovered_output/Web_Files/" \;
find /root/result/ -name "*.xml" -type f -exec mv {} "/home/recovered_output/Web_Files/" \;
find /root/result/ -name "*.css" -type f -exec mv {} "/home/recovered_output/Web_Files/" \;
find /root/result/ -name "*.js" -type f -exec mv {} "/home/recovered_output/Web_Files/" \;
find /root/result/ -name "*.zip" -type f -exec mv {} "/home/recovered_output/Archives/" \;
find /root/result/ -name "*.tar" -type f -exec mv {} "/home/recovered_output/Archives/" \;
find /root/result/ -name "*.rar" -type f -exec mv {} "/home/recovered_output/Archives/" \;
find /root/result/ -name "*.gzip" -type f -exec mv {} "/home/recovered_output/Archives/" \;
find /root/result/ -name "*.tar.gz" -type f -exec mv {} "/home/recovered_output/Archives/" \;
find /root/result/ -name "*.7z" -type f -exec mv {} "/home/recovered_output/Archives/" \;
find /root/result/ -name "*.bz" -type f -exec mv {} "/home/recovered_output/Archives/" \;
find /root/result/ -name "*.bz2" -type f -exec mv {} "/home/recovered_output/Archives" \;
find /root/result/ -name "*.*" -type f -exec mv {} "/home/recovered_output/Others/" \;

#Finalization
whiptail --title "Congratulations" --msgbox "You have successfully recovered your data in folder /home/recovered_output cheers :)" 8 78
echo "You have successfully recovered your data in folder /home/recovered_output cheers :)"
exit 0



تنظیم سطح دسترسی



chmod +x script.sh




جهت اجرای اسکریپت نیاز به کاربر ریشه هست یعنی root



su -


حال اسکریپت رو اجرا میکنیم



sh script.sh




مرحله اول تایید دسترسی روت هست که اینتر میزنید

http://image.aryan-translators.ir/images/1dqd.png

مرحله دوم تایید سیستم عامل هست و اینتر

http://image.aryan-translators.ir/images/2djd.png

مرحله سوم بررسی اسکریپت به طور خودکار برای اضافه نمودن منابع مورد نیاز برای TestDisk. هست.

http://image.aryan-translators.ir/images/3cnc.png


http://image.aryan-translators.ir/images/4rcr.png

http://image.aryan-translators.ir/images/5jgj.png

مرحله چهارم انتخاب درایو برای ریکاوری هست

http://image.aryan-translators.ir/images/6wsw.png


http://image.aryan-translators.ir/images/7fff.png

http://image.aryan-translators.ir/images/8dnd.png

http://image.aryan-translators.ir/images/10gfg.png


مرحله آخر شما فقط بعد از اتمام بررسی از برنامه خارج شید

http://image.aryan-translators.ir/images/11ixi.png

http://image.aryan-translators.ir/images/12.png

http://image.aryan-translators.ir/images/13.png


خوب تمام اطلاعات شما بازیابی و ترمیم شدند.