Я не зовсім задоволений нинішніми відповідями, але я спробую тут розкрити трохи можливостей, які я бачив в Інтернеті, намагаючись знайти гарне налаштування rsync
.
І, до речі, якщо когось цікавить Time Machine, як копії, є rsnapshot
. А також є Unison для двосторонньої синхронізації. Плюс, насправді є кілька графічних інтерфейсів, таких як утиліта резервного копіювання та arRsync ; не саме те, що я шукав, але вони можуть зробити роботу для когось.
По-перше, мій єдиний намір полягав у копіюванні фотографій та відео, тому точна копія не потрібна, отже, не потрібно надто доглядати . Насправді більшість моїх сумнівів були, якби я міг виключити все (те саме, що трапиться, якби, скажімо, я завантажив фото з Інтернету, я просто завантажував .png, все інше не завантажувались, а автогенерували ).
Ось неструктурований перелік думок, які ви, можливо, захочете врахувати
Я хочу переконатися, що ваш ноутбук не лягає спати, можливо, ви захочете в caffeinate
цьому процесі caffeinate -s rsync -av ...
. Взято звідси .
Якщо ви робите локальні копії, як в моєму випадку, або навіть якщо підключення до Інтернету не надто повільно, ви повинні НЕ використовувати -z
параметр (стиснення), і використання -W
(передача весь файл, а не передачі дельти, це по замовчуванням , коли місцеві) і, ймовірно, використовувати --inplace
для швидкого переказу. Взято звідси .
Ви можете використовувати --delete-after
так, що будь-який файл буде спочатку переданий, а потім переміщений за призначенням (і видалений оригінальний) і безпечніший, ніж видалення перед передачею або під час передачі.
Ви можете зупинити передачу, натиснувши її ctrl + C, і вона зупиниться чисто. Взято звідси . Це було одним із моїх страхів із SuperDuper !, якщо вам потрібно зупинити передачу, ви отримаєте повідомлення "Ви залишите жорсткий диск у невідомому стані ...".
В останніх версіях є ще щось, --info=progress2
що додає ще більше деталей -v
.
Є -P
(що дорівнює --partial
і --progress
), яке залишить там передані файли середнього розміру, щоб ви могли продовжувати роботу при перезапуску процесу (якщо з якихось причин ви не можете одразу закінчити синхронізацію).
Можливо, вам буде цікаво зупинити прожектор або TimeMachine перед тим, як зробити копію, та відновити їх після передачі. І навіть відключити Spotlight для зовнішнього диска.
Інші варіанти , які використовуються у всіх цих посиланнях , включають -x
(або --one-file-system
), -E
( --executability
), -H
( --hard-links
), -X
( --xattrs
), -A
( --acls
), і --sparse
, --hfs-compression
, --protect-decmpfs
. Ви можете поглянути на них.
Для мене виглядає основна команда (я можу використовувати більше варіантів, але цього достатньо для прикладу):
caffeinate -s rsync -av --delete-after --progress --stats --exclude-from 'excludefile.txt' \
"/Volumes/SrcHDD/" "/Volumes/DstHDD" # note the trailing slash / after the source
Тепер у моєму випадку я міг би просто включити, {*.jpg,*.png,*.mp4,*.txt,*.pdf,…}
і ніхто не сказав би "вам потрібні також системні файли", але оскільки я не хочу шукати, щоб отримати всі можливі файлові файли, у яких є файли, я вважаю за краще виключати. І є речі, які не тільки можуть бути, але здаються зручними для виключення.
Я знайшов кілька посилань, візьміть те, що вам потрібно:
https://bombich.com/kb/ccc4/some-files-and-folders-are-automatically-excluded-from-backup-task
https://gist.github.com/tvwerkhoven/4541989
https://github.com/necolas/dotfiles
https://gist.github.com/shkm/5531679
http://www.hackurmac.com/2014/08/backing-up-and-restoring-your-hackintosh.html
https://github.com/jedda/Counterpart
http://alanwsmith.com/rsync-exclude-list-for-mac-osx
І звідти ви могли, мабуть, отримати те, що безпечно чи розумно ігнорувати. Ось повний список (я щойно видалив дублікати)
.HFS+ Private Directory Data*
/.journal
/.journal_info_block
.AppleDouble
.AppleDB
/lost+found
.metadata_never_index
.metadata_never_index_unless_rootfs
/.com.apple.timemachine.donotpresent
.VolumeIcon.icns
/System/Library/CoreServices/.disk_label*
/TheVolumeSettingsFolder
.DocumentRevisions-V100*
.Spotlight-V100
/.fseventsd
/.hotfiles.btree
/private/var/db/systemstats
/private/var/db/dyld/dyld_*
/System/Library/Caches/com.apple.bootstamps/*
/System/Library/Caches/com.apple.corestorage/*
/System/Library/Caches/com.apple.kext.caches/*
/.com.apple.NetBootX
/Volumes/*
/dev/*
/automount/*
/Network/*
/.vol/*
/net
/private/var/folders/zz/*
/private/var/vm/*
/private/tmp/*
/cores/*
.Trash
.Trashes
/Backups.backupdb
/.MobileBackups
/.MobileBackups.trash
/.MobileBackups.trash
Library/Mobile Documents.*
.webtmp
/Library/Caches/CrashPlan
/PGPWDE01
/PGPWDE02
/.bzvol
/Library/Application Support/Comodo/AntiVirus/Quarantine
/private/var/spool/qmaster
$Recycle.Bin
Saved Application State
Library/Preferences/ByHost/com.apple.loginwindow*
.AppleDesktop
.com.apple.timemachine.supported
Network Trash Folder
/Library/Caches/*
/private/var/spool/postfix/*
$RECYCLE.BIN
/stuff/*
/afs/*
/private/var/run/*
/Previous Systems.localized
/tmp/*
.dbfseventsd
.DS_Store
.PKInstallSandboxManager
.SymAV*
.symSchedScanLockxz
.TemporaryItems
Desktop DB
Desktop DF
hiberfil.sys
pagefile.sys
Recycled
RECYCLER
System Volume Information
Temporary Items
Thumbs.db
AUTORUN.INF
Autorun.inf
autorun.inf