Restic: ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ $ RECYCLE.BIN с Ρ„Π°ΠΉΠ»ΠΎΠΌ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚

Π‘ΠΎΠ·Π΄Π°Π½Π½Ρ‹ΠΉ Π½Π° 31 мая 2020  Β·  4ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ  Β·  Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: restic/restic

Π’Ρ‹Π²ΠΎΠ΄ restic version

restic 0.9.6 (v0.9.6-0-gb723ca3d) скомпилирован с go1.10.4 Π½Π° linux / amd64

Как ΠΈΠΌΠ΅Π½Π½ΠΎ Π²Ρ‹ ΠΏΡ€ΠΎΠ±Π΅ΠΆΠ°Π»ΠΈ рСстик?

Π£ мСня Π΅ΡΡ‚ΡŒ Ρ€Π°Π·Π΄Π΅Π» NTFS, ΠΎΠ±Ρ‰ΠΈΠΉ для Windows 10 ΠΈ Ubuntu 18.04 с Π΄Π²ΠΎΠΉΠ½ΠΎΠΉ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΎΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ я создаю с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ restic ΠΈΠ· Ubuntu. Как Π²Ρ‹, Π½Π°Π²Π΅Ρ€Π½ΠΎΠ΅, Π·Π½Π°Π΅Ρ‚Π΅, Windows 10 создаСт ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ $RECYCLE.BIN Π² ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠΌ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ Ρ€Π°Π·Π΄Π΅Π»Π° для хранСния Ρ„Π°ΠΉΠ»ΠΎΠ², ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Π΅ΠΌΡ‹Ρ… Π² ΠΊΠΎΡ€Π·ΠΈΠ½Ρƒ. Π― Ρ…ΠΎΡ‡Ρƒ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Ρ€Π΅Π·Π΅Ρ€Π²Π½ΡƒΡŽ копию ΠΎΠ±Ρ‰Π΅Π³ΠΎ Ρ€Π°Π·Π΄Π΅Π»Π°, Π½ΠΎ Π½Π΅ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π° $RECYCLE.BIN .

НиТС я ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ описал, ΠΊΠ°ΠΊ воспроизвСсти Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ я наблюдаю. ΠšΠΎΡ€ΠΎΡ‡Π΅ говоря: использованиС --exclude="\$RECYCLE.BIN" с ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ Ρ€Π΅Π·Π΅Ρ€Π²Π½ΠΎΠ³ΠΎ копирования Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΈΡΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³, помСщая "$ RECYCLE.BIN" (ΠΈΠ»ΠΈ любой Π΄Ρ€ΡƒΠ³ΠΎΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ я ΠΌΠΎΠ³ ΠΏΡ€ΠΈΠ΄ΡƒΠΌΠ°Ρ‚ΡŒ, см. НиТС) Π² --exclude-file Π΄Π΅Π»Π°Π΅Ρ‚ Π½Π΅ ΠΈΡΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³.

Какой бэкэнд / сСрвСр / сСрвис Π²Ρ‹ использовали для хранСния рСпозитория?

Π― наблюдаю Π·Π° ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ΠΌ ΠΊΠ°ΠΊ с Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΌ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅ΠΌ (ΠΏΠΎΠ΄ Ubuntu 18.04), Ρ‚Π°ΠΊ ΠΈ с ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹ΠΌ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅ΠΌ Ρ‡Π΅Ρ€Π΅Π· SFTP (Ρ€Π΅Π·Π΅Ρ€Π²Π½ΠΎΠ΅ ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ выполняСтся Ρ‚Π°ΠΊΠΆΠ΅ Π½Π° Ubuntu 18.04).

ОТидаСмоС повСдСниС

Папка $RECYCLE.BIN ΠΈΡΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ ΠΈΠ· Ρ€Π΅Π·Π΅Ρ€Π²Π½ΠΎΠΉ ΠΊΠΎΠΏΠΈΠΈ ΠΏΡ€ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ Π² Ρ„Π°ΠΉΠ» ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ.

