ทำไม OS X Mavericks บล็อกคำสั่ง purge ใน Terminal


24

เมื่อฉันลองpurgeคำสั่งบนเทอร์มินัล OS X Mavericks ให้ข้อความต่อไปนี้กับฉัน:

Unable to purge disk buffers: Operation not permitted

นี่ไม่ได้เป็นพฤติกรรมเริ่มต้นจนถึงตอนนี้ ฉันสงสัยว่าทำไม Apple ถึงเปลี่ยน มีเหตุผลเบื้องหลังการตัดสินใจนี้หรือไม่? ข้อดี / ข้อเสียของสิ่งนี้คืออะไร

คำตอบ:


23

คุณต้องรันคำสั่งนี้ด้วยสิทธิ์พิเศษของรูท ลอง:

> sudo purge

WARNING: Improper use of the sudo command could lead to data loss
or the deletion of important system files. Please double-check your
typing when using sudo. Type "man sudo" for more information.

To proceed, enter your password, or type Ctrl-C to abort.

Password:

ป้อนรหัสผ่านบัญชีของคุณและมันควรจะใช้คำสั่งล้าง

Apple อาจตัดสินใจเพื่อความปลอดภัย ข้อเสียเพียงอย่างเดียวคือคุณต้องพิมพ์รหัสผ่านผู้ดูแลระบบของคุณ ข้อดีคือสำหรับผู้ใช้ที่ไม่ใช่ผู้ดูแลระบบพวกเขาไม่สามารถเรียกใช้คำสั่งนี้และอาจเป็นอันตรายต่อระบบปฏิบัติการของพวกเขา

โดยปกติแล้วคำสั่งที่ต้องการsudoเพื่อให้ทำงานได้ทั้งหมดอาจเป็นอันตรายหรือรุกราน สองคำสั่งอื่น ๆ ที่มีความต้องการนี้และdtracexcode-select


3
ผมกังวลเกี่ยวกับการปพลิเคชันที่สันนิษฐานว่า "สิ่งที่ความเร็วขึ้น" purgeโดยใช้ คำตอบนี้ช่วยให้ฉันเข้าใจว่าทำไมจึงไม่ใช่ความคิดที่ดี
Gabriel Izaias

1
ฉันไม่สามารถปิดคำถามเป็นซ้ำในเว็บไซต์ SE ดังนั้นฉันโจ๋งครึ่มคัดลอกคำตอบของคุณที่นี่ รู้สึกอิสระที่จะโพสต์สำเนาของคุณเองเพื่อให้ฉันสามารถลบสำเนาคำตอบของคุณ
Hennes

คุณสามารถอธิบายรายละเอียดเกี่ยวกับ "Apple อาจตัดสินใจเพื่อความปลอดภัย" ได้หรือไม่? ปัญหาด้านความปลอดภัยแบบใดที่คุณเชื่อว่าการลบคำสั่งสร้างขึ้น
Tiago

1

การใช้purgeคำสั่งอาจมีผลเสียร้ายแรงต่อประสิทธิภาพของระบบ (เนื่องจากคุณบอกให้เคอร์เนลลืมความรู้ที่สะสมไว้ทั้งหมดเกี่ยวกับการใช้งานล่าสุดของคุณเดินผ่านรายการที่ไม่ได้ใช้งานและโยนทุกอย่าง - แม้ว่ากระบวนการ / ไดรเวอร์บางอย่าง กำลังจะใช้ประโยชน์จากมัน - แล้วเกิดข้อผิดพลาด / สร้างมันขึ้นมาใหม่ทั้งหมดตั้งแต่ต้น) ดังนั้นจึงเหมาะสมที่จะต้องใช้สิทธิ์ระดับหนึ่งในการดำเนินการ


1

ฉันไม่ใช่ผู้เชี่ยวชาญ แต่อาจมีบางอย่างที่เกี่ยวข้องกับหน่วยความจำที่บีบอัดใน OS X 10.9

ทำมากขึ้น

ยิ่งหน่วยความจำ Mac ของคุณใช้งานได้มากเท่าไหร่ก็จะทำงานได้เร็วขึ้นเท่านั้น แต่เมื่อคุณมีหลายแอพทำงาน Mac ของคุณใช้หน่วยความจำมากขึ้น ด้วย OS X Mavericks หน่วยความจำที่ถูกบีบอัดทำให้ Mac ของคุณเพิ่มพื้นที่หน่วยความจำเมื่อคุณต้องการมากที่สุด ในขณะที่ Mac ของคุณใช้ความจุหน่วยความจำสูงสุด OS X จะบีบอัดข้อมูลจากแอปที่ไม่ใช้งานโดยอัตโนมัติทำให้มีหน่วยความจำมากขึ้น

