SSD на немолодом MacBook

2012-12-09

Типичный SSD

Внезапное обнаружение возможности настройки FusionDrive на практически любом Маке, работающим под управлением OS X 10.8 изрядно взбудоражило маководов.

Учитывая, что новый приличный агрегат от “надкусанов” обойдется не меньше чем в 70к рублей, желание “поиметь халявы” в виде апгрейда на Fusion на древнем, как говно мамонта Core2Duo прочно засело в голове.

Что из этого получилось - можно прочесть ниже, но сразу спойлер - epic fail, правда конец-таки счастливый. Подробности ниже.

Итак, в активе у нас факингтош о 13 дюймах, late 2009. Да, беленький с NVIDIA графикой. Вполне себе живчик под 10.6.

Хочется быстрее, выше сильнее. А именно - 10.8 и Fusion Drive. Чтобы загрузка за 15 секунд, и чтобы вообще зашибись. Изучаем матчасть…

Хроника событий такая - Apple анонсирует технологию, но апдейта операционной системы нет, а значит - шкатулка пандоры лежит внутри существующей оси. И правда - пресловутый Core Storage, ничто иное, как LVM, состоящий из 2х дисков - первый в списке SSD, второй же обычный HDD. Если 10 минут ничего не происходит в системе - умная ось начинает располагать файлы по своему разумению, то есть те, что использовались недавно - сдвигаются в начало тома. Остальные - как получится.

Казалось бы - ура, ура. Бежим в магазин, покупаем памяти, поскольку наш пенсионер 2009 года, оказывается сожрет 6гб вместо официальныйх 4х. Ок, первая часть квеста пройдена.

6GB RAM MacBook Late 2009

Едем дальше. Фиг с ним, что теряется двухканальность памяти. Научных объяснений, что она была до апгрейда - нет.

Для начала, пожалуй поставим 10.8 на внешний диск, благо, это сделать можно. Внятный ролик есть на Ютубе.

Английский пионер вещает. Ок, нет проблем, повторяем его путь. Тут нам понадобится флешка или диск гигабайтов на 30, но это не проблема.

Ставим, грузимся. Видим, что все работает и приступаем к апгрейду. Для начала покупаем на ebay замечательное издели - 9.5mm Caddy. Если повезет, вам достанется не только сам caddy, но и внешняя USB-коробка для “освобожденного” привода DVD. Не выкидывать же его, право слово.

Допустим, все ок, посылка с Caddy пришла. Можно покупать SSD. Какой выбрать ? Тут тонкий вопрос. Давайте исходить из того, что в вашей помойке старый SATA-I чипсет.

И нельзя вот так просто взять и заставить работать его в режиме SATA-3. Мало того, известны случаи, когда приводы SSD вели себя странно в режиме совместимости с предыдущими версиями SATA - это вот прямо про OCZ.

Так что открываем каталог любимого магазина и смотрим, что есть в наличии. Из этого отбираем то, что может гарантированно работать со старым SATA. Как ? Очень просто - “гуглим” сочетание - полное название SSD + MacBook 2009.

В моем случае головоломка сложилась и на свет явился некиий девайс от Transcend - TS128GSSD25S-M.

Устанавливаем наш диск в Caddy и бежим в макосервис. Нет, конечно, вы можете сами раскрутить ваш MacBook, да и поставить диск вместо оптики, но… Сумма около 1000 рублей или 3 часа жизни ?

Да еще и вероятность того, что ваш аппарат не заведется после такой грубой работы… Пусть за дело возьмутся профессионалы.

Я лично пользовался услугами этих ребят - очень доволен. Жесткий диск реально поставить самому. По случаю прикупаем гигабайт от Toshiba…И вуаля.

Dual HDD MacBook 2009

Ладно, вернемся к делам нашим задротским и будем создавать Fusion Drive.

Грузимся с диска c 10.8 и ставим туда Carbon Copy Cloner. После этого создаем диск и переносим систему.

Полный путь джедая описан тут, копипастить смысла нет.

