Kirjoittaja Aihe: rsync --delete ei poista poistettuja tiedostoja  (Luettu 1273 kertaa)

jarmala

  • Käyttäjä
  • Viestejä: 790
    • Profiili
Olen tekemässä varakopiota rsyncillä komennolla
Koodia: [Valitse]
rsync -a -vv --delete /home/ari /media/ari/2TB/
mutta se kaatuu levytilan loppumiseen varakopiolevyllä. Senpä takia kokeilinkin komentaa
Koodia: [Valitse]
rsync -a -vv --delete-before /home/ari /media/ari/2TB/
mutta sekään ei saa tuhotuksi lähteestä tuhottuja tiedostoja varakopiolta. Myöskään parametri --delete-during ei tuhoa tiedostoja.

Se on saanut tuhotuksi vain kaksi tiedostoa:

Koodia: [Valitse]
ari@ari:~$ grep "*deleting" <rsync-logfile | tail -n 222
2020/12/03 14:13:34 [8587] *deleting   ari/tv-kanavakartta_antenni.pdf
2020/12/03 14:13:34 [8587] *deleting   ari/DEADJOE
ari@ari:~$

Ja nyt se vaan kaatuu:

Koodia: [Valitse]
ari@ari:~$ tail -n 5 <rsync-logfile
2020/12/03 16:16:22 [12090] ari/.arduino15/packages/arduino/tools/avr-gcc/5.4.0-atmel3.6.1-arduino2/avr/include/avr/version.h is uptodate
2020/12/03 16:16:22 [12090] ari/.arduino15/packages/arduino/tools/avr-gcc/5.4.0-atmel3.6.1-arduino2/avr/include/avr/wdt.h is uptodate
2020/12/03 16:16:22 [12090] ari/.arduino15/packages/arduino/tools/avr-gcc/5.4.0-atmel3.6.1-arduino2/avr/include/avr/xmega.h is uptodate
2020/12/03 16:16:22 [12090] rsync: write failed on "/media/ari/2TB/ari/b": No space left on device (28)
2020/12/03 16:16:22 [12090] rsync error: error in file IO (code 11) at receiver.c(393) [receiver=3.1.2]
ari@ari:~$

Millä siis saa oikeasti tuhotuksi tuhotut tiedostot ennen uusien tiedostojen kirjoittamista varakopiolevylle?

Toki, voisin panna varakopiolevyn sileäksi ja sitten kopioida kaikki tiedostot sinne uudestaan, mutta se kestää... kuusi tuntia. Levy on 2 TB ja varakopioitavaa on 1,8 TB.
« Viimeksi muokattu: 03.12.20 - klo:16.56 kirjoittanut jarmala »
Ubuntu 18.04 LTS, Gnome Flashback Metacity, Xeon E3-1245 V2, 8 GB
Ubuntu 22.04 LTS, KDE Plasma, Celeron N5105, 8 GB

Postimies

  • Käyttäjä
  • Viestejä: 2644
    • Profiili
Vs: rsync --delete ei poista poistettuja tiedostoja
« Vastaus #1 : 03.12.20 - klo:19.37 »
Oletko kokeillut ‘–dry-run optiota ja poiminut tulosteesta poistettavat tiedostot?
Itse kopioin kuvia ym. osissa. Katson vaikka diff-komennolla hakemistojen erot.
Kestää tuokin kauan. Varmuuslevy 4T ja sisältää jo koneelta poistettuja huonompia kuvia.

Riippuu tietysti siitä millainen hakemistopuu, mutta jakaisin
ongelman osiin. Vaikka 500G kerrallaan.

jarmala

  • Käyttäjä
  • Viestejä: 790
    • Profiili
Vs: rsync --delete ei poista poistettuja tiedostoja
« Vastaus #2 : 03.12.20 - klo:22.13 »
Millä siis saa oikeasti tuhotuksi tuhotut tiedostot ennen uusien tiedostojen kirjoittamista varakopiolevylle?

Kas, rsyncin bugiraporteissa on jo vuonna 2002 kerrottu tästä. Siis I/O -virheen jälkeen rsync ei enää poista tiedostoja. Ja virhe tulee jo siitä, että on jokin hakemisto tai tiedosto, jota ei voi esim. sen käytössäolon takia kopioida. Tämän voisi ohittaa komentamalla --ignore-errors, mutta sillä taas on muitakin vaikutuksia...

Hmm?

Pitää varmaan ruveta käyttämään sipivasti valittuja --exclude=PATTERN komentoja, jotta ei kohtaisi noita lukittuja tiedostoja... Tämä ei ole tyylikästä, mutta...
Ubuntu 18.04 LTS, Gnome Flashback Metacity, Xeon E3-1245 V2, 8 GB
Ubuntu 22.04 LTS, KDE Plasma, Celeron N5105, 8 GB