Exrta รวดเร็ว

เมื่อหน่วยความจำถูกบีบอัด Mac ของคุณไม่ต้องเสียเวลาในการถ่ายโอนข้อมูลไปมาระหว่างหน่วยความจำและที่เก็บข้อมูลอย่างต่อเนื่อง ดังนั้นจึงสามารถทำงานได้มากขึ้นในเวลาที่น้อยลง และเนื่องจากการบีบอัดและคลายการบีบอัดเกิดขึ้นเกือบจะทันทีสิ่งเดียวที่คุณจะสังเกตเห็นคือความรู้สึกตอบสนองทุกสิ่ง โดยเฉพาะอย่างยิ่งเมื่อคุณทำทุกอย่างในครั้งเดียว

ที่มา: http://www.apple.com/osx/advanced-technologies/(ไม่มีอยู่)

ดูเพิ่มเติม: OS X Mavericks มีประสิทธิภาพมากกว่า: เป็น Power Smart (PDF)

พวกเขาอาจทำเช่นนั้นเพื่อหลีกเลี่ยงโปรแกรมเก่าจากการหลอกลวงด้วยวิธีการใหม่ในการทำสิ่งต่าง ๆ แต่ฉันไม่รู้


-1

'การล้างข้อมูล' ไม่ปล่อย RAM เพียงพอ ฉันใช้ SystemPal: https://itunes.apple.com/app/systempal/id453164367?mt=12มันใช้งานได้ดีมาก!


2
ความแตกต่างของพฤติกรรมทำให้คุณเชื่อว่าแอพของบุคคลที่สามจาก Mac App Store สามารถล้างหน่วยความจำได้มากกว่าเครื่องมือที่รวมอยู่ใน OS X จาก Apple
Graham Miln

1
หรือว่าแอพ / ผู้ใช้ทั่วไปสามารถตัดสินใจเกี่ยวกับการจัดการหน่วยความจำได้ดีกว่าเคอร์เนล?
jhfrontz

-5

http://computers.tutsplus.com/tutorials/how-to-give-your-mac-a-performance-boost--mac-46271

การสร้างเทอร์มินัลสคริปต์เพื่อกำจัดหน่วยความจำ

  1. เริ่มต้นด้วยการเปิด Terminal

  2. ป้อนบรรทัดต่อไปนี้:

    cd Desktop/

    และกด Enter นี่ชี้ Terminal ไปยังเดสก์ท็อปของคุณแทนที่จะเป็นโฟลเดอร์ผู้ใช้ของคุณ คุณสามารถชี้ Terminal ไปยังโฟลเดอร์ใด ๆ ที่คุณต้องการสำหรับบทช่วยสอนนี้

  3. Enter:

    touch Purge

    และกด Enter สิ่งนี้จะสร้างไฟล์ใหม่ที่เรียกว่า "Purge" บนเดสก์ท็อปของคุณคุณจะไม่เห็นมันในตอนนี้

  4. Enter:

    pico Purge

    และกด Enter สิ่งนี้จะเปิดตัวแก้ไขเทอร์มินัลสำหรับไฟล์ที่ถูกลบ

  5. ป้อนข้อความต่อไปนี้ในโปรแกรมแก้ไข:

    #!/bin/sh
    
    purge
  6. กด Control + O แล้วกด Enter เพื่อบันทึกไฟล์ไปยังเดสก์ท็อปของคุณ จากนั้นกด Control + X เพื่อออกจากตัวแก้ไข ตรวจสอบให้แน่ใจว่าใช้คีย์ควบคุมไม่ใช่คีย์คำสั่ง

  7. เมื่อคุณกลับมาที่หน้าจอ Terminal ปกติให้ป้อน:

    chmod 755 Purge

    และกด Enter นี่ทำให้ไฟล์ที่เราเพิ่งสร้างเข้าถึงได้โดยคุณ ตามค่าเริ่มต้น OS X จะซ่อนไฟล์ที่คุณสร้างโดยใช้การสัมผัส

  8. ตอนนี้คุณจะมีไฟล์บนเดสก์ท็อปของคุณชื่อ "Purge" คุณสามารถเปิดไฟล์นี้เพื่อล้างหน่วยความจำคอมพิวเตอร์ของคุณโดยอัตโนมัติ เมื่อเทอร์มินัลแสดงข้อความ [ดำเนินการเสร็จสมบูรณ์] คุณสามารถปิดแอปพลิเคชันและดำเนินการต่อ


นี่ไม่ได้แก้ปัญหาที่อธิบายในคำถาม นอกจากนี้โปรดแก้ไขการจัดรูปแบบโพสต์ของคุณ
nohillside

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