Загружаемся, ну и перетаскиваем наши документы и все, что нажито непосильным трудом на новую систему.

Ребутимся… 15 секунд на загрузку. Впечатляет, ничего не скажешь. Никто не ожидал такой прыти от нашего пенсионера. Ставим TrimEnabler, обязательно включаем его.

Вроде все хорошо. И даже отлично. Приступаем к работе и неожиданно обнаруживаем, что переписывании или работе с бооооольшой виртуальной машиной от VirtualBox - гигабайт эдак на 30. И тут нас поджидает пшуной зверь по имени песец. Мак бодро качает файл, а потом… вы видите пресловутый “леденец” и системе наступает кирдык с принудительным обесточиванием и ребутом.

Marble Of Doom MacOS

И так раз 5, пока звезды не сложатся таким образом, что файл окажется на жестком диске и копирование пройдет успешно. Для мазохистов рекомендую эту “виртуалку” пооткрывать и сделать там что-нибудь содержательное. А потом сэкспортировать. И вы вспомните и покойного Джобса (что при нем такого не было) и всех прочих остальных.

Все это описано в виде теоретических изысканий тут.

К несчастью прогнозы сбываются.

Подумаем, что у нас получилось. 128гб SSD. Остальное - HDD. Все, что часто используется - тащится на SSD. Это ваш swap, ваши документы, ваша система.

Причем все это тащится со скоростью 1ой SATA. Ну, плюс оверхед. И вот, когда 30 гигов в активной работе - тут цинизм начинается. Несчастный мак начинает перегонять этот файл в начало диска. Скоростей, ядер, кармы нехватает, да и памяти у нас по мерками 2012 года не очень много… Вобщем, дело гиблое.

А если еще посчитать надежность этого аэробуса - так вообще слезы. “Нагнется” один из компонентов - будете иметь бледный вид.

Просто, подключите внешний диск, скажите что это Time Machine, и дождитесь бэкапа. Будем исправлять ситуацию. И сделаем систему подконтрольной, быстрой и более надежной. Правда, про новые технологии придется забыть. Оставим их тем, кто использует свой мак для походов в кофейни и разглядывания фоточек в инстаграмме, им уже не поможет ничего.

Жесткий диск с тайм машин отключаем и прячем в безопасное место. Нет, правда! Там ваши данные.

Грузимся с инсталлятора OS X 10.8 и беспощадно грохаем наш выстраданный LVM.

The required commands are:
note: you can use diskutil list and diskutil cs list to obtain the volume ID’s on your computer):

diskutil cs deleteVolume < insert fusion logical volume ID here > diskutil cs delete < insert coreStorage logical volume group ID here >

Источник

Дальше все просто. Запускаем Disk Utility из инсталлятора и создаем GUID-партиции Macintosh SSD и Macintosh HDD на SSD и, HDD соответственно.

Есть городская легенда, что для нормальной работы SSD требуется некоторое количество свободного места, так что партицию SSD подожмём гигабайт на 8-10.

Партиции готовы и мы ставим с нуля наш Mountain Lion. В качестве системного диска указываем SSD! Все занимает около 30 минут, и наш факингтош спрашивает, не желаем ли мы восстановиться с Time Machine. Желаем. Подключаем наш предварительно схороненный диск и ждем. После загрузки у нас вернулась наша система и это прекрасно. Но не тут то было - нам нужно выполнить как минимум девять пунктов для того, чтобы обезопасить систему. Разбор каждого действия по пунктам - ниже.

  1. Самое важное - включение Trim Enabler- он у нас “приехал” с Time Machine backup, так что просто запускаем его и включаем. Reboot, проверка. Trim работает. Если нет - ставим его.
  2. Отключаем временные snapshot’ы Time Machine. Это нужно для того, чтобы не грузить ваш SSD в лишний раз.
  3. Включение опции noatime.
  4. Перенос файлов hibernation на HDD
  5. Отключение опции HDD sleep
  6. Перенос SWAP на HDD
  7. Перенос Users на HDD
  8. RAM Disk для /tmp и /var/run
  9. Отключение Spotlight для SSD
  10. Правильная переустановка mac ports (если ставили до этого)

