unable to edit /proc/sys/net/ipv4/ip_forward in Xubuntu [duplicate]
I try to change ip_forward
from 0
to 1
but fail, even with root permission in Xubuntu 11.10. I don't have such similar problem while using Ubuntu 11.10
chiaki@chiaki:~$ sudo echo 1 > /proc/sys/net/ipv4/ip_forward
bash: /proc/sys/net/ipv4/ip_forward: Permission denied
any idea?
You can not re-direct so easily with sudo
. There are several potential solutions, including tee
.
You can re-direct to files you own as the user calling sudo
, such as files in your home directory, but not system files.
Example
# it works when re-direction to a location / file the user has permission to access
ubuntu@ubuntu:~$sudo echo "it works" > ~/file
ubuntu@ubuntu:~$cat file
it works
# But NOT if you do not have permission to access the target
ubuntu@ubuntu:~$sudo echo "it works" > /root/file
-bash: /root/file: Permission denied
Option one
use sudo bash -c
and quote the entire command
sudo bash -c 'echo 1 > /proc/sys/net/ipv4/ip_forward'
Option two
Use tee
echo "1" | sudo tee /proc/sys/net/ipv4/ip_forward
If you want to change parameters in /proc/sys
, the best thing to do is edit /etc/sysctl.conf
and then run sysctl -p
. That way your changes will persist across reboots.