Перенёс macOS на внешний NVMe: iMac 2019 через бокс Ugreen стал вдвое быстрее
Поставил macOS Sequoia на внешний NVMe XPG SX8200 Pro в боксе Ugreen и перенёс все программы со старого SATA SSD. Показываю установку по шагам, ловушки, замеры скорости и как проверить, что TRIM работает через USB.
Содержание
- 1Что я купил
- 2Почему внешний, а не внутрь
- 3Шаг 1. Подключение и первая ловушка
- SMART через бокс
- 4Шаг 2. Форматирование в «Дисковой утилите»
- 5Шаг 3. Замер скорости до установки
- 6Шаг 4. Скачиваю установщик macOS
- 7Шаг 5. Установка на внешний диск — и вторая ловушка
- 8Шаг 6. Перенос программ и данных
- 9Результат: система на XPG
- Скорость: было и стало
- 10Работает ли TRIM через USB
- Включён ли TRIM в системе
- Проверка по журналу загрузки
- 11Старый BX500 — на резерве
- 12Если что-то не так
- 13Чек-лист
- 14Что дальше
- 15Частые вопросы
- Можно ли загружать iMac с внешнего SSD постоянно?
- Насколько быстрее внешний NVMe, чем SATA SSD внутри?
- Работает ли TRIM на внешнем SSD в macOS?
- Почему внешний диск подключён на 480 Мбит/с?
- Нужно ли переустанавливать программы после переноса?
- Что будет, если отключить внешний диск?
- Почему smartctl не видит NVMe в боксе?
В прошлых статьях я разбирался, почему мой iMac тормозил после замены диска и почему дешёвый SSD Crucial BX500 в нём подвисает даже с TRIM. В конце я обещал перенести систему на внешний NVMe. Перенёс.
Внутрь iMac я не лез: BX500 остался на месте как запасной загрузочный диск. Новый NVMe живёт снаружи, в боксе Ugreen, и подключён к порту USB-C на задней стенке. macOS Sequoia я поставил на него с нуля, а потом перенёс программы и данные со старого диска через «Ассистент миграции».
Ниже — весь путь по шагам, с ловушками, на которые я наступил, и замерами скорости до и после 🚀.
Что я купил

- 💾 SSD: ADATA XPG SX8200 Pro на 512 ГБ, M.2 2280, PCIe 3.0 x4. В системе он называется «ADATA SX 8200PNP». Важно, что у него есть DRAM-кэш, — почему это главное для системного диска.
- 📦 Бокс: Ugreen на чипе Realtek RTL9210B, USB 3.2 Gen 2 (10 Гбит/с). По описанию продавца поддерживает TRIM и UASP. Бокс у меня уже был.
- 🔌 Кабели: в комплекте с боксом идут USB-C — USB-C и USB-C — USB-A. Я подключил кабель C–C к порту USB-C (Thunderbolt 3) на задней стенке iMac.

Почему внешний, а не внутрь
В моём iMac 21,5″ 2019 года разъём NVMe на плате не распаян. Внутрь можно поставить только SATA SSD — с потолком около 550 МБ/с. Чтобы поменять внутренний диск, нужно отклеивать экран, а для обратной сборки нужен новый комплект клеевых лент. Второй раз я этим заниматься не хотел.
Внешний NVMe через USB 10 Гбит/с упирается в шину, а не в сам диск: теоретический максимум — около 1,2 ГБ/с, на практике выходит около 1 ГБ/с. Это всё равно примерно вдвое быстрее любого SATA SSD. Для полной скорости NVMe нужен бокс Thunderbolt 3, но он стоит в несколько раз дороже.
Шаг 1. Подключение и первая ловушка
Я вставил SSD в бокс, подключил его к iMac — и диск не появился. Ни на рабочем столе, ни в «Дисковой утилите». Проверил, на какой скорости подключился бокс:
system_profiler SPUSBDataType | grep -B2 -A12 -i ugreenВ строке скорости было «До 480 Мбит/с» — это USB 2.0. Сам диск в списке не значился вообще.
Оказалось, я не до конца вставил SSD в разъём M.2 внутри бокса. Подтолкнул плату — она вошла до упора. После этого бокс определился как «До 10 Гбит/с», а в системе появился диск на 512 ГБ.
Тот же результат можно посмотреть в «Информации о системе»: меню → «Об этом Mac» → «Отчёт о системе» → раздел USB.

