128GB SSDと23GBのスリープイメージ+スワップファイル、どうすればいいですか?


14

それで、128GBの13インチMacbook Airを手に入れました。最近、スペースが不足していることを示すメッセージが表示されたので、スペースをすべて占有しているものを簡単に確認しました。 4GBのスリープイメージ(通常)がありますが、20個のスワップファイルがあり、それぞれが60MBから1GBになります。ディスクサイズが小さいため、これは本当に受け入れられないため、一部のスワップファイルを削除しても安全かどうか疑問に思いましたまたは、システムがそれらを構築するようにします。または、再起動のヘルプがあります(私は望みませんが、私の稼働時間を可能な限り長く保つために友人と賭けました:p)


何かがメモリリークを起こします。この情報を使用して、何かを見つけることができるかもしれません。quora.com/...
Danack

それでは、4GBの仮想メモリを使用するのがウィンドウサーバーの場合はどうでしょうか。そして、私はあなたが本当に別のアプリのメモリリークを本当に修正できるとは思わない..とにかく感謝します。
theAmateurProgrammer

回答:


13

Hibernateを無効にして、SSD / HDのRAMのサイズを取り戻すことができます:最初に無効にします:

sudo pmset -a hibernatemode 0

次に、スペースを解放します。

sudo rm /var/vm/sleepimage

...再度有効にする場合:

sudo pmset -a hibernatemode 3

注: -aは充電器とバッテリーを意味し、-bはバッテリーを意味し、-cは充電器を意味します。

あるいは、複数のディスクがある場合は、sleepimageをシンボリックリンクしてHDに物理的に配置できるようにします。

スワップ

最初にスワップを無効にします:

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

後でファイルを削除します。

sudo rm /private/var/vm/swapfile*

...再度有効にする場合は、次の操作を行います。

sudo launchctl load -wF /System/Library/LaunchDaemons/com.apple.dynamic_pager.plist

マウンテンライオンの下がsleepimageは戻ってくる
user151019

Mountain Lionがそれに従わないことを知らなかった。
liv3010m

1
エルキャピタンでは、新しいシステム整合性保護によってスワップをクリアすることは許可されていません。/System/Library/LaunchDaemons/com.apple.dynamic_pager.plist: Operation not permitted while System Integrity Protection is engaged
レオンサス

2

再起動すると、問題は確実に解決します。

問題のあるプロセスを強制終了しても、システムはスワップファイルをクリアしません。そのためには再起動が必要です。

また、スワップファイルを削除するのは悪い考えです。sudoを実行する必要があります。システムがファイルを開いている場合、ファイルをrmしても、ファイルハンドルが開いているため、ファイルは保持されます。そのため、スペースを取り戻すことはできません。

ぜひ試してみてくださいが、お勧めしません:)


1
OSXは、プロセスが強制終了されるとスワップファイルをクリアします。
user151019

0

別の答えはすでに休止状態を無効にすることについて言及しましたが、のmanページによるpmset、これは休止状態イメージ(sleepimage)ファイルの作成を無効にするのに十分ではありません。

ドキュメントは言う、

休止状態イメージを完全に無効にするには、hibernatemode standbyおよびautopoweroffがすべて0に設定されていることを確認してください。

必要なのは:

sudo pmset -a hibernatemode 0
sudo pmset -a standby 0
sudo pmset -a autopoweroff 0

を使用して、変更の前後で設定を確認できますsudo pmset -g。その後sudo rm /var/vm/sleepimage、ファイルを削除することができますが、私の場合、これは3つの値をすべて設定した後に自動的に行われました。


-2

何も損傷せずにsleepimageを削除できます。システムは時間とともに再作成します。通常、スペースが不足しているというメッセージが表示されたら、ターミナルに移動して入力するだけで、sudo rm /var/vm/sleepimage約9ギグが返されますが、システムは時間の経過とともにそれを再構築します。

質問への回答を終了し、なぜ私を信頼する必要があるのか​​を知らせるvar/vmために、現在のRAMに保存されているもののキャッシュであるため、すべてのファイルを削除できます。これらは重要ではありません...電源が切れない限り、再起動時にvarフォルダのほとんどは自動的にクリアされます。ただし、ユーザーに空き領域の安定したレポートを提供するために、OS X Lion以降はvm起動時に古いファイルを削除しません。

基本的に、実行中のプログラムを使用したRAMの量とほぼ同じサイズのVMファイルが常にあります。これらを削除して、次の重要なバックグラウンドアクティビティイベントで、コンピューターがそれらを再作成することができます。1つのプログラムのみを実行し、何も実行せず、巨大なVMファイルがある場合、プログラムのメモリリークの兆候である可能性がありますが、メニューバーの設定パネルとプラグインの多くは本当に巨大なメモリの浪費:Google Drive Synchronizer Thing、Dropboxアプリ、box.comアプリを実行すると、24時間年中無休で電話をかけ、ファイルをノンストップで移動します。これらは、正当で巨大なVMプロファイルを生成するのに十分なアクティビティです。

お役に立てば幸いです!


ありがとう!面白いのは、ラップトップの空き容量が100 MBで空き容量がなくなったためにすべてのアプリがクラッシュしたのに、2分後に8 GBの空き容量ができたためです。最初にバックアップを行い、次にスワップファイルを削除しようとします。
theAmateurProgrammer

2
スワップファイルには、現在実際のメモリで使用されていないデータが含まれていますが、そのデータが必要な場合、これはスワップされて実際のメモリに戻されます。スワップファイルは削除しないでください。再作成されるキャッシュではありません/
user151019
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.