Restaure o backup de $ HOME via rsync

3

Estou usando o Opensuse Leap 42.2 e uso o zypper como meu gerenciador de pacotes preferido. Eu fiz atualizações incrementais regulares do meu diretório home para uma unidade externa através do script:

#!/bin/bash

source="/home/florian/"
dest="/run/media/florian/My Passport A/increm-bu"
zypperfile="${source}Documents/installed-zypper-packages"
rpmfile="${source}Documents/myinstalledpackages.txt"

zypper --xmlout search --installed-only -v > "$zypperfile"
rpm -qa --qf "%{NAME} " > "$rpmfile"

rsync -avHAXS --delete "$source" "$dest"

exit 0

Por isso, também fiz backup de informações adicionais de pacotes instalados pelo meu gerenciador de pacotes. Agora estou tendo uma nova máquina e quero migrar "o máximo possível" para minha nova máquina. Então eu tenho as seguintes perguntas:

  1. Esses dados são suficientes para um backup, que será usado para levar minha nova máquina a um estado semelhante ao meu antigo? Eu sei que coisas como pacotes ou bins que não foram instalados através do meu gerenciador de pacotes se perderão. Também devo instalar manualmente coisas como minha impressora ntetwork novamente.
  2. Recomenda-se também restaurar (algumas) pastas e arquivos começando com um ponto . . Eu acho que essas pastas e arquivos são criados por programas (ou por mim) para salvar coisas de configuração relacionadas. Definitivamente eu por exemplo manteria arquivos em $HOME/.vim/
  3. Qual é o comando correto para usar, se meus requisitos forem:

    Copie todos os arquivos e pastas, exceto os excluídos com o --exclude opção da minha unidade externa para o meu novo diretório home (com opções como no comando original, ou seja, preservar hard-links, preservar ACLs, ...).

    Se houver um novo arquivo no meu novo $ HOME com um nome idêntico, sobrescreva-o.

    Não exclua arquivos no meu novo $ HOME que não podem ser encontrados no meu backup.

    Minha ideia para o roteiro seria:

    #!/bin/bash
    
    # Adjust foldernames maybe
    source="/run/media/florian/My Passport A/increm-bu/"
    dest="/home/florian/"
    
    rsync -avHAXS  --exclude '<configuration-stuff>'"$source" "$dest"
    
     exit 0
    
por FloHe 25.12.2017 / 12:56

0 respostas