Silinen dosyalar nasıl kurtarılır?


121

Ubuntu'da yakın zamanda silinen dosyaları kurtarmak için herhangi bir araç, yöntem ve teşvik var mı?

Herhangi bir fark yaratırsa , Keepass 2.x veritabanı dosyasını kurtarmak istiyorum . Ancak, her tür dosya üzerinde çalışan bir yöntem / araca sahip olmak daha iyi olacaktır.


İlgili, ancak gerçekten bir kopyası yok: Terminalden silinen dosyalar / dizinler geri yüklenebilir mi?
Seth

Yanıtlar:


66

TestDisk bazen son zamanlarda silinen dosyaları kurtarabilir.


4
Kamera kartlarına özel olan TestDisk'teki özel kameraların PhotoRec
Luis Siquot

1
Şu anda, TestDisk'in grafiksel bir kullanıcı arayüzü yok ve yardım (man) sayfaları benim için yeterince bilgilendirici değil.
silviubogan

4
PhotoRec ( cgsecurity.org/wiki/PhotoRec ) yanlışlıkla silinen dosyaları kurtarmam için harika çalıştı (Ubuntu 14.04'de ext4 ile). İlk önce TestDisk ile denedim ama onları kurtarmak mümkün değildi. Her neyse, aynı klasörde hazırlanmış iki aracı da buldum.
Andrea

1
@silviubogan aslında TestDisk'in yol boyunca menüler ve açıklamalar içeren oldukça iyi bir Metinsel Kullanıcı Arayüzüne sahiptir. Tüm işlemlerde bunları gerçekleştirmek için bir anahtar bulunur ve daha kolay erişim için her ekrana açıkça yazılır.
Andrea Lazzarotto

25

Hem NTFS (windows), FAT32 (Nokia cep telefonundan Flash kart) hem de ext3'ün altında hasar görmüş sabit diski kurtarmak için her zaman kullandım . Yalnızca komut satırı, ancak oldukça kolay, bunun gibi bir şey:

sudo foremost -i /dev/sda -o <dir where recovered files will be stored>

Kurtarılan dosyaları, klasörlerdeki dosya türüne göre sıralar. Openoffice docs zip dosyası olarak kurtarılır. Kök olarak çalıştırmanız gerektiğinden (donanıma doğrudan erişmek için), çıktı dosyalarının kökleri de size aittir, bu nedenle daha sonra sahipliklerini değiştirmeniz gerekecektir.


Bu muhtemelen çok eski bir sorudur ancak, GIMP dosyaları kurtarma sonrası nasıl görünüyor?
uyanma

Bilmiyorum, onları kurtarmayı hiç denemedim.
Javier Rivera

@JavierRivera - Bunun dosyaları foremostkurtarabileceğine inanmıyorum .xcf. Yalnızca şu dosya türleriyle ilgilenebilecek kılavuz sayfasına bakın: (jpg, gif, png, bmp, avi, exe, mpg, mp4, wav, riff, wmv, mov, pdf, ole, doc, zip, rar, htm, ve cpp).
slm

zaten çalışıyor ... sonuçları beklememe izin ver. Paylaşacak.
Patrick Mutwiri

bitirmek için ne kadar zaman alıyor? Bir 32GB usb bellek için
Mina Michael

25

Dosya sisteminiz ext3 veya ext4 ise extundelete gerçekten harika.

Not : extundelete, düzgün çalışabilmesi için sürücünüzün bağlantısını kesmenizi gerektirir (bu, silinmiş dosyalardaki ümit kurtarılabilir baytların üzerine yazılmasının olası olmaması için, yine de en kısa zamanda yapmak için iyi bir fikirdir).

Sürücünün canlı bir sistemde sökülmesi zor olabilir ... sık sık ' device is busy' mesajını alırsınız. Bunu 'doğru bir şekilde' temizlemek için, dosya sistemine erişen tüm işlemleri kapatmanız gerekir. Ama ... büyük olasılıkla ana dizininizde çalışıyordunuz ve zilyon işlemleri ana dizininize bağlı, bu konuda iyi şanslar.

Bunu çözmenin püf noktası, 'tembel' demeyi kaldırmaktır:

$ mount
/dev/sda7 on /home type ext4 (rw)
$ sudo umount -l /home

nerede:

  • bu örnek benim /homeiçin mount'umu extundelete ile kullanmaya hazırlamak. Açıkçası /homeilgi alanınızla değiştirmeniz gerek
  • Ben yaptım mountkomut ilk (neyi cihazı anlamaya /dev/sda7ben (çıkış kısalık için kesilir) extundelete geçmek gerekir)
  • Bu -lseçenek bir küçük harf L

4
Tembel bir unmount, fs dosyadaki tüm dosyalar kapatılıncaya kadar takılı kaldığından gerçekten işe yaramaz. Dosyaları sildikten hemen sonra sistemi kapatmanız ve extundelete'ı bir livecd'den çalıştırmanız yeterlidir.
psusi

@ psusi - Kesinlikle işe yaramadığını söylemek yanlış! umount -lyeni dosyaların açılmasını / oluşturulmasını ve yazılmasını önler (web önbellekleri vb.). Ancak, yok değil hala yazılmadan dosyaları mevcut açılmış önleyen (yani: Bu mevcut dosyaları kapatmak değildir). Kapatmayı öneriyorsunuz, ancak tembel bir mohinin (çoğu zaman) söz konusu bölüme bağlı olarak daha az yazılı dosyaya neden olacağını düşünüyorum. Bu notta, extundelete'nin zaten kurulu olması en iyisidir ve değilse, kurtarmayı denediğiniz bölümden başka bir bölüme kurduğunuzdan emin olun!
Russ

Fs hala monte edildiği sürece, ona erişmeye çalışmak yolsuzlukla sonuçlanacaktır. Bu, extundelete'nin ilk başta fs'nin bağlantısını kesmenizi gerektirmesinin nedenidir. Tembel demonte basit bir şekilde monte edilmediğini düşündürür ve bu nedenle doğru olmadığında diski manipüle etmeye devam etmenin güvenli olduğunu gösterir. Fs gerçekten sökülmeden önce extundelete ile devam tüm diski hortum olabilir.
psusi

1
@ psusi - "tüm diski bağlayabilir" ??! Salt okunur bir işlemle mi? Argümanını anlamıyorum, ya da paranoyak olan ne? extundelete "diski değiştirmez". Olabildiğini hayal edebildiğim en kötü şey, extundelete’in bağlantısız / statik bir bölümlendirme beklemesi ve dergi bilgilerini okurken, dosyaları açmış olan işlemler nedeniyle tembel olarak çıkartılan diskin değişmesi durumunda, extundelete'nin kafası karışabilir ve kurtarma işlemi başarısız olabilir. "büyük olasılıkla başarısız kurtarma"! = "sabit disk". Başarısız olursa, kapatın, dua etmenin kaybedilen verilerinizi çöpe atmaması ve önerdiğiniz gibi bir livecd kullanmaması.
Russ,

1
Tanrı bu programı korusun! Ve sen @Russ. Tüm dosyalarımı kurtardım!
Vladimir Kovalchuk

14

Bazı dosyaları yanlışlıkla sildiyseniz ancak bu dosyaya yazılmış bazı dizeleri hala biliyorsanız, aşağıdakileri kullanabilirsiniz:

grep -a -B 25 -A 100 'containing string' /dev/sda1 > result.txt

1
dosya metin değil ikiliyse?
Decio Lira

Metin olduğunu farz ederek, dosyayı result.txt ile nasıl kurtarabilir? Ben
alamadım

Başka birkaç cevap daha önce denedim. Hiçbiri işe yaramadı. Bu basit numara yaptı! Teşekkürler!
JamesThomasMoon1979 15:15

Gerçekten işe yaradı, harika şeyler. Çok teşekkürler.
Snehal Parmar

2
Belirtilmesi gerekir 25ve 100muhtemelen belirli bir durum için ince ayar yapılması gereken bazı sihirli sayılardır.
Andrea Lazzarotto

12

Dizini kurtarmak için kullanabilirsiniz. extundelete

  1. Extundelete yükle

    sudo apt-get install extundelete
    
  2. Kurtarma komutu

    sudo extundelete --restore-directory /home/Documents/ /dev/sda1
    

Not : dev/sda1Hardisk bölümünüzün adını koymak yerine .

/home/Documents/ directiory yolundaki yolunuz.


1
Kullandığım autopsyihtiyacım inode'lara bulmak ve sonra extundeleteonları geri. İyi çalıştı!
Raphael,

Sonuçlarım görünüyor.....~/Books$ sudo extundelete --restore-directory /home/newubuntu/Books/LaTeX /dev/sda2 WARNING: Extended attributes are not restored. Loading filesystem metadata ... 522 groups loaded. Loading journal descriptors ... 32242 descriptors loaded. Writing output to directory RECOVERED_FILES/ Failed to restore file /home/newubuntu/Books/LaTeX Could not find correct inode number past inode 2621441.
alhelal

Komuta onay göndermek istiyorum. Nasıl?
alhelal

sudo extundelete -y --restore-directory /home/Documents/ /dev/sda1 bunun gibi, böyle.
alhelal

10

R-Linux (Kurtarma stüdyosu) en iyilerden biridir. Bu aracı daha önce birçok kez kullandım. Ticari versiyonlarını kullandıkları bir şirkette çalıştım, 9/10 kez istediğiniz her şeyi kurtardı. Gerçekten mükemmel bir uygulama. Madeni kurtardım ve arkadaşlar daha önce birçok kez geride kaldılar.

R-Linux, Linux işletim sisteminde ve birçok Unix'te kullanılan Ext2 / Ext3 / Ext4 FS dosya sistemi için ücretsiz bir dosya kurtarma aracıdır. R-Linux, R-Studio ile aynı InteligentScan teknolojisini ve Linux platformu için en hızlı ve en güvenilir dosya kurtarmayı sağlamak için esnek parametre ayarları kullanır. Bununla birlikte, R-Studio'dan farklı olarak, R-Linux ağ üzerinden veri kurtaramaz veya RAID'leri yeniden yapılandıramaz veya nesne kopyası sağlayamaz.

Özellikler (web sitelerinden):

R-Linux dosyaları kurtarır :

  • Virüs saldırısı, elektrik kesintisi veya sistem çökmesi ile kaldırıldı;
  • Dosyaları içeren bölümler yeniden biçimlendirildikten, hasar gördükten veya silindikten sonra;
  • Bir diskteki bölüm yapısı değiştirildiğinde veya hasar gördüğünde. Bu durumda, R-Linux daha önce varolan bölümleri bulmaya ve bulunan bölümlerden dosyaları geri yüklemeye çalışırken diski tarayabilir.
  • Bozuk sektörlü disklerden. Bu durumda, R-Linux önce tüm diski ya da bir kısmını bir görüntü dosyasına kopyalayabilir ve ardından görüntü dosyasını işleyebilir. Bu özellikle diskte sürekli yeni kötü sektörler göründüğünde yararlıdır ve kalan bilgilerin hemen kaydedilmesi gerekir.

R-Linux Gelişmiş özellikler :

  • Standart "Windows Gezgini" - stil arayüzü.
  • Ana Bilgisayar İşletim Sistemi:
    • Linux çeşidi: Linux, çekirdek 2.6 ve üzeri
    • Windows değişkeni: Win2000, XP, 2003, Vista, Windows 7, Windows 8
  • Desteklenen dosya sistemleri: Yalnızca Ext2 / Ext3 / Ext4 FS (Linux).
  • Dinamik (Windows 2000 / XP / Vista / Win7), Temel, GPT ve BSD (UNIX) bölümleri düzen şeması ve Apple bölüm haritasını tanıma ve ayrıştırma . GPT üzerindeki dinamik bölümler ve MBR üzerindeki dinamik bölümler desteklenir.

  • Tüm sabit sürücü, mantıksal disk veya bir bölümü için görüntü dosyaları oluşturur. Bu tür görüntü dosyaları normal diskler gibi işlenebilir. Görüntüler, R-Linux'un eski sürümleriyle uyumlu basit tam nesne kopyaları (Düz görüntüler) veya sıkıştırılmış, birkaç parçaya bölünmüş ve parola korumalı sıkıştırılmış görüntüler olabilir. Bu tür görüntüler R-Drive Image tarafından oluşturulan görüntülerle tam uyumlu, ancak R-Linux'un eski sürümleriyle uyumlu değil.

  • Yerel isimleri tanır.

  • Kurtarılan dosyalar, ana bilgisayar işletim sistemi tarafından erişilebilen herhangi bir (ağ dahil) diske kaydedilebilir.

Bunun Linux için özgür olmasını beklemiyordum. Zaten R-Studio'yu tanıyorum ve muhteşem bir yazılım. Linux dosya sistemleri için ücretsiz olması harika.
0x01

1
Bu araç sadece
256kb

6

Kurtarılan dosya içe aktarımı için ikincil dahili HD (aynı şüpheli harici HD) kullanılıyorsa (dosyaların asıl bulunduğu ana HD’den), dosyaların ikincil HD’ye konulacağı bir dizin oluşturulması gerekir. Bunu yapmak için, ilk önce CD'den önyükleme yapmak için BIOS ayarınızın olması gerekir! 1. Live Ubuntu Rescue-Remix CD'sini başlatın, önyükleme yapmak için komut verin, ardından terminale önyükleme yaparken HD'lerinizi komutla kontrol edin - Kod:sudo fdisk -l

Hangi HD'nin ana, hangisinin ikincil olduğunu ve dosyaları kontrol etmek için hangi bölümleri ve hangi dosyaları kurtarmak istediğinizi - linux ext3 veya Windows NTFS! Benimki Linux'du. Üzerinde yeterince yer var! (Daha sonra Photorec'i (“sudo photorec”) çalıştırmayı deneyebilirsin ve umarım tüm HD'lerini görebilirsin. O kadar şanslı değildim, bu yüzden dizini oluşturup sec. HD yapmak zorunda kaldım.)

  1. Önce kurtarılmış dosyalar için dizin oluşturun, örneğin - media / disk. Komut ver - Kod:sudo mkdir /media/disk

Eğer uygunsa terminal istemi basitçe geri döner.

  1. İkincil HD'yi monte etmelisiniz, yoksa “sudo fdisk -l” gösterse bile görünmez olur. İkincil HD kodunuz için komut verin:sudo mount -t ext3 /dev/sdb2 /media/disk

Eğer uygunsa terminal istemi basitçe geri döner.

  1. Photorec'i komutla çalıştır - Kod:

    sudo photorec

Ayarlara gidin ve yalnızca istediğiniz dosya türlerini seçin, aksi takdirde atmanız gereken binlerce dosya olacak!

Daha fazla ayrıntı için ziyaret edebilirsiniz: http: /www..ubuntumanual.org/posts/357/recover-your-deleted-files-in-ubuntu


5

Neşter deneyin

sudo apt-get install scalpel

daha fazla bilgi için

adam neşter


Şimdi deniyorum. Conf dosyasına nasıl yeni dosyalar ekleyeceğimi bilemiyorum. Ayrıntıları olan bir nay kaynağınız var mı?
Decio Lira

2
Hiçbir şeyden daha iyi olan howtoforge.com/recover-deleted-files-with-scalpel buldum . İyi şanslar, bu MS-DOS değil.
msw 09:10

ayrıca bkz ubuntu.stackexchange.com/questions/2596/... Nispeten ağır sistem yedekleme kullanın, ancak (aynı zamanda yakalar .config'dir dahil / home / MSW seçilen dizinleri dup için kurulmuş "Back in Time" var .config/keepassx/*(yerleriniz olabilir değişir))) her gece yedek bir bölüme. Ben de sonsuza dek Unix kullanıyorum ve ikinci kez the-really-critical.file
püskürttükten

Neşter her şeyden önce aynı gibi görünüyor ama neşter artık 10 yıldan beri gelişmemiş olsa da, son yıllarda birçok güncelleme yapıldı.
sebix 18


2

Neşter yükleyin

sudo apt-get install scalpel

Scalpel.conf dosyasını düzenleyin ve kurtarmak istediğiniz dosya türlerini uncomment edin. Boş bir klasör oluşturun (örneğin: recovered_data) Verilerinizin bulunduğu bölümü bulun. Bölme haritasını almak için lsblk kullanabilirsiniz.

sudo lsblk

Neşter çalıştırın (verinin sda1 olduğunu varsayalım)

sudo scalpel -o recovered_data/ /dev/sda1

1

Geçenlerde bir ext3 dosya sisteminden silinmiş büyük bir SQLite 3 dosyasını kurtarmak için ext3grep kullandım.

Diğer birçok silinmemiş aracı denedim, bunların tümü dosyayı kurtaramadı (diskin dd görüntüsünden).

Ext3grep kullanmak için, kaynağı indirmem ve derlemem gerekiyordu. Ext3 dosya sisteminin nasıl çalıştığını ve silinen dosyaların dosyada nerede kullanıldığını bulmak için günlüğü nasıl kullanacağınızı anlamak için http://www.xs4all.nl/~carlo17/howto/undelete_ext3.html yukarıdan aşağıya dikkatlice okuyun . disk de gerekliydi.

Bu basit bir çözüm değil, çok ama çok güçlü. Dokümanı incelemek ve programı derlemek için birkaç saat yatırım yapmaya hazırsanız, buna değer.


Teşekkürler, belki denerim. Bu sadece ext3 dosya sistemlerinde çalışacak mı? Ext4'den ne haber?
Decio Lira

Ext4 hakkında emin değilim ama sanırım ext4 ext3 ile geriye doğru uyumlu. İşe yarayacağını, ama hiç denemediğimi sanıyordum.
Stacey Richards
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.