batalkan penghapusan file pada ext4

11

Ibu saya telah menempatkan beberapa file penting pada / tmp per kecelakaan. Sekarang, tentu saja, mereka pergi.

Ini terjadi kemarin (2 boot mesin sejak)

Saya ingin mencoba membatalkan penghapusan file. Mereka berada di / tmp, yang berada di partisi yang sama dengan sisa /, jadi saya memerlukan alat yang berjalan pada sistem yang terpasang (atau mungkin saya bisa menggunakan livecd ...)

Saat ini, saya mencoba testdisk pada systemrescuecd yang baru saja saya unduh. Saya bisa mendapatkan beberapa file dari / tmp, tetapi tidak semua. (apakah ini alat yang tepat? Apa sebenarnya file "merah" itu? hanya sebagian saja yang dapat dipulihkan?)

josinalvo
sumber

Jawaban:

14

Anda juga bisa menggunakan extundelete

Pertama, lepaskan ( umount) sistem file tempat file telah dihapus.
Kemudian baca bab Apa yang harus dilakukan jika Anda telah menghapus file .

Anda dapat menginstal extundeletedari repositori Ubuntu klasik:

sudo apt-get install extundelete

Atau lebih baik, Anda dapat mengunduh versi terbaru dan mengompilasinya:

cd ~/Download
tar -xf extundelete-*.*.*-.tar.bz2  #Replace *.*.* by the version
cd      extundelete-*.*.*
sudo apt-get install e2fslibs-dev   #Required for compilation
./configure
make
sudo make install
extundelete --version               #Should be your *.*.* version

Contoh penggunaan: kembalikan semua file yang dihapus dari direktori Imageske direktori yang baru dibuatrestore

sudo extundelete --restore-directory Images/ -o restore /dev/sda3

Berita buruk jika Anda melihat file Anda XXXXdalam format berikut:

Unable to restore inode NNN (Images/XXXX): Space has been reallocated.

Lihat semua file yang dipulihkan (cari file Anda):

find restore -name '*'

Cadangkan file Anda dan hapus direktori sementara ini restore

cp restore/Images/XXXX MY_BACKUP_DIRECTORY
sudo rm -rf restore  
olibre
sumber
3
Jawaban ini benar-benar baru saja menyelamatkan pekerjaan saya. Terima kasih.
Twifty
10

Pemulihan data, terutama pada sistem file EXT, harus dilakukan dari CD langsung atau sistem lain yang tidak tergantung pada partisi tempat Anda dihapus. Melepaskan disk atau dipasang kembali sebagai baca hanya membantu banyak dalam upaya pemulihan.

Sebagian besar waktu saya mencoba membuat gambar dari partisi atau disk menggunakan ddatau alat serupa, sehingga saya tidak bekerja pada disk itu sendiri:

dd if=/dev/sd[xx] of=/media/backup_drive/recovery.img

Setelah memiliki gambar Anda, Anda dapat menggunakan alat seperti ext3grepuntuk mencoba dan menemukan file yang Anda cari. Ada banyak saklar berbeda yang bisa Anda coba, tetapi ini mungkin awal yang baik:

ext3grep --restore-file 'tmp/moms-file.txt' recovery.img

The ext3greputilitas juga menyediakan beberapa cara berbeda untuk mencari melalui sistem file jika Anda tidak tahu nama file. Periksa ext3grep --helpberbagai metode pencarian.

Windigo
sumber
Akan lebih baik, jika Anda bisa menambahkan langkah yang tepat?
saji89
@ saji89 Menambahkan penggunaan sampel - juga tetap terhubung ke utilitas yang tepat!
Windigo
bagus. sekarang ... apakah itu bekerja dengan ext4?
josinalvo
1
@ josinalvo Saya bekerja dengan volume EXT4 ketika saya mencobanya, dan ternyata berhasil; tidak menemukan file yang saya cari, tetapi saya pikir saya telah melewatkan jendela peluang.
Windigo
0

Saya tidak dapat memulihkan file crontab saya dengan menggunakan ext4magic atau extundelete.

Di Debian, crontab untuk root ada di sini:

/var/spool/cron/crontabs/root

Tetapi, dengan menggunakan perintah berikut, saya dapat setidaknya memulihkan crontab secara manual dari log.

 grep CRON /var/log/syslog.* -i| awk -F " CMD " {'print $2;'} |sort | uniq

Ini akan menampilkan hanya pekerjaan cron yang dijalankan (tanpa timing), tetapi setidaknya ini lebih dari memulai dari awal.

Jika Anda tidak ingat seberapa sering pekerjaan cron tertentu dijalankan, ambil log lengkap mis. Syslog.1 dan ini akan memberi Anda hitungan untuk berjalan melalui hari:

grep CRON /var/log/syslog.1 -i| awk -F " CMD " {'print $2;'} |sort | uniq -c |sort -n
Ivan Tsukev
sumber
0

Menganalisis EXT

Parsing blok data untuk data direktori EXT.

Dokumentasi terperinci tentang EXT4 dapat ditemukan di sini:

Unduh skrip perl dengan

git clone https://github.com/halpomeranz/analyzeEXT

Tidak ada jaminan tetapi mungkin dapat merekonstruksi sistem file yang dihapus.

jouell
sumber
1
Apa sebenarnya alat ini? Bagaimana kamu menggunakannya? Saya sudah membaca deskripsi repo dan pesan bantuan dalam skrip , tetapi tidak ada banyak detail.
wjandrea
Melihat skrip perl; bantuan cli tidak cocok dengan skrip!
abu_bua
Lebih detail ada di sini. Saya sengaja menemukannya - tidak pernah menggunakannya! youtube.com/watch?v=6pzm6909IvY
jouell
@jouell Saya sudah menonton 2:30 video dan dia belum menyebutkan skripnya. Bisakah Anda mengedit jawaban Anda untuk menambahkan ringkasan singkat?
wjandrea