Você está usando a opção -x
, por isso vou supor que /home
esteja em uma partição separada. De man rsync
:
-x, --one-file-system don't cross filesystem boundaries
Estou tentando fazer backup de todo o meu disco rígido usando o seguinte script:
rsync -vaxE --progress --delete --log-file='./rsync-log' / /media/me/Backup/
Funciona como esperado, exceto por uma coisa - ele copia / home mas ignora qualquer coisa dentro dele, deixando-o vazio no destino. Ao mesmo tempo, todos os outros diretórios estão sendo sincronizados recursivamente bem.
aqui está log onde você pode ver como ele atravessa outros diretórios, mas não / home.
2015/04/21 17:05:42 [23304] .d...pog... etc/xfce4/
2015/04/21 17:05:42 [23304] .d...pog... etc/xml/
2015/04/21 17:05:42 [23304] .d...pog... etc/xsp4/
2015/04/21 17:05:42 [23304] .d...pog... etc/xsp4/conf.d/
2015/04/21 17:05:42 [23304] .d...pog... etc/xul-ext/
2015/04/21 17:05:42 [23304] .d...pog... home/
2015/04/21 17:05:42 [23304] .d...pog... lib/
2015/04/21 17:05:42 [23304] .d...pog... lib/apparmor/
2015/04/21 17:05:42 [23304] .d...pog... lib/brltty/
O Google não ajudou. O que estou perdendo?
Você está usando a opção -x
, por isso vou supor que /home
esteja em uma partição separada. De man rsync
:
-x, --one-file-system don't cross filesystem boundaries
Primeiro você tem que executar .gvfs se o GVFS estiver instalado.
rsync -vaxE --progress --delete --log-file='./rsync-log' --exclude={"/home/*/.gvfs"} / /media/me/Backup/
Ou se você usar / home como partição separada, remova a opção -x
rsync -vaE --progress --delete --log-file='./rsync-log' --exclude={"/home/*/.gvfs"} / /media/me/Backup/