Отключение временных снапшотов Time Machine.

Довольно важная вещь. Иначе ваш Мак будет пытаться себя бэкапить на SSD когда диск для TM не подключен и будет делать это на SSD.

Отключить это можно так:

sudo tmutil disablelocal

Источник

Включение опции noatime для корневой файловой системы

В принципе, если выполнено руководство с хабры, и восстановлен бэкап TM - все уже должно быть.

Смотрим вывод команды mount:

/dev/disk0s2 on / (hfs, local, journaled, noatime)

Если это не так - смотрим ссылку с хабры выше - там внятная инструкция, как это сделать.

Перенос файлов hibernation на HDD

Некоторые источники рекомендуют вообще отключить hibernation, но если хотите насладиться восстановлением состояния, можно воспользоваться утилитой pmset и просто указать директорию на HDD.

Утилита простая и документированная - вот вывод моей:

hibernatefile /Volumes/MacintoshHD/.vm/sleepimage

Отключение опции HDD sleep

Довольно спорный момент, делается просто из GUI настроек энергосбережения. Пока что снимаем галку “отключать hdd, когда это возможно”. Дело в том, что некоторые SSD не выходят из спячки и подвисают. Об этом позже.

Перенос SWAP на HDD

Один из самых сложных моментов. Подробно описано тут - сам автор таки указывает на способ БЕЗ использования утилиты wait4path. У меня сработал именно этот метод, правда пришлось переименовать партицию “Macintosh HDD” в “MacintoshHDD” без пробела, ибо экранирование спецсимволов в XML - вопрос сложный.

Перенос Users на HDD

Также ключевой момент. Исчерпывающее описание тут.

Обязательно сделайте так.

RAM Disk для /tmp и /var/run

Красивый хак. Жертвуем около 300мб ОЗУ, но получаем гораздо большую отзывчивость системы и меньший износ SSD. Полное описание процесса тут - занимает 3 минуты.

Отключение Spotlight для SSD

Пожалуй самое неприятное, ибо придется жертвовать функционалом системы.

mdutil -i off - отрубаем полностью

mdutil -E / - чистим индекс

Далее, включаем с помощью командной строки индексирование для HDD и в настройках Spotlight добавляем “/” в игнорируемые. Индексация ваших документов будет идти только для обычного жесткого диска

Правильная переустановка mac ports (если ставили до этого)

Если используете MacPorts, и часть портов приехала с TimeMachine - смело грохайте их согласно руководству. Потом установите их заново и перенесите директорию /opt/local с помощью символической ссылки на HDD (ln -s).

Сборка портов - интенсивный процесс, так пусть же он проистекает на HDD.

Итак, все работает, система грузится с SSD, туда же ставится весь софт. Не забываем переносить пользователей (если нужно создать новых) на HDD с помощью GUI управления пользователями, так как ссылка у нас уже создана.

Возвращаясь к “спячке” жесткого диска. Когда вы убедились, что система стабильна, можно попробовать включить sleep для дисков обратно. В конце концов ничто не мешает его отключить в случае нестабильности.

Теперь нужно правильно настроить бэкапы TimeMachine.

Лучше грохнуть старый ибо структура системы немного изменена.

В новых настройках нужно игнорировать HDD, ибо /Users у нас все равно - ссылка и “как будто” на диске, т.е. в бэкап попадает.

Настройка TimeMachine

Вот с таким количеством геморроя приходится мириться, если нужен SSD.

Слава богу, делается один раз, но стоит задуматься - “отключите опцию А, Б, В, чтобы продлить жизнь вашему SSD”.

Нафига он вообще нужен, если столько всего приходится отрубать ? Пресловутые 15 секунд запуска ?

Решать вам.

Конечно же, можно купить гибридный привод, делающий это все на аппаратном уровне, но тут ситуация такая же - какой файл используется чаще всего ? Swap…Он и будет жить на ваших 8 гигабайтах флеша.


В массы

В трубу