etckeeper, Git checkout e permissões de arquivo quebradas em / etc

6

Eu queria descobrir por que, depois de um commit etckeeper , tive um problema com a reinicialização (já resolvi graças a esta grande coisa).

Eu joguei com o etckeeper, fiz git checkout some_commit_sha para uma rápida olhada e então git checkout master .

E parece que minhas permissões de arquivo em /etc foram quebradas depois dessas manipulações. Todos os arquivos, incluindo ssh_host_rsa_key passwd-, shadow- , foram rw-r--r-- . Eu não sabia que o Git não salvava as permissões de arquivo.

Agora eu consertei todos eles (espero não ter perdido nada).

Qual foi o caminho certo para obter estados anteriores de /etc , olhar em volta e voltar para o mestre com as permissões de arquivo corretas?

    
por koddo 03.07.2011 / 15:44

1 resposta

8

De acordo com a documentação (veja abaixo) você tem que executar

etckeeper init

depois de verificar todos os arquivos de volta para restaurar as permissões. O git não pode armazenar as permissões de arquivo diretamente, então ele é tratado pelo etckeeper e você precisa executar o init novamente para restaurá-las após o checkout.

Seção de documentação,

You can use any git commands you like, but do keep in mind that, if you check out a different branch or an old version, git is operating directly on your system's /etc. If you do decide to check out a branch or tag, make sure you run "etckeeper init" again, to get any metadata changes:

git checkout april_first_joke_etc

etckeeper init

    
por 03.07.2011 / 16:06