Não me parece que o problema aqui tenha algo a ver com o novo usuário ser um usuário do sistema ou um usuário sem login. Parece que a explicação mais provável para o que aconteceu é que, como o proprietário do diretório de destino foi alterado, agora não há um usuário que tenha permissões de leitura para o diretório de origem e grave permissões no diretório de destino.
Como você tem privilégios sudo no host em questão, você tem muitas opções para resolver isso.
-
Você pode conceder ao usuário original permissões de gravação para o diretório de destino e executar o comando
tar
como esse usuário. -
Você pode conceder ao novo usuário de login permissões de leitura sem login e executar o comando
tar
como esse usuário. -
Você pode executar o comando
tar
com o sudo e, em seguida, definir a propriedade como o que você deseja que seja posteriormente.
Por exemplo, algo como o seguinte deve funcionar:
sudo tar -vxzf /path/to/${artifact}.tar.gz -C /path/to/target/directory
sudo chown -R "${newUser}:${newUser}" /path/to/target/directory
Se você quiser usar um pouco mais de sutileza e evitar a necessidade de executá-lo como root, atualize sua pergunta para incluir as permissões e informações de propriedade dos diretórios em questão, bem como as associações de grupos das contas de usuários relevantes. .