ЀактичСскоС ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅

Папка $RECYCLE.BIN Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π° Π² Ρ€Π΅Π·Π΅Ρ€Π²Π½ΡƒΡŽ копию, хотя ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ​​в Ρ„Π°ΠΉΠ» ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ.

Π¨Π°Π³ΠΈ ΠΏΠΎ Π²ΠΎΡΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΡŽ повСдСния

Π’Π½ΡƒΡ‚Ρ€ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ тСстового ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π° Π²Π²Π΅Π΄ΠΈΡ‚Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Π² bash:

# prepare the directory to be backed up
mkdir "data";
mkdir "data/\$RECYCLE.BIN";
touch "data/backup_this";
touch "data/\$RECYCLE.BIN"/ignore_this";

# init repo
mkdir "repo";
restic init --repo=repo/

# prepare exclude file
echo "\$RECYCLE.BIN" > exclude.file

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π²Ρ‹Π΄Π°Ρ‡Π° restic --repo=repo/ backup --verbose --verbose data/ Π΄Π°Π΅Ρ‚:

open repository
enter password for repository: 
repository 837fc3f7 opened successfully, password is correct
lock repository
load index files
start scan on [data/]
start backup on [data/]
scan finished in 0.257s: 2 files, 0 B
new       /data/$RECYCLE.BIN/ignore_this, saved in 0.004s (0 B added)
new       /data/backup_this, saved in 0.000s (0 B added)

Files:           2 new,     0 changed,     0 unmodified
Dirs:            0 new,     0 changed,     0 unmodified
Data Blobs:      0 new
Tree Blobs:      1 new
Added to the repo: 372 B

processed 2 files, 0 B in 0:00
snapshot 27c00c6b saved

как и оТидалось.

Π’Ρ‹Π΄Π°Ρ‡Π° restic --repo=repo/ backup --verbose --verbose --exclude="\$RECYCLE.BIN" data/ доходности

open repository
enter password for repository: 
repository 837fc3f7 opened successfully, password is correct
lock repository
load index files
using parent snapshot 27c00c6b
start scan on [data/]
start backup on [data/]
scan finished in 0.257s: 1 files, 0 B
unchanged /data/backup_this

Files:           0 new,     0 changed,     1 unmodified
Dirs:            0 new,     0 changed,     0 unmodified
Data Blobs:      0 new
Tree Blobs:      1 new
Added to the repo: 372 B

processed 1 files, 0 B in 0:00
snapshot 61c27a16 saved

Ρ‡Ρ‚ΠΎ Ρ‚ΠΎΠΆΠ΅ оТидаСтся.

Однако Π²Ρ‹Π΄Π°Ρ‡Π° restic --repo=repo/ backup --verbose --verbose --exclude-file=exclude.file data/ , Π³Π΄Π΅

 $ cat exclude.file 
$RECYCLE.BIN

ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ

open repository
enter password for repository: 
repository 837fc3f7 opened successfully, password is correct
lock repository
load index files
using parent snapshot 61c27a16
start scan on [data/]
start backup on [data/]
scan finished in 0.211s: 2 files, 0 B
unchanged /data/backup_this
new       /data/$RECYCLE.BIN/ignore_this, saved in 0.003s (0 B added)

Files:           1 new,     0 changed,     1 unmodified
Dirs:            0 new,     0 changed,     0 unmodified
Data Blobs:      0 new
Tree Blobs:      0 new
Added to the repo: 0 B  

processed 2 files, 0 B in 0:00
snapshot 9a62470f saved

Π’ΠΎ Π΅ΡΡ‚ΡŒ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ Π½Π΅ ΠΈΡΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ ΠΈΠ· Ρ€Π΅Π·Π΅Ρ€Π²Π½ΠΎΠΉ ΠΊΠΎΠΏΠΈΠΈ, хотя ΠΎΠ½ присутствуСт Π² Ρ„Π°ΠΉΠ»Π΅ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ.

Π― Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Π» Ρ€Π°Π·Π½Ρ‹Π΅ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ Ρ„Π°ΠΉΠ»Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ (ΠΈΠ·Π±Π΅Π³Π°Π½ΠΈΠ΅ Π·Π½Π°ΠΊΠ° Π΄ΠΎΠ»Π»Π°Ρ€Π°, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΊΠ°Π²Ρ‹Ρ‡Π΅ΠΊ, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠΉ строки Π² ΠΊΠΎΠ½Ρ†Π΅ Ρ„Π°ΠΉΠ»Π°), Π½ΠΎ Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ мСшало ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³.

Π’Ρ‹ Π·Π½Π°Π΅Ρ‚Π΅, Ρ‡Π΅ΠΌ это ΠΌΠΎΠ³Π»ΠΎ Π±Ρ‹Ρ‚ΡŒ Π²Ρ‹Π·Π²Π°Π½ΠΎ?

Π― ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°ΡŽ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΈΠ· Ρ„Π°ΠΉΠ»Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ содСрТат нСприятныС символы (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π·Π½Π°ΠΊ Π΄ΠΎΠ»Π»Π°Ρ€Π°), Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ какая-Ρ‚ΠΎ ошибка.

Π£ вас Π΅ΡΡ‚ΡŒ ΠΈΠ΄Π΅ΠΈ, ΠΊΠ°ΠΊ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ?

К соТалСнию, я понятия Π½Π΅ имСю ΠΎ go (я свободно Π³ΠΎΠ²ΠΎΡ€ΡŽ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° C ++), Π½ΠΎ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Π½Π΅ Ρ‚Π°ΠΊ Π²ΠΎ взаимодСйствии с ОБ ΠΈ / ΠΈΠ»ΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмой ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ², Π²ΠΊΠ»ΡŽΡ‡Π°Ρ странныС символы.

Помог Π»ΠΈ Ρ‚Π΅Π±Π΅ рСстик сСгодня? Π‘Π΄Π΅Π»Π°Π»ΠΎ Π»ΠΈ это вас Ρ…ΠΎΡ‚ΡŒ ΠΊΠ°ΠΊ-Ρ‚ΠΎ счастливым?

Π― ΡˆΠΈΡ€ΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ restic ΠΊΠ°ΠΊ для локального, Ρ‚Π°ΠΊ ΠΈ для ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ Ρ€Π΅Π·Π΅Ρ€Π²Π½ΠΎΠ³ΠΎ копирования. ΠŸΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°ΠΉΡ‚Π΅ Ρ…ΠΎΡ€ΠΎΡˆΡƒΡŽ Ρ€Π°Π±ΠΎΡ‚Ρƒ!
Если я ΠΌΠΎΠ³Ρƒ ΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ ΠΏΠΎΠΌΠΎΡ‰ΡŒ Π² Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΈ этой ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹, Π΄Π°ΠΉΡ‚Π΅ ΠΌΠ½Π΅ Π·Π½Π°Ρ‚ΡŒ.

backup need feedback questioproblem

ВсС 4 ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

НС ΡƒΠ²Π΅Ρ€Π΅Π½ насчСт --exclude , Π½ΠΎ Π² ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»Π°Ρ… restic Ρ€Π°ΡΡˆΠΈΡ€ΡΠ΅Ρ‚ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ срСды. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ $$RECYCLE.BIN Ρ‡Ρ‚ΠΎΠ±Ρ‹ этого ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ.

Π‘ΠΌ. Https://restic.readthedocs.io/en/latest/040_backup.html#excluding -files

Π§Ρ‚ΠΎ ΠΆ, спасибо, ΠΏΠΎΡ…ΠΎΠΆΠ΅, я пропустил ΠΈΠΌΠ΅Π½Π½ΠΎ этот СдинствСнный Π°Π±Π·Π°Ρ† Π² Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ.

ΠšΠ°ΠΆΠ΅Ρ‚ΡΡ, получаСтся:

 $ cat exclude.file 
