Saltar al contenido

`sudo echo “bla” >> /etc/sysctl.conf` permiso denegado

La guía o código que hallarás en este artículo es la resolución más rápida y válida que encontramos a esta duda o dilema.

Solución:

Solución 1:

no puedes usar sudo para afectar la redirección de salida; > y >> (y, para completar, <) se efectúan con el privilegio del usuario que llama, porque la redirección la realiza el shell que llama, no el subproceso llamado.

O hazlo

cp /etc/sysctl.conf /tmp/
echo "net.ipv4.ip_forward = 1" >> /tmp/sysctl.conf
sudo cp /tmp/sysctl.conf /etc/

o

sudo /bin/su -c "echo 'net.ipv4.ip_forward = 1' >> /etc/sysctl.conf"

Solución 2:

Puede que le resulte más sencillo utilizar este comando:

echo net.ipv4.ip_forward = 1 | sudo tee -a /etc/sysctl.conf

Solución 3:

sudo ejecuta solo su comando, no la redirección, como root. Deberá envolverlo todo en un comando donde todo se ejecuta como root:

sudo sh -c 'echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf'

Solución 4:

El comando sudo echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf se interpreta como que (no root) escribir el resultado de sudo echo "net.ipv4.ip_forward = 1" en /etc/sysctl.conf.

Correr

sudo -s 'echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf'

o

sudo su -c 'echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf'

correr echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf como raíz.


Solución 5:

sudo sed -i "$ a " 
  • -i : editar archivo en su lugar.
  • $ a: añadir texto a la última línea

Usando sed El comando le evita la molestia de las redirecciones y las canalizaciones.

En tu caso: sudo sed -i "$ a net.ipv4.ip_forward = 1" /etc/sysctl.conf

Más adelante puedes encontrar las crónicas de otros usuarios, tú asimismo puedes mostrar el tuyo si te gusta.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *