Fehler "Berechtigung verweigert" beim Bearbeiten von /etc/ld.so.conf

14

Wenn ich diesen Befehl ausführe, schlägt dies fehl:

sudo echo '/usr/local/lib' >> /etc/ld.so.conf 
bash: /etc/ld.so.conf: Permission denied

Ich habe kein Problem damit, sudofür andere Aufgaben zu laufen . Ich benutze Ubuntu 12.04. Es funktioniert, wenn es als verbunden ist root.

Jede Hilfe wird sehr geschätzt

maazza
quelle
5
Du machst ein Sudo-Echo, aber der Rest dieses Befehls wird NICHT als Sudo ausgeführt (die Umleitung erfolgt nicht als
Sudo ;-)

Antworten:

19

Aus dem Gedächtnis sollte dies so aussehen:

sudo sh -c "echo '/usr/local/lib' >> /etc/ld.so.conf"
Rinzwind
quelle
2
Können Sie eine Erklärung hinzufügen, warum dies funktioniert?
Bar
@Bar Ich denke, es funktioniert, weil immer sudonur ein Befehl gleichzeitig angewendet wird. In den Anführungszeichen werden zwei Befehle ( echogefolgt von einem >>) zu einem zusammengefasst. Ein alternativer Ansatz besteht darin, einen Editor mit zu öffnen sudound die Änderungen manuell vorzunehmen, d sudo gedit /usr/local/lib. H.
apostl3pol