Pregunta

Estoy instalando un servidor lighttpd en una máquina remota usando un script bash. Después de la instalación, necesito configurar el puerto para el servidor. El sistema dice que no tengo permiso para modificar el archivo /etc/lighttpd/lighttpd.conf aunque yo sí

sudo echo "server.bind=2000" >> /etc/lighttpd/lighttpd.conf

¿Cómo debo modificar esto?

¿Fue útil?

Solución

Lo que estás haciendo es ejecutar echo como root, y luego intentar adjuntar su salida al archivo de configuración como usuario normal.

Lo que quieres es sudo sh -c 'echo " server.bind = 2000 " > > /etc/lighttpd/lighttpd.conf '

Otros consejos

Intente cambiar el permiso del archivo utilizando chmod

$ sudo chmod a+x /etc/lighttpd/lighttpd.conf

Si no tiene derecho a cambiar el archivo /etc/lighttpd/lighttpd.conf , consulte la página del manual de lighthttpd . Si puede iniciarlo con un archivo de configuración diferente, cree un archivo de configuración en algún lugar e inicie lighthttpd con él.

El problema es que el bit a la derecha de > > no se ejecuta bajo sudo. Use sudo -i para abrir un superusuario de shell de root y ejecute el comando, o simplemente use un editor como se mencionó anteriormente.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top