$$RECYCLE.BIN

ΠΈ повторная Π²Ρ‹Π΄Π°Ρ‡Π° restic --repo=repo/ backup --verbose --verbose --exclude-file=exclude.file data/ Π΄Π°Π΅Ρ‚

open repository
enter password for repository: 
repository 837fc3f7 opened successfully, password is correct
lock repository
load index files
using parent snapshot 96bdd658
start scan on [data/]
start backup on [data/]
scan finished in 0.211s: 1 files, 0 B
unchanged /data/backup_this

Files:           0 new,     0 changed,     1 unmodified
Dirs:            0 new,     0 changed,     0 unmodified
Data Blobs:      0 new
Tree Blobs:      0 new
Added to the repo: 0 B  

processed 1 files, 0 B in 0:00
snapshot 5c475b96 saved

как и оТидалось.

Однако Π·Π° Π±ΠΎΠ»Π΅Π΅ Ρ‡Π΅ΠΌ 10-Π»Π΅Ρ‚Π½ΠΈΠΉ ΠΎΠΏΡ‹Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Linux я Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ сталкивался с Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒΡŽ ΡΠΊΡ€Π°Π½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ $ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ $$ вмСсто \$ , Π½ΠΎ, ΠΊΠ°ΠΊ ΡƒΠΊΠ°Π·Π°Π½ΠΎ Π² Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ, это каТСтся стандартным для os.ExpandEnv , поэтому это Π½Π΅ относится ΠΊ restic.

Однако restic --repo=repo/ backup --verbose --verbose --exclude="$$RECYCLE.BIN" data/ Π΄Π°Π΅Ρ‚

open repository
enter password for repository: 
repository 837fc3f7 opened successfully, password is correct
lock repository
load index files
using parent snapshot 5c475b96
start scan on [data/]
start backup on [data/]
scan finished in 0.204s: 2 files, 0 B
new       /data/$RECYCLE.BIN/ignore_this, saved in 0.002s (0 B added)
unchanged /data/backup_this

Files:           1 new,     0 changed,     1 unmodified
Dirs:            0 new,     0 changed,     0 unmodified
Data Blobs:      0 new
Tree Blobs:      0 new
Added to the repo: 0 B  

processed 2 files, 0 B in 0:00
snapshot ed44b219 saved

Ρ‡Ρ‚ΠΎ каТСтся довольно Π½Π΅ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ ΠΈ ΠΏΡ€ΠΎΡ‚ΠΈΠ²ΠΎΡ€Π΅Ρ‡Π°Ρ‰ΠΈΠΌ ΠΈΠ½Ρ‚ΡƒΠΈΡ†ΠΈΠΈ.

Π”Π²ΠΎΠΉΠ½Ρ‹Π΅ ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠΈ Π² --exclude="$$RECYCLE.BIN" ΠΎΠ·Π½Π°Ρ‡Π°ΡŽΡ‚, Ρ‡Ρ‚ΠΎ ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠ° Ρ€Π°ΡΡˆΠΈΡ€ΡΠ΅Ρ‚ $$ Π΄ΠΎ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ PID. ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ΄ΠΈΠ½Π°Ρ€Π½Ρ‹Π΅ ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠΈ: --exclude='$$RECYCLE.BIN'

(НапримСр, посмотритС Π½Π° echo "$$RECYCLE.BIN" vs echo '$$RECYCLE.BIN' )

@kontakm МнС каТСтся, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Ρ€Π΅ΡˆΠ΅Π½Π°. ΠŸΠΎΠΆΠ°Π»ΡƒΠΉΡΡ‚Π°, Π·Π°ΠΊΡ€ΠΎΠΉΡ‚Π΅ Π΅Π³ΠΎ, Ссли это Ρ‚Π°ΠΊ.

Π‘Ρ‹Π»Π° Π»ΠΈ эта страница ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ?
0 / 5 - 0 Ρ€Π΅ΠΉΡ‚ΠΈΠ½Π³ΠΈ