Здесь видно всё нужное: идентификатор продукта 0x9210 и поставщик Realtek — это и есть RTL9210B, скорость «До 10 Гбит/с», диск 8200PNP на 512 ГБ. Бокс потребляет 896 мА из доступных 900, так что отдельное питание ему не нужно.
SMART через бокс
Утилита smartctl из Homebrew до NVMe за мостом RTL9210B в macOS не достучалась — ответила Not a device of type 'scsi'. Сам macOS при этом пишет в «Информации о системе» «Статус S.M.A.R.T.: Проверен». Подробный SMART диска можно посмотреть, вставив SSD в ПК с Windows или Linux, либо подключив бокс к ним.
Шаг 2. Форматирование в «Дисковой утилите»
Перед установкой macOS диск нужно стереть целиком и создать на нём правильную схему разделов.
- Откройте «Дисковую утилиту» (Программы → Утилиты).
- Включите Вид → Показать все устройства (⌘ + 2). Без этого утилита показывает только тома, и стереть получится раздел, а не весь диск со схемой разделов.
- В разделе «Внешние» выберите сам диск — у меня это «ADATA SX 8200PNP Media», а не том под ним.

- Нажмите «Стереть» и задайте: имя — любое (я назвал диск XPG), формат — APFS, схема — Схема разделов GUID.


После стирания в разделе «Внешние» появился том XPG на 511,9 ГБ, подключённый по USB.

