- PVSM.RU - https://www.pvsm.ru -
По мотивам данного поста [1] с небольшими дополнениями. Не смог оставить комментарий к вышесказанному посту, поэтому пишу новую статью.
Решил модернизировать смой Mac mini (late 2012), оснастив его SSD Intel X25-M 160GB. Операционка – Yosemite 10.10.1. Воткнул SSD по статье с iFixit – ничего сложного нет, шлейф для SSD заказывал у наших друзей из «поднебесной». Решил сделать таким образом – операционка и программы на SSD, пользовательские данные на HDD.
Так как я предпочитаю unix way, то решил примонтировать HDD в /Users
Для начала скопировал с помощью Carbon Copy Cloner загрузочный диск кроме пользовательских данных (/Users) на SSD. Далее перенёс папку /Users/username/ в корень HDD и перегрузился с раздела Recovery. Для этого зажимаем alt при загрузке и выбираем Recovery (в принципе, можно загрузиться с любой загрузочной флешки с OS X на борту).
Удалил с HDD все разделы и файлы кроме /username, очистил папку /Users на SSD, чтобы диск смонтировался.
Процес монтирования описан в вышесказанном посте в разделе «способ 2», поэтому я не буду снова это повторять, хотя есть единственное дополнение. Когда определяете UUID диска командой:
diskutil info /Volumes/HDD/ | grep UUID
В выводе получите два кода UUID – диска и патриции. Нужно брать код диска (первый в списке)!
Volume UUID: 409AF953-4812-38DA-A0D9-4B0C5C49BC8E
Disk / Partition UUID: 00000DAE-5F23-0000-586C-0000281D0000
В принципе, можно в опциях монтирования указать не UUID, а просто номер диска в /dev/. Например, /dev/disk1s2 – я так обычно делаю на linux.
Название нужного диска можно определить командой:
diskutil list
Касательно опции монтирование SSD – noatime. Ничего сам не мудрил – у меня операционка сама смонтировала SSD с данной опцией. Возможно, это фича Yosemite.
macmini:~ home$ mount
/dev/disk0s2 on / (hfs, local, journaled, noatime)
devfs on /dev (devfs, local, nobrowse)
/dev/disk1s2 on /Users (hfs, local, journaled)
map -hosts on /net (autofs, nosuid, automounted, nobrowse)
map auto_home on /home (autofs, automounted, nobrowse)
TRIM активировал с помощью Chameleon SSD Optimizer [2].
Файл гибернации перенёс сюда – /Users/.vm
Процедура описана нормально в упомянутом мною посте.
Что не указано
Необходимо также перенести swap на HDD. Подробно процедура описана тут [3].
Вкратце опишу процедуру:
Для начала определяем в какой папке будет лежать своп. Я решил в той же где и файл гибернации — /Users/.vm.
sudo mkdir /Users/.vm
Естественно, у меня операционка уже загружена с SSD и HDD подмонтирован в /Users. Открываем терминал и делаем бэкап файла настроек swap:
$ cd /System/Library/LaunchDaemons
$ sudo cp com.apple.dynamic_pager.plist{,_bak}
Конвертируем бинарный файл настроек в XML:
sudo plutil -convert xml1 com.apple.dynamic_pager.plist
Открываем файл настроек любым редактором, я использовал vim.
sudo vim com.apple.dynamic_pager.plist
Меняем аналогичные строки на нижеуказанные:
<key>ProgramArguments</key>
<array>
<string>/bin/bash</string>
<string>-c</string>
<string>/bin/wait4path /Users/.vm &&
/sbin/dynamic_pager -F /Users/.vm/swapfile</string>
</array>
Для тех, кто не умеет пользоваться vim – для редактирование нажимаем «i», в конце редактирования нажимаем Esc и для того, чтобы записать файл ":wq".
Конвертируем обратно в бинарник:
sudo plutil -convert binary1 com.apple.dynamic_pager.plist
Перезагружается. Если что-то пошло не так – грузимся в verbose (Command-v) или single mode (Command-s) при загрузке и восстанавливаем файл настроек из бэкапа.
Автор также объясняет, для чего необходимо использовать консольную утилиту waith4path – процесс dynamic_page (управление свопом) запускается на очень ранней стадии старта операционки и другие диски кроме корня могут не успеть смонтировать на данной стадии, что приведет к проблемам.
Смотрим, создался ли своп по новому пути:
cd /Users/.vm
$ ls -la
У меня оперативки много, поэтому пришлось запустить кучу программ для того, чтобы ядро начало писать в своп. Если всё ОК, удаляем старый своп:
$ cd /private/var/vm
$ sudo rm swapfile*
Ещё один важный момент – исключаем папку с файлом гибернации и свопа из TimeMachine. Для того, чтобы эта штука не бэкапилась. У меня это одна папка, поэтому:
sudo tmutil addexclusion -p /Users/.vm
Проверяем:
tmutil isexcluded /Users/.vm
И ещё рекомендуют данную папку из индексов, но у меня пока не взлетело:
sudo mdutil -i off /pathtoswap && sudo mdutil -E /pathtoswap
Успехов!
Автор: Bearpuh
Источник [4]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/apple/81584
Ссылки в тексте:
[1] данного поста: http://geektimes.ru/post/144305/
[2] Chameleon SSD Optimizer: http://www.macupdate.com/app/mac/43656/chameleon-ssd-optimizer
[3] тут: http://apple.stackexchange.com/questions/1465/how-can-i-move-virtual-memory-swap-files-to-a-different-drive-or-partition
[4] Источник: http://geektimes.ru/post/245290/
Нажмите здесь для печати.