onsdag 19 oktober 2011

Echo till skyddad fil med sudo

Om man försöker köra kommandot
sudo echo foobar >> /skyddad/fil
kommer man mötas av
-bash: /etc/apt/sources.list: Permission denied


Detta beror på att sudo endast körs mot det första kommandot. En lösning är att köra sudo -s, vilket startar ett shell med rooträttigheter istället för att bara köra ett enstaka kommando.

En ännu snyggare lösning är att köra följande:
sudo -c sh "echo foobar >> /skyddad/fil"
Då kommer sudo starta ett shell med rooträttigheter som kör kommandot och där efter stängs.

Källa: hintsforums.macworld.com

Inga kommentarer:

Skicka en kommentar