Шаг 3. Замер скорости до установки
Пока диск пустой, я сравнил его со старым BX500 простым тестом dd: запись файла 2 ГБ и его чтение. Между записью и чтением команда purge сбрасывает файловый кэш, чтобы macOS не отдавала файл из оперативной памяти.
cd /Volumes/XPG
dd if=/dev/zero of=test.bin bs=1m count=2048
sudo purge
dd if=test.bin of=/dev/null bs=1m
rm test.bin; cd ~dd в конце печатает строку вида … bytes transferred in … secs (… bytes/sec). Последнее число — скорость в байтах в секунду. Делите на миллион и получите МБ/с. Для BX500 те же команды я запускал в домашней папке.
Результаты — в таблице ниже, рядом с замером после установки системы.
Шаг 4. Скачиваю установщик macOS
Установщик macOS Sequoia обычно скачивают из App Store или из «Обновления ПО». Я пошёл через Терминал — сразу посмотреть, какие версии доступны:
softwareupdate --list-full-installers
softwareupdate --fetch-full-installer --full-installer-version 15.8.1Первая команда показала список полных установщиков, вторая должна скачать нужную версию. У меня она долго висела на Scanning for 15.8.1 installer, а потом упала с ошибкой PKDownloadError с кодом 8 — это тайм-аут загрузки.
Выручил прямой адрес. В тексте ошибки был указан URL пакета InstallAssistant.pkg на сервере Apple (https://swcdn.apple.com/…). Я скачал его через curl с возможностью докачки:
cd ~/Downloads
curl -L -C - -o InstallAssistant.pkg "АДРЕС_ИЗ_ТЕКСТА_ОШИБКИ"- 🔁
-C -— продолжить загрузку с места обрыва. Если соединение порвётся, запустите ту же команду ещё раз. - ↪️
-L— следовать перенаправлениям.
14,5 ГБ скачались примерно за 5 минут. Пакет, скачанный не из App Store, обязательно проверьте на подпись Apple:
pkgutil --check-signature ~/Downloads/InstallAssistant.pkgВ ответе должно быть Status: signed Apple Software, а в цепочке сертификатов — Apple. Если подписи нет, файл не запускайте.
Пакет не устанавливает macOS сам: он кладёт приложение «Установка macOS Sequoia» в папку «Программы».
sudo installer -pkg ~/Downloads/InstallAssistant.pkg -target /Шаг 5. Установка на внешний диск — и вторая ловушка
Запустите «Установку macOS Sequoia» из «Программ», примите лицензию и дойдите до выбора диска.


Дальше iMac несколько раз перезагрузится сам. Не отключайте бокс и не задевайте кабель, пока идёт установка: при обрыве связи диск придётся стирать и начинать заново. После установки iMac загрузился уже с XPG и открыл «Ассистент настройки», как у нового Mac.
Шаг 6. Перенос программ и данных
Заново ставить все программы и настраивать систему я не хотел. На экране «Перенос данных на этот Mac» в «Ассистенте настройки» выберите «С Mac, из резервной копии Time Machine или с загрузочного диска».

В качестве источника подойдёт внутренний диск: он виден как отдельный том «iMac». Сеть и второй компьютер для этого не нужны.

Затем выберите, что переносить. У меня получилось так:
| Что | Объём |
|---|---|
| 📱 Программы | 63,38 ГБ |
| 👤 Учётная запись iMac (документы, настройки, данные программ) | 106,34 ГБ |
| 📁 Другие файлы и папки | 932,2 МБ |
| ⚙️ Система и сеть | 253 КБ |
| Всего к переносу | 170,64 ГБ |

Я оставил галочки на всём. «Ассистент миграции» сам создал учётную запись с тем же именем и паролем, перенёс программы из папки «Программы», настройки, связку ключей, Wi‑Fi и общие настройки системы.

170 ГБ с внутреннего SATA SSD на внешний NVMe перенеслись примерно за 20–30 минут.

Результат: система на XPG
После миграции в «Об этом Mac» загрузочный диск — XPG, macOS Sequoia 15.8.1. Свободно 336,1 ГБ из 511,9 ГБ.

Скорость: было и стало
Тот же тест dd с файлом 2 ГБ, что и выше:
Тест dd, файл 2 ГБ | BX500 (SATA, внутри) | XPG пустой | XPG с системой |
|---|---|---|---|
| ✍️ Запись | 435 МБ/с | 997 МБ/с | 980 МБ/с |
| 📖 Чтение | 430 МБ/с | 1016 МБ/с | 966 МБ/с |
Внешний NVMe получился в 2,2–2,3 раза быстрее внутреннего SATA SSD — даже с системой и данными. Небольшая просадка после миграции в пределах погрешности: на диске уже 170 ГБ данных, и в фоне работает система.
В обычной работе я пока тестирую систему, и сильно больших изменений на глаз не заметил. Если со временем что-то проявится, допишу сюда.
Это последовательная скорость больших файлов. Для отзывчивости системы важнее мелкие операции и задержки, но здесь главное отличие не в цифрах: XPG с DRAM-кэшем не «застревает» так, как BX500, которому однажды понадобилось несколько часов без питания, чтобы снова начать отвечать.
Работает ли TRIM через USB
Главный вопрос, который у меня оставался. TRIM нужен SSD, чтобы знать, какие блоки свободны. Без него диск со временем медленнее пишет. Через USB-мосты TRIM проходит не всегда — это зависит от чипа бокса.
Включён ли TRIM в системе
Для сторонних SSD macOS включает TRIM только после команды sudo trimforce enable. У меня она была выполнена ещё для BX500, а настройка общая для всех дисков и хранится в NVRAM — после миграции заново включать её не пришлось. Внутренний BX500 в «Информации о системе» → SATA так и показывает «Поддержка TRIM: Да».

А вот для дисков USB такой строки в «Информации о системе» нет. Посмотрите на скриншот раздела USB выше: «Статус S.M.A.R.T.» есть, а «Поддержка TRIM» — нет. Поэтому проверять нужно по журналу.
Проверка по журналу загрузки
При каждой загрузке APFS проходит по свободному месту и отправляет диску команды TRIM. Этот проход пишется в системный журнал:
log show --last boot --predicate 'eventMessage CONTAINS "spaceman_scan_free_blocks"' --style compact--last boot показывает записи с момента последней загрузки, фильтр оставляет только строки о сканировании свободных блоков. Команда работает несколько секунд — журнал большой.
… spaceman_scan_free_blocks: disk3 scan took … (no trims)
… spaceman_scan_free_blocks: disk3 81569948 blocks trimmed in 4684 extents (2730 us/trim, 366 trims/s)Что значат цифры:
- 🧱 81 569 948 блоков по 4 КБ — это около 334 ГБ, почти всё свободное место на XPG (336,1 ГБ). Диск получил TRIM для всего свободного пространства.
- 🧩 4684 фрагмента (extents) — свободное место на новом диске почти не раздроблено.
- ⏱️ 366 команд в секунду — на весь проход ушло около 13 секунд. Это работа в фоне после загрузки, на скорость входа в систему она не влияет.
Для сравнения, на внутреннем BX500 в том же журнале было 7,35 млн блоков в 159 193 фрагментах — свободное место после года работы раздроблено в 34 раза сильнее, чем на новом диске.
Итог: через бокс на RTL9210B TRIM в macOS Sequoia работает. С другими чипами (например, JMicron или ASMedia) результат может отличаться — проверяйте по журналу.
Старый BX500 — на резерве
Внутренний диск я не стирал. На нём осталась прежняя система macOS 15.7.9 со всеми данными. Если с внешним диском что-то случится, iMac можно загрузить со старого:
- ⚙️ Системные настройки → Основные → Загрузочный диск — выбрать «iMac» и перезагрузиться.
- ⌥ При включении держать ⌥ Option — появится меню выбора диска.
Загрузочным по умолчанию после установки стал XPG. Если вы отключите бокс, iMac при следующем включении загрузится с внутреннего диска.
Если что-то не так
| Симптом | Что проверить |
|---|---|
| Диск не виден, бокс на 480 Мбит/с | SSD вставлен в разъём не до конца; кабель только для зарядки |
| В «Дисковой утилите» нельзя выбрать схему GUID | Не включён «Вид → Показать все устройства», выбран том вместо диска |
| Установщик не видит внешний диск | Диск не отформатирован в APFS или подключён через USB-хаб |
softwareupdate падает с PKDownloadError | Скачайте InstallAssistant.pkg по адресу из ошибки через curl -L -C - |
| macOS встала на старый диск | В установщике не выбрали внешний диск: по умолчанию стоит внутренний |
| Mac не загружается с внешнего диска | На Mac с T2 разрешите загрузку с внешних носителей в «Утилите безопасности загрузки» |
| Неясно, работает ли TRIM | log show --last boot и строка blocks trimmed для вашего диска |
Чек-лист
Что дальше
🐧 На резерве у меня теперь два варианта: старая macOS на BX500 и свободное место на XPG. Возможно, попробую поставить на внешний диск Linux рядом с macOS — если получится, расскажу. Новые статьи сначала выходят в Telegram-канале.
Частые вопросы
Можно ли загружать iMac с внешнего SSD постоянно?
Да. Для macOS внешний загрузочный диск ничем не хуже внутреннего, если он подключён напрямую, а не через хаб. Главное — не задевать кабель: при обрыве связи система зависнет, а открытые файлы могут повредиться.
Насколько быстрее внешний NVMe, чем SATA SSD внутри?
Через USB 10 Гбит/с — примерно вдвое. У меня dd показал около 1 ГБ/с против 430 МБ/с у SATA SSD. Через бокс Thunderbolt 3 тот же NVMe выдаст в 2–3 раза больше, но такие боксы заметно дороже.
Работает ли TRIM на внешнем SSD в macOS?
Зависит от чипа бокса. С мостом Realtek RTL9210B и включённым trimforce у меня работает. Проверить можно командой log show --last boot --predicate 'eventMessage CONTAINS "spaceman_scan_free_blocks"': ищите строку blocks trimmed для вашего диска.
Почему внешний диск подключён на 480 Мбит/с?
Так работает USB 2.0. Чаще всего SSD вставлен в разъём бокса не до конца или кабель USB-C рассчитан только на зарядку. Проверьте скорость в «Информации о системе» → USB: для бокса 10 Гбит/с должно быть «До 10 Гбит/с».
Нужно ли переустанавливать программы после переноса?
Нет. «Ассистент миграции» переносит программы, учётную запись, настройки и данные. Иногда приходится заново войти в отдельные программы и сервисы.
Что будет, если отключить внешний диск?
iMac загрузится с внутреннего диска, на котором осталась прежняя система. Вернуть загрузку с внешнего можно в «Системных настройках» → «Загрузочный диск» или через ⌥ Option при включении.
Почему smartctl не видит NVMe в боксе?
Мост USB передаёт команды SMART не всегда, а smartctl в macOS работает через него не со всеми боксами. У меня через RTL9210B он выдал Not a device of type 'scsi'. Подробный SMART можно посмотреть, подключив бокс к ПК с Linux или Windows.
Если статья пригодилась — отметьте, это помогает выбирать темы
Статья помогла?
Комментарии
Пока никто не написал. Будьте первым — вопрос или свой опыт одинаково полезны.