restic version
restic 0.7.3
compilado com go1.9 em linux / amd64
Veja os detalhes abaixo
Cliente: Debian Stable (9.2)
Servidor: servidor FreeBSD 11.1 na LAN usando OpenSSH (OpenSSH_7.2p2, OpenSSL 1.0.2k-freebsd 26 de janeiro de 2017)
Todos os diretórios devem ser criados com as permissões e propriedade originais, mesmo se você restaurar apenas arquivos que estejam no fundo da hierarquia.
Ao restaurar arquivos que estão no fundo da hierarquia, os diretórios no caminho para baixo são restaurados com um usuário e permissão diferente, como tinham no original.
mkdir testdir # criar diretório
touch testdir / testfile # crie um arquivo nele
chmod 755 testdir testdir / testfile # certifique-se de que as permissões são 755
su # mudar para root
restic -r sftp: rakor @ SERVIDOR : / usr / home / rakor / resticbackuptest backup testdir # fazendo o backup
restic -r sftp: rakor @ SERVIDOR : / usr / home / rakor / resticbackuptest restauração mais recente -t testrestore -i testfile # restaura o arquivo (não o diretório inteiro)
ls -lR testrestore # o arquivo é restaurado com o proprietário e as permissões corretos. Mas os diretórios no caminho para o arquivo são restaurados com o usuário 'root' e permissões 700.
testrestore /:
insgesamt 4
drwx ------ 2 root root 4096 Okt 31 21:30 testdirtestrestore / testdir:
insgesamt 0
-rwxr-xr-x 1 rakor rakor 0 Okt 31 21:25 testfile
Eu acho que os diretórios no caminho para baixo não são "restaurados", mas apenas "criados" com "padrões seguros".
restaure os diretórios vazios em vez de apenas criá-los.
Obrigado por abordar este problema. Não tenho certeza se definir os direitos de acesso anteriores em diretórios intermediários da maneira correta, deixe-me pensar um pouco sobre isso.
Alguma outra opinião sobre o assunto?
Para mim, isso definitivamente parece um bug / problema na funcionalidade de restauração. Se estou restaurando dados que pertenciam originalmente a algum usuário em um diretório que pode ser acessado por esse usuário, espero que esse usuário consiga acessar os dados restaurados, mesmo que apenas uma parte tenha sido restaurada. Restaurar os atributos do diretório (proprietário / acesso / etc) parece uma maneira natural de fazer isso.
Além disso, o comportamento atual é percebido como "restaurando pela metade" esses diretórios intermediários (sua existência foi restaurada, mas seus atributos não), o que parece inconsistente / ilógico.
Eu penso que isto é um erro. Se eu quiser restaurar parte de um backup, a cópia restaurada deve ser utilizável. Atualmente, ele é inutilizável sem realizar operações restic ls para descobrir as permissões apropriadas, o proprietário e o grupo de cada elemento de caminho que foi criado automaticamente. Isso realmente dificulta a restauração de arquivos / diretórios.
Concordo que o que é restaurado pelo restic deve ser restaurado de maneira consistente (ou seja, com as permissões "padrão" do usuário que está executando a restauração ou com as permissões etc. dos arquivos e pastas originais dos quais foi feito backup, não um combinação dos dois).
No entanto, posso ver um caso de uso em ambos os tipos de permissão:
Acho que a maneira razoável de avançar é que se pode controlar quais propriedades e / ou permissões restaura por algumas opções para o comando de restauração.
Alguém pode confirmar se ainda é um problema? Desde que a versão 0.7.3 foi lançada, fizemos algumas mudanças na manipulação de permissão (e carimbo de data / hora) para diretórios intermediários ...
Comentários muito úteis
Para mim, isso definitivamente parece um bug / problema na funcionalidade de restauração. Se estou restaurando dados que pertenciam originalmente a algum usuário em um diretório que pode ser acessado por esse usuário, espero que esse usuário consiga acessar os dados restaurados, mesmo que apenas uma parte tenha sido restaurada. Restaurar os atributos do diretório (proprietário / acesso / etc) parece uma maneira natural de fazer isso.
Além disso, o comportamento atual é percebido como "restaurando pela metade" esses diretórios intermediários (sua existência foi restaurada, mas seus atributos não), o que parece inconsistente / ilógico.