ปิดใช้งานการสลับบน Yosemite


12

ภายใต้ OS X Mavericks และด้านล่างเราสามารถlaunchctl unloaddynamic_pager plist ได้ แต่การพยายามยกเลิกการโหลด plist นี้ไม่มีผลใด ๆ ตั้งแต่ OS X Yosemite

วิธีใหม่ในการปิดการใช้งานการแลกเปลี่ยนไฟล์ตอนนี้ด้วย OS X Yosemite คืออะไร?


ความคิดเห็นไม่ได้มีไว้สำหรับการอภิปรายเพิ่มเติม การสนทนานี้ได้รับการย้ายไปแชท
bmike

คำตอบ:


11

คุณลองอะไรเช่นนี้

# 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

นี่ไม่ใช่สิ่งที่ฉันเขียนเป็นข้อมูลที่ฉันพบ


5
ฉันเพียงแค่พยายามที่จะใช้sudo nvram boot-args="vm_compressor=2"ซึ่งแน่นอนอาจจะเป็นวิธีที่ถูกต้องเมื่อมองapple.stackexchange.com/q/118839/97060 ฉันใช้คำสั่งนั้นแล้วเริ่มระบบใหม่ จะยอมรับถ้ายังไม่มีการแลกเปลี่ยนในอีกไม่กี่ชั่วโมงเพียงเพื่อยืนยัน ;-) (อย่างไรก็ตามทุกอย่างอื่นในโพสต์นี้ยกเว้นคำสั่งเดียวนั้นเป็นคำสั่งที่ไร้ประโยชน์ ... )
bwoebi

1
สำหรับผู้ติดตาม vm_compressor 2 คือ VM_PAGER_COMPRESSOR_NO_SWAP และ 4 คือ VM_PAGER_COMPRESSOR_WITH_SWAP (อ้างอิง: www.apple.stackexchange.com/q/118839/25085) ในเซียร่าฉันจะได้รับnvram: Error setting variable - 'boot-args': (iokit/common) general errorเว้นแต่จะปิดการใช้งานการป้องกันความสมบูรณ์ของระบบก่อนจากนั้นก็ใช้ได้
rogerdpack

3

นี่คือสิ่งที่ฉันทำ:

sudo pmset -a hibernatemode 0
(ปิดใช้งานโหมด Hibernation)

sudo RM -rf / เอกชน / var / เมล์/
* (ลบไฟล์ swap ที่มีอยู่)

sudo chflags uchg / private / var / vm /
(ล็อคไดเรกทอรี swapfile ป้องกันสิ่งใดจากการเขียนลงในโฟลเดอร์)

อย่างที่คนอื่น ๆ พูดกันโปรดทำสิ่งนี้ต่อเมื่อคุณรู้ว่าคุณกำลังทำอะไรอยู่


1
ซึ่งโดยทั่วไปจะทำงานมากเกินไป แต่ไม่ได้เป็นวิธีทำความสะอาด มันเพิ่งเขียนข้อความในไฟล์บันทึก ฯลฯ เพียงแค่ใช้sudo nvram boot-args="vm_compressor=2"และคุณก็โอเค
bwoebi

ฉันควรจะพูดว่า "นี่คือสิ่งที่ฉันทำไปแล้วในอดีต" ระหว่าง SSD และแรมมากมายฉันไม่ได้เลือกที่จะปิดการแลกเปลี่ยนอีกต่อไป มันมีปัญหามากกว่าที่มันคุ้มค่า
Patrick McMahon

ตามwiki.summercode.com/คุณควรทำอะไรใน launchctl ก่อน?
rogerdpack

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

ทดสอบบน Yosemite ที่ติดตั้งใหม่จาก App Store


2
/System/Library/LaunchDaemons/com.apple.dynamic_pager.plist: Could not find specified service การเดินทาง นอกจากนี้ยังไม่มีผลกระทบใด ๆ กับระบบการแลกเปลี่ยนหรือไม่ (ใช่ฉันรีบูตเครื่อง)
bwoebi

1
บนเซียร่า, คุณต้อง "ปิดการใช้งานการป้องกันความสมบูรณ์ของระบบก่อน" FWIW
rogerdpack

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.