Rsync'e, okumaya çalışırken sıkışmak yerine, hasarlı bir sabit disk bloğundaki dosyaları atlamasını nasıl söylerim?


13

Donanım hataları olan bir diskten dosyaları kurtarmaya çalışıyorum.

Disk, disk yardımcı programı tarafından onarıldı, ancak diskin hasar gördüğünü söyledi, bu yüzden bir hata oluşmadan önce her şeyi yedeklemem gerekiyor.

Bu yüzden dosyaları bulucu ile kopyalamaya çalıştım, ancak sıkıştı. Diğer yardımcı programlar denendi ve kafa hasarlı bloğa çarptığında dosyaları kopyalamaya çalışırken takılıyorlar.

Bu yüzden rsync ile denedim ve işe yarıyor gibi görünüyor; ama kötü bir bloğa çarptığımda sonsuza kadar sürer.

Bu yüzden merak ediyorum, eğer Rsync'e bir dosyayı rahatsız etmemesini söylemenin bir yolu varsa, çok uzun sürüyor mu?

Bu sürücünün ne kadar uzun süre dayanacağından emin değilim, bu yüzden ASAP'den tüm verileri almak istiyorum, yine de takıp bulucudaki verileri görebiliyorum.

Ben komut olarak kullanıyorum; bir dosyadaki denemeyi azaltmanın herhangi bir yolu varsa lütfen tavsiye edin, bu yüzden hasarlı blokları okumaya çalışmak için rsync'e sahip olabilirim, ancak belirli bir sektörde çok uzun süre sıkışmamaktan kaçının.

rsync -arv -e--ignore-errors --partial-dir=/Volumes/backup/partial /Volumes/work /Volumes/backup

Şimdiden teşekkürler.


3
Sürücüde hasar görmüş sektörler varsa, sürücüyü benzer bir şeyle görüntülemeye çalışıyorsanız dd_rescue, kötü sektörlerle başa çıkmak için gelişmiş özelliklere sahiptir.
jmreicha

@Jmreicha'nın doğru fikri olduğunu düşünüyorum, ancak gelecekte, rsync teknik sorularınız varsa, rsync listesinde dost gurular mevcuttur: lists.samba.org/mailman/listinfo/rsync
Joe

Yanıtlar:


10

Kısa cevap: rsyncBu durumda kullanılacak doğru araç değildir: kullanımı bile zararlı olabilir. Bunun yerine
kullanın ddrescue(daha iyi dd_rescue). Ne istersen onu yapabilir.


Disk fiziksel olarak hasar görürse, herhangi bir onarım girişiminde tuğla oluşturma olasılığı vardır .

Bu sadece zamanınızın kullanımı ile ilgili bir soru değil , rsyncsonsuza dek zarar görmüş bir sektöre yaklaşırken ortaya çıkıyor. Sorun tekrarlanan işlemlerle bir onarılmaz başarısızlık kutu olur ve daha sonra artık pahalı parça değişimi olmadan verilerinizi kurtarmak için mümkün değildi olacak (hala mümkün olacaktır eğer hep ve olmayacak tuğla sizin HDD ).

Bu durumda bulduğum en güvenli prosedür

  1. Bozuk olmayan başka bir diskte ham görüntü oluşturmak için .
  2. Bu görüntünün bir kopyasını oluşturmak için .
  3. To düzeltmek için kopya üzerinde çalışmak dosya sistemini ve dosyaları kurtarmak için .

Neden kopya? Çünkü dosya sistemi sabitleme adımında bir şey başarısız olursa , orijinal hasarlı HDD'ye tekrar dokunmanıza gerek kalmadan her zaman tekrar başlayabilirsiniz .

ddrescueHam disk görüntüsünü yapmak için hatalar dahil kullanmanızı öneririm , çünkü okuma hataları durumunda bile iyi çalışıyor.


İle nasıl yapılır ddrescue

ddrescueTam olarak kullanmak istediğiniz gibi kullanabilirsiniz rsync, hasarlı sektörleri yeniden denemeden veya bölmeden atlayarak, mümkün olduğunca fazla veri kopyalayabilirsiniz.
Bu komut aşağıda ( /dev/hda1cihazınızı koymak yerine) aşağıdadır :

ddrescue --no-split /dev/hda1 imagefile logfile

Bundan sonra bu ilk geçişi ( daha hızlı olanı ) yaptıktan sonra , hata durumunda 3 kez erişmeye çalışarak düzeltmeyi deneyebilirsiniz.

ddrescue --direct --max-retries=3 /dev/hda1 imagefile logfile 

ddrescueHer seferinde daha fazla veri ayıklamaya çalışarak komut çağrılarını diğer seçeneklerle tekrarlayan görüntüyü hassaslaştırmaya devam edebilirsiniz (referanslara bakın). İşiniz bittiğinde, kopyayı oluşturabilirsiniz (tüm gerekli alana sahipseniz) ve sonra dosya sistemini düzeltmek için .

Ham görüntünün orijinal HDD kadar büyük olacağını unutmayın .
İnternette, bu sitede ve StackExchange'in diğer sitelerinde, verilerin nasıl kurtarılacağı veya diğer araçlarla ilgili birçok soru ve cevap bulabilirsinizddrescue .

Referanslar:


gerçekten dd_rescue yoludur. Orijinal cevabımda 2 yıl önce vardı; ama bazı nedenlerden ötürü birisi kendi sorumu yanıtlayamayacağımıza karar verdi :) Cevap ve harika detaylar için teşekkürler
rataplan

@newbiez: Bunun yerine benim neredeyse tuğla ana ile ciddi bir disk sorunu vardı HDD Tanıştığım yani ... ddrescueve onun arkadaşları :-) Cevabınız sadece bir kelime hakkında: garip tekrar yayınlamak ... ve birisi yine kapatmaya çalışacağız eğer Yeniden açmak için evet oyu vereceğim (Bu yeni gücü hiç kullanmadım : D)
Hastur

1
--No-split seçeneği ddrescue yazılımının yeni sürümlerinde kaldırılmıştır. Bunun yerine --no-scrape kullanın. Bkz. Lists.gnu.org/archive/html/bug-ddrescue/2015-09/msg00001.html
Grmpfhmbl
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.