Soru sudo echo “bla” >> / etc / sysctl.conf` izni reddedildi


Feragatname: Ben sysadmin şeyler oldukça acemi değilim.

Bir AWS EC2 örneğinde port yönlendirme kurmaya çalışıyorum, bu komut satırında yapılmalı çünkü ben bir şey girmek ve düzenlemek istemiyorum, otomatik olmalı (bu bir oluşturma sürecinin bir parçası ).

sudo echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf

İzin reddedildi

Tuhaf olan şey (başarılı bir şekilde) kullanıyorum sudo hemen hemen her komut için gerekli su ayrıcalıkları. Eğer yaparsam sudo su Komutadan önce (el ssh oturum), o zaman çalışır.

Bunun arkasındaki sebepler? Dahil olmayan olası çözümler sudo su veya manuel düzenlemeler?


14
2017-09-20 14:05


Menşei


Burada da aynı problem:stackoverflow.com/questions/82256/... - Ayrıca, gerçekten riskli olmak istiyorsan: sudo -i - MirroredFate


Cevaplar:


Kullanamazsın sudo çıktı yönlendirmesini etkilemek için; > ve >> (ve, tamlığı için, <) çağrılan kullanıcının ayrıcalığı ile etkilenir, çünkü yeniden yönlendirme çağrılan kabuk tarafından değil çağrılan alt işlem tarafından yapılır.

Ya yap

cp /etc/sysctl.conf /tmp/
echo "net.ipv4.ip_forward = 1" >> /tmp/sysctl.conf
sudo cp /tmp/sysctl.conf /etc/

veya

sudo /bin/su -c "echo 'net.ipv4.ip_forward = 1' >> /etc/sysctl.conf"

42
2017-09-20 14:09



Bu çok mantıklı, açıklama için teşekkürler! - bevacqua


Bu komutu kullanmak daha kolay olabilir:

echo net.ipv4.ip_forward = 1 | sudo tee -a /etc/sysctl.conf

13
2017-09-20 20:45





sudo root olarak sadece komutunuzu değil, yönlendirmeyi çalıştırır. Her şeyin kök olarak çalıştığı bir komutta sarmanız gerekecek:

sudo sh -c 'echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf'

12
2017-09-20 14:09





Komuta sudo echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf bu şekilde yorumlanır sen (nonroot) sonucunu yaz sudo echo "net.ipv4.ip_forward = 1" /etc/sysctl.conf dosyasına

Koşmak

sudo -s 'echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf'

veya

sudo su -c 'echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf'

koşmak echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf kök olarak.


3
2017-09-20 16:56