Você precisa usar o utilitário tee
para redirecionar ou anexar fluxos a um arquivo que precisa de algumas permissões, como:
echo something | sudo tee /etc/file
ou para acrescentar
echo something | sudo tee -a /etc/file
porque, por padrão, seu shell está sendo executado com suas próprias permissões de usuário e o redirecionamento >
ou >>
será feito com as mesmas permissões do usuário. Você está executando o echo
usando sudo
e redirecionando sem root
de permissão.
Como alternativa, você também pode obter um shell de root e tentar o redirecionamento normal:
sudo -i
echo something >> /etc/pat/to/file
exit
ou sudo -s
para um shell que não seja de login.
você também pode executar um shell não interativo usando o acesso root:
sudo bash -c 'echo something >> /etc/somewhere/file'