我想更改共享内存内核设置的shmmni参数,但是当我尝试写入时,我得到"操作不被允许"。
sysctl -w kern.sysv.shmmni=2048
输出:
kern.sysv.shmmni: 64
sysctl: kern.sysv.shmmni=2048: Operation not permitted
这可以以任何方式被规避吗?为什么不允许操作? shmmni应该是一个可写参数...我可以设置其他共享内存参数(shmmax,shmmin,shmall,shmseg)
我可以通过更新/etc/sysctl.conf或通过launchdaemon更改设置来更改shmmni,但这些更改仅在重新启动系统时生效。
我想在不重启的情况下强制设置它。
答案 0 :(得分:1)
显然,此特定条目受 SIP 保护。
不确定您是否愿意这样做,但如果您disable SIP,则可以使用 sysctl -w kern.sysv.shmmni=2048
。
答案 1 :(得分:0)
我在OSX Sierra中设置其他内核参数时遇到了同样的问题。
一旦我su root su root,我就能成功执行。