No estoy completamente satisfecho con las respuestas actuales, pero trataré de cubrir aquí algunas de las posibilidades que he visto en la web tratando de encontrar una buena configuración rsync
.
Y, por cierto, si uno está interesado en Time Machine como copias, hay rsnapshot
. Y también hay Unison para sincronizaciones bidireccionales. Además, en realidad hay algunas GUI, como Backup Utility y arRsync ; no exactamente lo que estaba buscando, pero podrían hacer el trabajo por alguien.
Primero, mi única intención era duplicar fotos y videos, por lo que no se necesitaba una copia exacta, por lo tanto, no es necesario preocuparse demasiado . De hecho, la mayoría de mis dudas eran si podía excluir todo (lo mismo que sucedería si, por ejemplo, descargué una foto de Internet, solo descargo un archivo .png, todo lo demás no se descarga sino que se genera automáticamente ).
Aquí hay una lista desestructurada de pensamientos que es posible que desee tener en cuenta
Si desea asegurarse de que su computadora portátil no se vaya a dormir, es posible que desee realizar caffeinate
el proceso caffeinate -s rsync -av ...
. Tomado de aquí .
Si usted está haciendo copias locales, como en mi caso, o incluso si la conexión a Internet no es demasiado lento, se debe no utiliza -z
la opción (de compresión), y el uso -W
(archivo completo de transferencia, en lugar de transferencias delta, lo que es un defecto cuando local) y probablemente lo use --inplace
para hacer transferencias rápidas. Tomado de aquí .
Puede usarlo --delete-after
para que cualquier archivo se transfiera primero y luego se mueva al destino (y elimine el original) y sea más seguro que eliminarlo antes de la transferencia o durante la transferencia.
Puede detener la transferencia presionando ctrl + C, y se detendrá limpiamente. Tomado de aquí . Este fue uno de mis miedos con SuperDuper !, si necesita detener una transferencia, recibirá el mensaje "Dejará el disco duro en un estado desconocido ...".
En versiones recientes hay --info=progress2
que agrega aún más detalles -v
.
Hay -P
(que es igual --partial
y --progress
) que dejará allí los archivos transferidos a mitad de camino para que pueda continuar cuando reinicie el proceso (si por alguna razón no puede finalizar la sincronización de inmediato).
Uno podría estar interesado en detener Spotlight o TimeMachine antes de hacer la copia y volver a habilitarlos después de la transferencia. E incluso deshabilite Spotlight para el disco externo.
Otras opciones que se utilizan en todas aquellas referencias incluyen -x
(o --one-file-system
), -E
( --executability
), -H
( --hard-links
), -X
( --xattrs
), -A
( --acls
), y --sparse
, --hfs-compression
, --protect-decmpfs
. Es posible que desee mirarlos.
Para mí, se ve un comando básico (podría usar más opciones, pero esto es suficiente para un ejemplo):
caffeinate -s rsync -av --delete-after --progress --stats --exclude-from 'excludefile.txt' \
"/Volumes/SrcHDD/" "/Volumes/DstHDD" # note the trailing slash / after the source
Ahora, en mi caso, podría incluir {*.jpg,*.png,*.mp4,*.txt,*.pdf,…}
y nadie diría "también necesita archivos del sistema", pero como no quiero buscar para obtener todo el tipo de archivo posible del que tengo archivos, prefiero excluirlo. Y hay cosas que no solo pueden ser, sino que parecen convenientes de excluir.
Encontré algunos enlaces, toma lo que quieras:
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
Y a partir de ahí, probablemente podría obtener lo que es seguro o sensato para ignorar. Aquí está la lista completa (acabo de eliminar duplicados)
.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