Pertanyaan undelete file pada ext4


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

Ini terjadi kemarin (2 bot mesin sejak saat itu)

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 beberapa yang dapat dipulihkan?)


10
2017-11-15 14:01


asal




Jawaban:


Anda juga bisa menggunakan extundelete

Unmount pertama (umount) sistem file tempat file telah dihapus.
Kemudian baca bab Apa yang harus dilakukan jika Anda telah menghapus file.

Anda dapat menginstal extundelete dari repositori klasik Ubuntu:

sudo apt-get install extundelete

Atau lebih baik, Anda bisa mengunduh versi terbaru dan kompilasi:

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: mengembalikan semua file yang terhapus dari direktori Images ke direktori yang baru dibuat restore

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

Berita buruk jika Anda melihat file Anda XXXX dalam 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  

13
2017-07-08 23:20



Jawaban ini benar-benar baru saja menyelamatkan pekerjaanku. Terima kasih. - Twifty


Pemulihan data, terutama pada sistem file EXT, harus dicoba dari live CD atau sistem lain yang tidak tergantung pada partisi yang Anda batalkan. Mendapatkan disk yang dilepas atau dipasang kembali karena hanya membantu dalam upaya pemulihan.

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

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

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

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

Itu ext3grep utilitas juga menyediakan beberapa cara berbeda untuk mencari melalui sistem file jika Anda tidak tahu nama file tersebut. Memeriksa ext3grep --help untuk berbagai metode pencarian.


9
2017-11-15 14:57



Akan lebih baik, jika Anda dapat menambahkan langkah-langkah yang tepat? - saji89
@ saji89 Menambahkan penggunaan sampel - juga diperbaiki untuk menautkan ke utilitas yang tepat! - Windigo
bagus. sekarang ... apakah itu bekerja dengan ext4? - josinalvo
@josinalvo Saya bekerja dengan volume EXT4 ketika saya mencobanya, dan berhasil; tidak menemukan file yang saya cari, tapi saya pikir saya telah kehilangan jendela peluang. - Windigo


Saya lebih suka menggunakan ext4magic sebagai:

sudo ext4magic  /dev/sdc3 -r -f $USERl/Documents/ -d /tmp/local/tmp/

Perhatikan bahwa Anda harus menyelesaikan symlink oleh Anda sendiri

Referensi:

http://sourceforge.net/projects/ext4magic/

http://rzr.online.fr/q/recover


4
2018-04-13 09:01





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

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

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

Ini akan menampilkan hanya pekerjaan cron yang dieksekusi (tidak ada pengaturan waktu), tetapi setidaknya ini lebih banyak daripada memulai dari awal.

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

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

0
2017-08-08 15:59





 AnalyzeEXT

Mengurai blok data untuk data direktori EXT.

Dokumentasi rinci tentang EXT4 dapat ditemukan di sini:

Unduh skrip perl dengan

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

Tidak ada jaminan tetapi mungkin dapat merekonstruksi filesystem yang dihapus.


0
2017-08-26 18:23



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