web-dev-qa-db-ja.com

Xubuntuで/ proc / sys / net / ipv4 / ip_forwardを編集できない

ip_forward0から1に変更しようとしましたが、Xubuntu 11.10のルート権限があっても失敗します。 Ubuntu 11.10を使用しているとき、このような問題はありません

chiaki@chiaki:~$ Sudo echo 1 > /proc/sys/net/ipv4/ip_forward 
bash: /proc/sys/net/ipv4/ip_forward: Permission denied

何か案が?

13
conandor

Sudoでは簡単にリダイレクトできません。 teeなど、いくつかの潜在的なソリューションがあります。

システムファイルではなく、ホームディレクトリ内のファイルなど、Sudoを呼び出すユーザーとして所有するファイルにリダイレクトできます。

# 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

オプション1

Sudo bash -cを使用し、コマンド全体を引用します

Sudo bash -c 'echo 1 > /proc/sys/net/ipv4/ip_forward'

オプション2

teeを使用します

echo "1" | Sudo tee /proc/sys/net/ipv4/ip_forward
21
Panther

/proc/sysのパラメーターを変更する場合、/etc/sysctl.confを編集してからsysctl -pを実行するのが最善です。このようにして、変更は再起動後も保持されます。

3
tumbleweed

これを使用できます:

user@ubuntu:~Sudo -s 
enter password for Sudo:
root@ubuntu:~echo 1 >/proc/sys/net/ipv4/ip_forward :)
0
NeptuneX

次のコマンドを入力すると、コンピューターを再起動しなくても機能します。

echo 1 >/proc/sys/net/ipv4/ip_forward

再起動すると、パラメータは「0」に戻ります

次のコマンドを試してください。再起動しても機能します。

vim /proc/sysctrl.conf ' - uncommen "net.ipv4.ip_forward=1"

sysctl -p 

これで、マシンを再起動しても、IP転送は常に有効になります。

0
user311796