1

Как бы я запретил OS X даже искать файл подкачки?

Я убил файл подкачки на моем MBP. Это очень просто: просто измените расположение файла подкачки по умолчанию, чтобы система не смогла его найти (перейдите /System/Library/LaunchDaemons/com.apple.dynamic_pager.plist, измените последний <string> в разделе ProgramArguments .)

Это достигает того, чего я хотел добиться. Мой файл подкачки всегда равен 0 МБ, и, следовательно, я могу оставить свой Mac на несколько недель без замедления, вызванного свопом, которое я ненавидел.

Вопрос в том, как остановить систему, которая ищет файл подкачки? Своп никогда не создается, потому что путь, указанный в файле .plist, не существует. Но система по-прежнему ищет его, что означает фоновый процесс каждые 10 секунд, который выглядит следующим образом:

dynamic_pager: cannot open swap directory /your/fake/directory/here
(com.apple.dynamic_pager[123]) Exited with exit code: 1
(com.apple.dynamic_pager) Throttling respawn: Will restart in 10 seconds

Я хочу, чтобы это не происходило, чтобы моя машина не постоянно искала что-то, чего не было, и чтобы успокоить мою врожденную природу ОКР (насколько я могу судить, это не использует никакого реального следа).

Кто-нибудь знает как ?!

3 ответа3

1

Согласно http://www.willreese.com/?p=29 :

Отключение:

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

Однако, чтобы было ясно, в OS X нет "процесса подкачки". Эти команды отключат и включат процесс пейджера, что увеличит размер доступного подкачки. Отключая этот процесс и перезапуская, вы гарантируете, что размер файла подкачки всегда равен 0, фактически отключая подкачку в вашей системе, так как в системе не будет никакого пространства подкачки, доступного для использования ...

1

Если вы заинтересованы в настройке того, как система обрабатывает файлы подкачки, вы можете попробовать взломать динамический пейджер. Это в основном будет держать процесс dynamic_pager запущенным, но его можно взломать, чтобы он не использовал подкачку или использовал только очень маленькую сумму подкачки.

1

Если файл .plist ничего не делает, кроме как вызывает эту программу, вы можете удалить ее * и / или выгрузить, используя

launchctl unload -w com.apple.dynamic_pager

* Переместите это куда-нибудь еще. Так, на всякий случай.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .