Opa, mesmo erro? Sim! Isso ocorre porque o sudo executou o comando echo como superusuário, mas após o redirecionamento de saída você volta a ter permissão de usuário comum.
Para resolver esse problema usamos o comando "tee" combinado com o sudo:
[3] Comentário enviado por fabio em 11/05/2021 - 11:47h
[1] Comentário enviado por Ryuk em 11/05/2021 - 09:51h
Beleza! Outra opção é usar o "su -c 'comando'":
$ su -c 'echo 1 > /proc/sys/net/ipv4/ip_forward'
Boa! O problema do "su -c" é que ele vai pedir a senha, o que torna a solução inviável em scripts de automação, que deve ser o caso da maioria que irá cair de paraquedas nessa dica. Eu inclusive cheguei à essa solução por causa de um script meu que precisava escrever nesse arquivo kkk
[6] Comentário enviado por maurixnovatrento em 13/05/2021 - 20:11h
[4] Comentário enviado por BRVN01 em 11/05/2021 - 13:06h
Muito bom, bem mais simples do que eu usava, vou começar a usar essa sua solução, obrigado!
Eu usava assim:
sudo bash -c "echo 1 > /proc/sys/net/ipv4/ip_forward"
Opa. Só agora que vi, já tinhas colocado essa opção, é como eu usaria. Outra coisa, dentro do script eu coloco normal sem sudo. Só daí o script todo deve ser executado como root. Eu faço assim, pra não ter problemas com isso.