为什么OS X Mavericks在终端中阻止清除命令?


24

当我purge在终端上尝试命令时,OS X Mavericks会显示以下消息:

Unable to purge disk buffers: Operation not permitted

到目前为止,这并不是默认行为。我不知道苹果为什么要改变这一点。这个决定背后有什么原因吗?这有什么优点/缺点?

Answers:


23

您需要以root特权运行此命令。尝试:

> 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:

输入您的帐户密码,它应该运行清除命令。

苹果可能出于安全目的做出了此决定。唯一的缺点是您必须输入管理员密码。优点是,对于非管理员用户,他们无法运行此命令并可能损害其操作系统。

通常,要求sudo运行的命令可能具有破坏性或侵入性。另外两个有此要求的命令是dtracexcode-select


3
我担心使用可能会“加快速度”的应用程序purge这个答案帮助我理解了为什么这不是一个好主意。
加百利·伊扎亚斯

1
我无法将问题作为SE网站上的重复项关闭,因此我在这里公然复制了您的答案。请随意发布您自己的副本,以便我删除您答案的副本。
Hennes

您能否详细说明“ Apple可能出于安全目的做出了决定”?您认为清除命令会导致哪种安全问题?
蒂亚戈

1

使用该purge命令可能会对系统的性能产生严重的负面影响(因为您实际上是在告诉内核忘记有关最近使用情况的所有累积知识,因此请遍历不活动的列表并抛弃所有内容,即使某些进程/驱动程序也是如此)即将使用它-然后从头开始再次对其进行故障/重新创建)。因此,有意义的是它将需要某种级别的特权才能执行它。


1

我不是专家,但可能与OS X 10.9中的压缩内存有关

做更多

Mac可用的内存越多,它的运行速度就越快。但是,当您运行多个应用程序时,Mac将使用更多内存。使用OS X Mavericks,压缩内存可让您的Mac在最需要时释放内存空间。当Mac达到最大内存容量时,OS X会自动压缩非活动应用程序中的数据,从而提供更多内存

快速提取

压缩内存后,您的Mac不必浪费时间不断在内存和存储之间来回传输数据。因此,它可以在更短的时间内完成更多工作。而且由于压缩和解压缩几乎是即时发生的,因此您唯一会注意到的是所有事物的响应速度。尤其是当您一次完成所有操作时。

来源:(http://www.apple.com/osx/advanced-technologies/不存在)

另请参阅:OS X Mavericks不仅功能强大:它的功能还很强大(PDF)

他们可以这样做,是做避免与做事情的新途径interfeering旧的程序。但是我不知道。


-1

“清除”不会释放足够的RAM。我正在使用SystemPal:https ://itunes.apple.com/app/systempal/id453164367 ? mt =12效果很好!


2
行为上的哪些差异使您相信Mac App Store中的第三方应用程序可以比Apple的OS X附带的工具清除更多的内存?
格雷厄姆·米尔恩

1
还是任何应用程序/临时用户都可以比内核做出更好的内存管理决策?
jhfrontz 2014年

-5

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

创建终端脚本以清除内存

  1. 首先打开终端。

  2. 输入以下行:

    cd Desktop/

    然后按回车。这会将终端指向桌面而不是用户文件夹。您可以将Terminal指向本教程所需的任何文件夹。

  3. 输入:

    touch Purge

    然后按回车。这样会在您的桌面上创建一个名为“ Purge”的新文件,不过您现在还看不到它。

  4. 输入:

    pico Purge

    然后按回车。这将打开清除文件的终端编辑器。

  5. 在编辑器中输入以下文本:

    #!/bin/sh
    
    purge
  6. 按Control + O,然后按Enter将文件保存到桌面。然后按Control + X退出编辑器。确保使用Control键而不是Command键。

  7. 返回正常的终端屏幕后,输入:

    chmod 755 Purge

    然后按回车。这使您可以访问我们刚刚创建的文件。默认情况下,OS X隐藏使用touch创建的文件。

  8. 现在,您的桌面上将有一个名为“清除”的文件。您可以打开此文件以自动清除计算机内存。终端显示[处理完成]消息后,您可以关闭应用程序并继续。


这不能解决问题中描述的问题。另外,请修正帖子的格式。
nohillside

1
始终提供复制的内容(cc @patrix)。
grg
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.