![Lutando com permissões do systemd e do usuário para script de backup](https://rvso.com/image/192227/Lutando%20com%20permiss%C3%B5es%20do%20systemd%20e%20do%20usu%C3%A1rio%20para%20script%20de%20backup.png)
Eu poderia usar alguma ajuda para descobrir ocertomaneira de realizar o que preciso usando o systemd. Sinto como se estivesse entre uma rocha e uma posição difícil e não tenho certeza para onde ir. aqui está o contexto condensado:
Eu configurei com sucesso um systemddo utilizadorunidade para executar um script de backup todas as noites que faz algumas coisas:
- ele usa a chave ssh do meu usuário para fazer ssh em outra máquina
- ele chama pass (ou seja, o armazenamento de senha do meu usuário) para enviar uma senha à máquina remota para um comando no controle remoto que requer sudo
- ele sincroniza novamente alguns dados da máquina remota para uma unidade de backup
Tudo isso funciona muito bem. Agora, o problema é que também preciso sincronizar novamente alguns dados localmente em minha unidade de backup, mas os dados pertencem ao root. O Rsync falha com permissão negada, a menos que eu use o sudo para executar o script. Mas o problema éNão consigo descobrir como automatizar o uso do sudo com uma unidade de usuário do systemd- chamar pass não parece funcionar.
Eu li em outro lugar que deveria usar apenas uma unidade systemd normal que roda como root para realizar o que preciso, mas o problema é que todas as outras coisas que estavam funcionando quando rodando como uma unidade de usuário quebram ao rodar como root, porque root não tem acesso à chave ssh ou ao armazenamento de senhas do meu usuário.
TLDR: Qual é a melhor maneira de configurar uma unidade systemd que pode: 1) executar comandos que exigem acesso à minha chave ssh e armazenamento de senha, 2) também rsync dados que requerem permissões elevadas e 3) fazer essas duas coisas em um forma automatizada onde não preciso estar no teclado para digitar a senha do meu usuário?