Выполнение команд с использованием root в цикле [closed]

Я следую этому сообщению:

https://vpsboard.com/topic/4095-ipsecl2tp-vpn-on-ubuntu-1404/

, чтобы настроить VPN-сервер в Ubunto, однако, когда я прихожу к этой команде:

for vpn in /proc/sys/net/ipv4/conf/*; do echo 0 > $vpn/accept_redirects; echo 0 > $vpn/send_redirects; done

Я получаю Permission Denied, также я запускаю команду с помощью sudo!

Я знаю, что sudo не работает с перенаправлениями, но я не знаю, как переписать эту команду, чтобы выполнить ее с помощью su -c

-2
задан 16 September 2014 в 18:25
2 ответа

Вы можете запустить его как root после

 sudo su -
 for vpn in /proc/sys/net/ipv4/conf/*; do echo 0 > $vpn/accept_redirects; echo 0 > $vpn/send_redirects; done

или с помощью sudo как

sudo /bin/bash -c "for vpn in /proc/sys/net/ipv4/conf/*; do echo 0 > $vpn/accept_redirects; echo 0 > $vpn/send_redirects; done"
2
ответ дан 5 December 2019 в 21:12

Вы можете использовать sudo bash -c , чтобы заставить его работать:

 for vpn in /proc/sys/net/ipv4/conf/*; do 
   sudo bash -c 'echo 0 > $vpn/accept_redirects; echo 0 > $vpn/send_redirects'
  done
1
ответ дан 5 December 2019 в 21:12

Теги

Похожие вопросы