質問

bashスクリプトを使用して、リモートマシンにlighttpdサーバーをインストールしています。インストール後、サーバーのポートを構成する必要があります。システムは、ファイル/etc/lighttpd/lighttpd.confを変更する権限を持っていないと言っています

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

これをどのように変更しますか?

役に立ちましたか?

解決

あなたがしているのは、ルートとして echo を実行し、その出力を通常のユーザーとして設定ファイルに追加しようとしていることです。

欲しいのは sudo sh -c 'echo" server.bind = 2000" >> /etc/lighttpd/lighttpd.conf '

他のヒント

chmod

を使用してファイル許可を変更してみてください
$ sudo chmod a+x /etc/lighttpd/lighttpd.conf

ファイル /etc/lighttpd/lighttpd.conf を変更する権限がない場合は、 lighthttpd のマニュアルページを確認してください。別の設定ファイルで起動できる場合は、どこかに設定ファイルを作成し、それを使用して lighthttpd を起動します。

問題は、>>の右側のビットがsudoでは実行されません。 sudo -iを使用してルートシェルをスーパーユーザーとして起動してコマンドを実行するか、前述のようにエディターを使用します。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top