Арендованный Mac mini с подключённым внешним диском превращается в полноценный узел частного облачного хранилища: Time Machine для версионных бэкапов, SMB для общего доступа, rsync для кастомных сценариев. В статье разбираем архитектуру на уровне файловой системы, сравниваем варианты с NAS и облачными хранилищами, и приводим практические команды для развёртывания.
Архитектура Time Machine на уровне APFS
Time Machine не просто копирует файлы — он использует возможности APFS для эффективного хранения версий. Под капотом работают hard links (жёсткие ссылки) и снапшоты APFS. При инкрементальном бэкапе неизменённые файлы не дублируются: создаётся hard link на тот же inode. Изменившиеся блоки записываются через Copy-on-Write (CoW). Это позволяет держать множество «снимков» при минимальном расходе места: типичный overhead для инкремента — 5–15% от изменённого объёма, а не полная копия.
На уровне ядра macOS (XNU) бэкап-поток идёт через backupd и fseventsd: последний отслеживает изменения ФС в реальном времени, backupd формирует список изменённых путей и синхронизирует их с целевым томом. Протокол между источником и целью — Apple Filing Protocol (AFP) для старых macOS; с macOS High Sierra и выше предпочтителен SMB (SMB2/3), так как AFP устарел и в будущих версиях macOS будет удалён.
Почему Mac mini + внешний диск, а не NAS
NAS даёт сетевой доступ, но Time Machine на SMB-шаре NAS нередко страдает от несовместимости реализаций SMB и особенностей прошивки (QNAP, Synology и др.). На выделенном Mac mini с локально подключённым диском Time Machine работает нативно: никаких протокольных нюансов, полная поддержка APFS, FileVault на целевом томе. Плюс — можно одновременно использовать тот же Mac как CI-машину для Xcode: бэкап и сборки на одном bare-metal экземпляре без деления ресурсов с «соседями».
Сравнение вариантов хранения
| Параметр | Публичное облако (iCloud, Dropbox) | NAS | Mac mini + внешний диск (VNCMac) |
|---|---|---|---|
| Time Machine | Нет нативного режима | SMB, возможны сбои | Полная нативная поддержка |
| Стоимость 2 ТБ | ≈ $10–30/мес | Железо + диск (капитал) | Аренда + диск (операционные) |
| Резидентность данных | Серверы провайдера | Ваш объект | Регион провайдера (выбор при наличии) |
| Производительность | Ограничена сетью | Зависит от NAS | USB-C/Thunderbolt до 40 Gbps |
| Доп. нагрузки (CI, Xcode) | Нет | Ограничено | Один Mac — бэкап + сборки |
Практика: настройка Time Machine на арендованном Mac mini
VNCMac даёт bare-metal Mac mini с USB-C/Thunderbolt. Подключаем внешний диск (рекомендуется APFS, ёмкость не менее 2× от размера тома-источника). Далее — «Системные настройки» → «Общие» → «Time Machine» → «Добавить диск бэкапа». Time Machine сразу начнёт первичное копирование.
# Проверка подключённых томов
diskutil list
# Включить удалённое управление (VNC) для доступа
sudo systemsetup -setremotelogin on
# Состояние бэкапа (после настройки)
tmutil status
SMB-шара как общее хранилище
Помимо Time Machine, Mac mini может выступать файл-сервером. «Системные настройки» → «Общие» → «Общий доступ к файлам» — включаем SMB, добавляем папки. Клиенты (другие Mac, Windows, Linux) подключаются через smb://ip-адрес/имя_шары. Для удалённого доступа из интернета — только через VPN или SSH-туннель; голый SMB наружу не выносить.
# Проверка SMB-шаров
smbutil statshares -a
# Монтирование с другого Mac
mount_smbfs //user@mac-mini-ip/ShareName /tmp/mount
rsync для кастомного автобэкапа
Если нужен контроль над расписанием и логикой (например, исключение определённых путей, синхронизация в облако после локального бэкапа), используем rsync и launchd. Rsync передаёт только дельту (инкрементально), что минимизирует трафик и время. Запуск по расписанию — через plist в ~/Library/LaunchAgents/.
# Инкрементный бэкап каталога на внешний диск
rsync -avz --delete /path/to/source /Volumes/BackupDisk/
# С сохранением прав и владельцев (требует sudo)
sudo rsync -avz --delete -E /path/to/source /Volumes/BackupDisk/
Производительность и потолок
Mac mini M2/M4 с внешним SSD по USB-C даёт последовательную запись 500–1000 MB/s (зависит от диска). Time Machine при инкременте редко упирается в диск — чаще в сеть при удалённом источнике. При локальном источнике (тот же Mac) первичный бэкап 500 ГБ — порядка 1–2 часов; инкременты — минуты. Для круглосуточной работы в аренде важно: Mac mini потребляет 15–50 Вт, что экономично для 24/7 режима у провайдера.
«Арендованный Mac mini с внешним диском — это не только CI/Xcode, но и полноценный узел частного облака: Time Machine, SMB, rsync. Один bare-metal экземпляр без гипервизора, полная поддержка APFS и FileVault.» — Техническая команда VNCMac
Безопасность: FileVault и доступ
Внешний том для бэкапа следует форматировать в APFS с включённым FileVault (шифрование). В «Дисковой утилите» при создании тома — опция «Шифровать». SSH-доступ к Mac — только по ключу, VNC — только через SSH-туннель. При сдаче аренды — переустановка macOS и при необходимости документированное стирание тома для соответствия политикам удаления данных.
Итог
Аренда Mac mini с внешним диском позволяет развернуть частное облачное хранилище с нативным Time Machine, SMB-шарами и кастомным rsync. Архитектура опирается на APFS, hard links и инкрементальную передачу — без избыточного дублирования. По сравнению с NAS — нет проблем совместимости Time Machine; по сравнению с публичным облаком — полный контроль резидентности и стоимости при 24/7 доступности. VNCMac bare-metal Mac даёт физический экземпляр без гипервизора для комбинированной нагрузки: бэкап + сборки + файл-сервер.