Geçici dosyanın silinmesi ~ / .cache / duplicity / temp başarısız oldu


12

Çoğunlukla çalıştırdığımda, çalışmanın sonunda böyle bir hata mesajı görüyorum:

Cleanup of temporary file /home/user/.cache/duplicity/9a169830d41477b2dbc3c5b32edd4e8a/duplicity-MEXhMY-tempdir/mktemp-StAkzj-1 failed

Belirtilen dizin, Duplicity'yi bir sonraki çalıştırışımda silinen on kadar dosya içerecektir.

Artımlı yedeklemeler çalıştırırken bunun neden bazen başarısız olduğu hakkında bir fikriniz var mı? Kendim için herhangi bir desen görmedim ve aynı sorunu söyleyen başkalarını bulmakta çok az şansım oldu. Bazı e-posta listesindeki bir adam, bir zamanlar yerelinin Duplicity için sorunlara neden olduğunu belirtti. Normal Norveç bokmål yerel ayarımdan ABD'ye geçmeyi denedim, ancak yine de sorunu görüyorum.

Bu Duplicity için normal bir işlem midir?

Üç farklı sistemde görmek: iki Ubuntu 13.04 64 bit masaüstü ve bir Ubuntu Server 13.04 64 bit.


Yinelenen cron işimi sudo kullanıcısı yerine kök tarafından gerçekleştirildiğinden beri bu sorunu yaşıyorum. Ben bir şekilde yinelenen kök kullanıcıdan croned bir komut dosyası çalışırken oluşturduğu geçici dosyaları silme yeteneği olup olmadığını merak ediyorum?
Lonniebiz

Hala burada bir cevap bekliyorum.
Lonniebiz

GunPG'yi kurdunuz mu? GPG araçlarını yükleyene kadar aynı sorunu yaşadım (OS X'te).
Cédric

Yanıtlar:


1

Daha önce duplicityroot olarak çalıştırdıysanız bu olabilir . Dosyalar kök kullanıcıya aittir ve bu nedenle ayrıcalıksız bir kullanıcı tarafından kaldırılamaz. Bu durumda dosyaların sahibinin değiştirilmesi bunu düzeltir:

$ sudo chown -R user /home/user/.cache/duplicity/

0

Düzgün yapılandırılmış Yineleme bunu yapmamalıdır.

Şu adımları yararlı bulabilirsiniz: Yineleme

Ubuntu'da olduğunuzu biliyorum, ama sizin için uygun bir kaynak bulamıyorum. O gerektiğini evrensel olması.


0

/usr/lib/python2.7/dist-packages/duplicity/tempdir.pyDaha özel bir özel durum işleyici eklemek için değiştirmeyi deneyin (veya bu dosya sisteminizde nerede olursa olsun), sadece bunu yapıyor gibi görünüyor:

except Exception:
    log.Info(_("Cleanup of temporary file %s failed") % util.ufn(file))
pass

Bunun önüne eklenen daha spesifik bir hata işleyici daha spesifik hata numarasını deneyebilir ve gösterebilir:

except OSError as ex:
    log.Info(_("Cleanup of temporary file %s failed with errno %d") % (util.ufn(file), ex.errno))
pass

Altında çalıştırmak strace, unlinkaramanın errno'yu gösterir , ancak muhtemelen daha yavaş olur ve günlük için çok fazla disk alanı harcar, esp. yinelemenin ne yaptığının doğası göz önüne alındığında.

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.