modificare il contenuto del file
-
05-07-2019 - |
Domanda
Sto installando un server lighttpd su una macchina remota usando uno script bash. Dopo l'installazione, devo configurare la porta per il server. Il sistema dice che non ho il permesso di modificare il file /etc/lighttpd/lighttpd.conf anche se lo faccio
sudo echo "server.bind=2000" >> /etc/lighttpd/lighttpd.conf
Come devo modificarlo?
Soluzione
Quello che stai facendo è eseguire echo
come root, quindi provare ad aggiungere il suo output al file di configurazione come utente normale.
Quello che vuoi è sudo sh -c 'echo " server.bind = 2000 " & Gt; > /etc/lighttpd/lighttpd.conf '
Altri suggerimenti
Prova a cambiare l'autorizzazione del file usando chmod
$ sudo chmod a+x /etc/lighttpd/lighttpd.conf
Se non hai il diritto di cambiare il file /etc/lighttpd/lighttpd.conf
controlla la pagina man di lighthttpd
. Se puoi avviarlo con un altro file di configurazione, crea un file di configurazione da qualche parte e avvia lighthttpd
con esso.
Il problema è che il bit a destra di > > non viene eseguito su sudo. O usa sudo -i per far apparire una shell root un superutente ed eseguire il comando, oppure usa semplicemente un editor come menzionato prima.