Vô hiệu hóa trao đổi trên Yosemite


12

Trong OS X Mavericks và bên dưới, chúng ta chỉ có thể launchctl unloadplist Dynamic_pager, nhưng cố gắng giải nén plist này không có bất kỳ ảnh hưởng nào kể từ OS X Yosemite.

Cách mới để vô hiệu hóa các tập tin hoán đổi bây giờ với OS X Yosemite là gì?


Bình luận không dành cho thảo luận mở rộng; cuộc trò chuyện này đã được chuyển sang trò chuyện .
bmike

Câu trả lời:


11

Bạn đã thử một cái gì đó như thế này?

# 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

Đây không phải là thứ tôi viết, là thông tin tôi tìm thấy.


5
Tôi chỉ thử sử dụng sudo nvram boot-args="vm_compressor=2", đây chắc chắn là giải pháp chính xác, khi xem apple.stackexchange.com/q/118839/97060 . Tôi đã áp dụng lệnh đó và khởi động lại. Sẽ chấp nhận nếu vẫn không có trao đổi trong vài giờ, chỉ để xác minh ;-) (Nhân tiện, mọi thứ khác trong bài này ngoại trừ lệnh đơn lẻ đó là các lệnh vô dụng ...)
bwoebi

1
Đối với những người theo dõi, vm_compressor 2 là VM_PAGER_COMPRESSOR_NO_SWAP và 4 là VM_PAGER_COMPRESSOR_WITH_SWAP (ref: www.apple.stackexchange.com/q/118839/25085). Trên sierra tôi nhận được nvram: Error setting variable - 'boot-args': (iokit/common) general errortrừ khi trước tiên vô hiệu hóa bảo vệ toàn vẹn hệ thống, sau đó nó hoạt động
rogerdpack

3

Đây là những gì tôi làm:

sudo pmset -a hibernHRode 0
(tắt chế độ ngủ đông)

sudo rm -rf / private / var / vm / .
* (xóa các tệp hoán đổi hiện có)

sudo chflags uchg / private / var / vm / (khóa thư mục exchangefile
, ngăn không cho bất cứ điều gì được ghi vào thư mục)

Tuy nhiên, như những người khác đã nói, xin vui lòng chỉ làm điều này nếu bạn biết những gì bạn đang làm.


1
Về cơ bản cũng hoạt động, nhưng không phải là cách sạch . Nó chỉ viết tin nhắn trong các tệp nhật ký, vv .. Chỉ cần sử dụng sudo nvram boot-args="vm_compressor=2"và bạn ổn.
bwoebi

Tôi nên nói "Đây là những gì tôi đã làm trong quá khứ" Giữa SSD và một tấn RAM, tôi không còn chọn vô hiệu hóa trao đổi. Nó rắc rối hơn giá trị của nó.
Patrick McMahon

Theo wiki.summercode.com/, bạn nên làm điều gì đó trước tiên?
rogerdpack

1
sudo launchctl unload -w /System/Library/LaunchDaemons/com.apple.dynamic_pager.plist

Đã thử nghiệm trên Yosemite mới cài đặt từ App Store.


2
Bắt /System/Library/LaunchDaemons/com.apple.dynamic_pager.plist: Could not find specified service . Ngoài ra, nó không có bất kỳ ảnh hưởng nào đến việc hệ thống có được hoán đổi hay không. (vâng, tôi đã khởi động lại)
bwoebi

1
trên sierra, yêu cầu bạn "vô hiệu hóa bảo vệ toàn vẹn hệ thống trước tiên" FWIW
rogerdpack

-2

Tôi đã sử dụng một chương trình có tên Onyx để vô hiệu hóa tập tin trao đổi của tôi. & Tôi có 16GB RAM.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.