我不能在shell中设置overcommit_memory :
root@ubuntu:~# /proc/sys/vm/overcommit_memory = 1 -bash: /proc/sys/vm/overcommit_memory: Permission denied
此外,我试图把该行/ etc / sysctl.conf中,并重新启动虚拟机 ,但它不工作。
有人有一些线索? 我找不到任何search在谷歌。
/ proc / sys中的设置是虚拟文件。 要改变它们,你需要像写任何其他文件一样写给它们,就像这样:
echo 1 >/proc/sys/vm/overcommit_memory
您尝试的命令是将/proc/sys/vm/overcommit_memory作为可执行文件运行,这当然是不可能的。 你所得到的“权限被拒绝”是因为该文件没有被设置为可执行文件,而不是因为你不能改变它。
您可以通过阅读文件来查看当前设置:
cat /proc/sys/vm/overcommit_memory
谢谢你,杰夫,我试过了:
echo 1 > /proc/sys/vm/overcommit_memory
但:
-bash: echo: write error: Operation not permitted
问题是写入文件的能力被虚拟机服务器“locking”,所以我不得不要求系统pipe理员启用它
在家里的一个unix盒子,我安装了VMWare服务器,我试了一下,它可以工作,我的和你的解决scheme。
首先你应该使用命令cat /proc/mounts 。
如果挂载点/proc以只读模式挂载,则必须重新挂载它。
尝试使用mount -o remount,rw /proc命令mount -o remount,rw /proc 。
重新安装后,请再次尝试使用echo命令。