Answers:
你尝试过这样的事情吗?
# Check installed RAM, disable VM if 8Gb or more.
mem_inst=`/usr/sbin/sysctl -n hw.memsize`
if [ "$mem_inst" -ge "8589934592" ]; then
echo "8Gb+ Memory installed."
if [ "$action" == "unload" ]; then
sudo nvram boot-args="vm_compressor=2"
sudo pmset -a hibernatemode 0
echo "vm.compressor_mode set to 2"
else
sudo nvram boot-args="vm_compressor=4"
sudo pmset -a hibernatemode 3
echo "vm.compressor_mode reset to defaults"
fi
launch_control $action /System/Library/LaunchDaemons com.apple.dynamic_pager
else
echo "Less than 8Gb memory."
fi
这不是我写的东西,而是我找到的信息。
sudo nvram boot-args="vm_compressor=2"
在查看apple.stackexchange.com/q/118839/97060时,我只是尝试使用,这肯定是正确的解决方案。我应用了该命令并重新启动。将接受是否在几个小时内仍然没有交换,只是为了验证;-)(顺便说一句,除了单个命令是无用的命令之外,本文中的所有其他内容……)
nvram: Error setting variable - 'boot-args': (iokit/common) general error
除非先禁用系统完整性保护,否则它将起作用
这是我的工作:
sudo pmset -a hibernatemode 0
(禁用休眠模式)
sudo rm -rf / private / var / vm / 。
*(删除现有的交换文件)
sudo chflags uchg / private / var / vm /
(锁定交换文件目录,防止任何内容写入该文件夹)
但是,正如其他人所说,请仅在知道自己在做什么的情况下执行此操作。
sudo nvram boot-args="vm_compressor=2"
就可以了。
sudo launchctl unload -w /System/Library/LaunchDaemons/com.apple.dynamic_pager.plist
已在App Store全新安装的Yosemite上进行了测试。
/System/Library/LaunchDaemons/com.apple.dynamic_pager.plist: Could not find specified service
。同样,它对系统是否在交换也没有任何影响。(是的,我没有重启)