Гид по технологиям

Как использовать Raspberry Pi в качестве сетевого диска Time Machine для Mac

11 min read Резервное копирование Обновлено 24 Dec 2025
Raspberry Pi как сетевой диск Time Machine
Raspberry Pi как сетевой диск Time Machine

How to Use a Raspberry Pi as a Networked Time Machine Drive For Your Mac

Обзор и кому это подойдёт

Этот пошаговый гид покажет, как превратить Raspberry Pi и внешний USB-диск в сетевой диск для Time Machine. Подходит, если у вас один Mac в доме или вы не хотите покупать AirPort Time Capsule (~300 долларов) и предпочитаете гибкость и возможность апгрейда хранилища. Подойдёт тем, кто уверен в базовой работе с Raspberry Pi и умеет подключаться по SSH.

Коротко о терминах:

  • Raspberry Pi — маленький одноплатный компьютер. Используется как сервер.
  • Time Machine — встроенное решение macOS для резервного копирования.
  • Netatalk — серверное ПО, реализующее AFP (протокол, используемый Time Machine).
  • Avahi — служба mDNS/ZeroConf, чтобы устройство появлялось в Finder.

Важно: это практическое решение — «хакинг», а не официальное устройство Apple. Используйте дополнительный офлайн-бэкап для критически важных данных.

Что вы получите в этой статье

  • Полный список оборудования и проверенные рекомендации.
  • Подробная пошаговая инструкция: форматирование диска, установка Raspbian, монтирование, сборка Netatalk, настройка и проверка.
  • Разделы по безопасности, отладке, альтернативам и ограничениям.
  • Критерии приёмки и чек-листы для разных ролей (домашний пользователь, продвинутый пользователь, системный админ).

Что потребуется

  • Raspberry Pi любой модели (подойдет Raspberry Pi 3 и новее). Если у вас очень старый Pi, учтите возможные ограничения по питанию и порту USB.
  • SD-карта или microSD для ОС (16 ГБ и выше для комфортной работы). Рекомендуется карта класса 10/UHS.
  • Блок питания для Pi (оригинальный или совместимый с заявленным током 2–3 A в зависимости от модели).
  • Проводное Ethernet-подключение (Wi‑Fi возможно, но медленнее и менее надежно для больших резервных копий).
  • Внешний жёсткий диск; предпочтительно настольный с собственным питанием. Если используете USB-питание, убедитесь, что диск стабильно работает с Pi или используйте USB-хаб с внешним питанием.
  • Компьютер Mac для форматирования диска и начальной настройки Time Machine.

Бонус: комплект для новичка Raspberry Pi со всеми кабелями и коробкой.

Примеры проблем, которые решает метод:

  • Вы хотите автоматические сетевые бэкапы, но не хотите держать Mac постоянно включённым как сервер.
  • У вас есть лишний внешний диск и недорогой Pi — хотите сэкономить по сравнению с готовым AirPort Time Capsule.

Шаг 1: Подготовьте внешний диск для Time Machine

  1. Подключите внешний диск к Mac.
  2. Откройте Disk Utility (Дисковая утилита).
  3. Выберите диск в боковой панели и нажмите «Erase» (Стереть).
  4. Формат: Mac OS Extended (Journaled) — HFS+. Назовите том, например, “TimeMachine”.

time-machine-create-partition

  1. После форматирования откройте Finder, правой кнопкой мыши кликните диск → Get Info (Сведения).

mac-finder-get-info

  1. В секции «Sharing & Permissions» нажмите замок, введите пароль, затем поставьте галочку «Ignore ownership on this volume» (Игнорировать владение на этом томе). Это упрощает доступ из Linux, где владельцы показывают другие UID/GID.

mac-finder-permissions

Важно: если вы используете APFS или muốn зашифровать диск, Time Machine по сети требует HFS+ (Mac OS Extended) при использовании AFP/Netatalk. Для локального бэкапа на USB-диск APFS сейчас поддерживается, но для сетевых настроек с Netatalk рекомендуем HFS+.


Шаг 2: Установите Raspbian и подключитесь по SSH

  1. Скачайте последнюю Raspbian (Raspberry Pi OS) с официального сайта и запишите образ на SD/microSD (balenaEtcher или Raspberry Pi Imager).
  2. При первой загрузке запустите raspi-config, чтобы изменить пароль pi, включить SSH и (по желанию) расширить файловую систему.

Подключение по SSH с Mac:

ssh pi@

Если адрес Pi неизвестен, посмотрите таблицу DHCP в интерфейсе вашего роутера или используйте утилиты типа nmap:

# замените подсеть на вашу
nmap -sn 192.168.1.0/24

По умолчанию логин: pi, пароль: raspberry — обязательно измените.

Рекомендуемые ранние настройки на Pi:

  • sudo raspi-config → Change User Password.
  • Настройка локали и часового пояса (важно для корректных временных меток бэкапов).
  • Настройка статического IP через роутер или /etc/dhcpcd.conf (статический IP упрощает подключение Time Machine).

Шаг 3: Монтирование внешнего диска на Raspberry Pi

Обновите пакеты и установите поддержку HFS+:

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install hfsprogs hfsplus

Проверьте, какие устройства видит система:

sudo /sbin/parted
(parted) print

Найдите нужный диск (пример /dev/sda) и раздел (например /dev/sda2). Затем выйдите:

(parted) quit

Создайте точку монтирования и добавьте запись в /etc/fstab:

sudo mkdir -p /media/tm
sudo nano /etc/fstab

Добавьте строку (замените /dev/sda2 на ваш раздел):

/dev/sda2 /media/tm hfsplus force,rw,user,auto 0 0

Сохраните и выполните:

sudo mount -a

Если нет ошибок, диск смонтирован. Проверьте права доступа и владельца:

ls -la /media/tm

Совет: если диск не монтируется автоматически при перезагрузке, проверьте сообщения ядра в dmesg и файл /var/log/syslog.


Шаг 4: Сборка и установка Netatalk (рекомендуется свежая версия)

Почему не использовать apt-get install netatalk: репозитории Raspbian могут содержать устаревшую версию Netatalk, несовместимую с современными Time Machine. Рекомендуется собрать последнюю стабильную версию.

  1. Установите зависимости:
sudo aptitude install build-essential libevent-dev libssl-dev libgcrypt11-dev libkrb5-dev libpam0g-dev libwrap0-dev libdb-dev libtdb-dev libmysqlclient-dev avahi-daemon libavahi-client-dev libacl1-dev libldap2-dev libcrack2-dev systemtap-sdt-dev libdbus-1-dev libdbus-glib-1-dev libglib2.0-dev libio-socket-inet6-perl tracker libtracker-sparql-1.0-dev libtracker-miner-1.0-dev

Примечание: команда может быть длинной; терпеливо завершите установку.

  1. Скачайте актуальный tarball Netatalk с официального источника (замените версию на актуальную):
wget http://prdownloads.sourceforge.net/netatalk/netatalk-3.1.10.tar.gz
  1. Распакуйте и войдите в каталог:
tar -xf netatalk-3.1.10.tar.gz
cd netatalk-3.1.10
  1. Конфигурация сборки. Пример опций, используемых автором:
./configure \
--with-init-style=debian-systemd \
--without-libevent \
--without-tdb \
--with-cracklib \
--enable-krbV-uam \
--with-pam-confdir=/etc/pam.d \
--with-dbus-daemon=/usr/bin/dbus-daemon \
--with-dbus-sysconf-dir=/etc/dbus-1/system.d \
--with-tracker-pkgconfig-version=1.0

Если configure завершается без ошибок, приступайте к компиляции:

make

На Pi это может занять значительное время. После успешной компиляции установите:

sudo make install

Проверьте версию Netatalk:

netatalk -V

Если команда выполняется и показывает версию — всё готово.

Совет: если сборка падает из-за отсутствующих библиотек, внимательно читайте вывод configure и устанавливайте недостающие dev-пакеты.


Шаг 5: Настройка Netatalk и avahi

  1. Измените /etc/nsswitch.conf, чтобы добавить mdns и mdns4. Откройте файл:
sudo nano /etc/nsswitch.conf

Найдите строку hosts: и сделайте её такой:

hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4 mdns

Это позволяет устройству появляться в Finder благодаря ZeroConf.

  1. Создайте/отредактируйте сервис avahi, чтобы рекламировать AFP:
sudo nano /etc/avahi/services/afpd.service

Вставьте (точно как ниже):





  %h
  
    _afpovertcp._tcp
    548
  
  
    _device-info._tcp
    0
    model=TimeCapsule
  

Это заставляет Pi выглядеть в сети как “Time Capsule” — Finder покажет знакомый значок.

  1. Настройте конфигурацию Netatalk:
sudo nano /usr/local/etc/afp.conf

Добавьте в конец файла:

[Global]
  mimic model = TimeCapsule6,106

[Time Machine]
  path = /media/tm
  time machine = yes

Пояснения:

  • mimic model — делает устройство более совместимым с Time Machine.
  • path — точка монтирования вашего HFS+ тома.
  • time machine = yes — включение поддержки Time Machine.
  1. Запустите сервисы и включите автозапуск:
sudo service avahi-daemon start
sudo service netatalk start
sudo systemctl enable avahi-daemon
sudo systemctl enable netatalk

Проверьте статус:

systemctl status avahi-daemon
systemctl status netatalk

Если есть ошибки — откройте журнал:

sudo journalctl -u netatalk -b

Шаг 6: Подключение Time Machine на Mac

  1. Откройте Finder — в разделе “Сеть” вы должны увидеть устройство с именем вашего Pi.

finder-raspberry-pi

  1. Я рекомендую подключаться по IP: Command+K → smb:// или afp:// (Time Machine использует AFP через Netatalk). Пример:
afp://192.168.1.11

time-machine-pi-ip-address

  1. Подключитесь как Registered User — используйте учётную запись, которую вы настраивали на Pi (обычно pi и пароль). После монтирования откройте System Preferences → Time Machine и выберите сетевой диск.

time-machine-working

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


Проверка и критерии приёмки

Критерии приёмки — минимальные условия, при которых система считается настроенной:

  • Раздел Time Machine смонтирован на Raspberry Pi и доступен по пути /media/tm.
  • Avahi рекламирует _afpovertcp._tcp и устройство отображается в Finder.
  • Netatalk запущен и показывает корректную версию netatalk -V.
  • macOS успешно выбирает диск в настройках Time Machine и запускает полный бэкап.
  • После перезагрузки Pi службы avahi и netatalk автоматически стартуют и диск доступен.

Чек-листы по ролям

Домашний пользователь:

  • Отформатировал диск в HFS+.
  • Отметил «Игнорировать владение» на Mac.
  • Установил Raspberry Pi OS и включил SSH.
  • Подключил диск, добавил /etc/fstab и смонтировал /media/tm.
  • Собрал и запустил Netatalk, настроил avahi.
  • Подключился к диску через Finder и настроил Time Machine.

Продвинутый пользователь / системный админ:

  • Настроил статический IP для Pi.
  • Настроил автоматические обновления и мониторинг дискового пространства.
  • Настроил ротацию журналов и уведомления (email/telegram) на ошибки netatalk.
  • Разделил права доступа, создал отдельные учётные записи для пользователей.

Безопасность и резервное копирование

Важно понимать риски:

  • По умолчанию доступ по AFP не шифруется. Храните Raspberry Pi и диск в локальной локальной сети за доверенным роутером.
  • Для повышенной безопасности используйте VPN для удалённого доступа или организуйте доступ по SSH-сокету.
  • Никогда не храните единственную копию данных только на этом сетевом диске — держите офлайн-резерв (в другом месте).

Рекомендации:

  • Отключите прямой доступ из Интернета к Pi (перенаправление портов). Если нужен доступ извне — настройте VPN.
  • Используйте сложные пароли и, при возможности, ключи SSH для входа.
  • Регулярно проверяйте SMART-статус диска (smartctl) и размер доступного места.

Устранение неисправностей — пошагово

Проблема: диск не монтируется

  • Проверьте вывод dmesg и /var/log/syslog.
  • Убедитесь, что установлен пакет hfsprogs и hfsplus.
  • Проверьте правильность записи в /etc/fstab и используйте UUID вместо /dev/sdX, чтобы избежать смены имён устройств.

Как использовать UUID:

sudo blkid
# скопируйте UUID и вставьте в /etc/fstab:
UUID=<ваш-uuid> /media/tm hfsplus force,rw,user,auto 0 0

Проблема: устройство не появляется в Finder

  • Проверьте, что avahi-daemon запущен: sudo systemctl status avahi-daemon.
  • Убедитесь, что в /etc/nsswitch.conf есть mdns4 и mdns.
  • Проверьте, нет ли правил фаервола, блокирующих mDNS (UDP 5353).

Проблема: Time Machine показывает ошибку при резервном копировании

  • Посмотрите логи netatalk: sudo journalctl -u netatalk -b.
  • Проверьте права файлов на /media/tm и пользователя, под которым вы подключаетесь.
  • Если бэкап прерывается, проверьте сетевую стабильность и скорость.

Особые случаи и когда это не сработает

  • Если у вас несколько Mac и вы хотите централизованное управление пользователями и квотами — лучше использовать NAS с поддержкой Time Machine или полноценный macOS сервер.
  • Для дисков, отформатированных в APFS и использующих шифрование FileVault, сетевые бэкапы через Netatalk/HFS+ не подходят.
  • Если вам нужна шифрованная передача резервных копий через сеть — рассмотрите использование SMB с шифрованием или туннелирование через VPN.

Альтернативные подходы

  1. Готовые NAS-решения (Synology, QNAP) — простая настройка, GUI и поддержка Time Machine через SMB/AFP.
  2. Использовать другой Mac как сервер — официально поддерживаемое решение, но требует быть постоянно включенным.
  3. Использовать SMB (Samba) вместо AFP — современные macOS версии поддерживают Time Machine через SMB, и это может быть проще в настройке и совместимо с APFS на клиенте в некоторых сценариях.

Короткая рекомендация: если вы хотите максимально простой путь с поддержкой «из коробки» — NAS. Если нужно дёшево и гибко — Raspberry Pi.


Производительность и ограничения

  • Raspberry Pi и USB 2.0/3.0 ограничивают скорость передачи. Для больших первых бэкапов рассчитывайте на часы.
  • Сетевые ограничения: Ethernet быстрее и стабильнее Wi‑Fi. Попробуйте использовать гигабитный Ethernet на модели Pi с поддержкой GBE (Pi 4).
  • Time Machine отправляет инкрементальные данные после первого полного бэкапа. Первое резервное копирование — самый тяжёлый этап.

Примеры конфигураций и шаблоны файлов

Пример /etc/fstab (используя UUID):

UUID=1234-ABCD /media/tm hfsplus force,rw,user,auto 0 0

Пример /usr/local/etc/afp.conf:

[Global]
  mimic model = TimeCapsule6,106

[Time Machine]
  path = /media/tm
  time machine = yes
  # optional: valid users = pi

Пример /etc/avahi/services/afpd.service — уже приведён выше.


Совместимость и миграция

  • Если в будущем вы захотите перейти на SMB (рекомендуется для новых macOS), вы сможете перенести файлы с HFS+ на новый том и настроить Samba с поддержкой Time Machine.
  • Миграция с Netatalk на готовый NAS обычно требует копирования образов sparsebundle или файлов бэкапа.

Полезные команды для мониторинга

  • Проверка дискового пространства на Pi:
df -h /media/tm
  • Просмотр логов netatalk:
sudo journalctl -u netatalk -f
  • Проверка SMART-статуса диска (если поддерживается):
sudo apt-get install smartmontools
sudo smartctl -a /dev/sda

Частые ошибки и их исправление (короткие варианты)

  • “Permission denied” при записи на диск — проверьте права и флаги ownership. Установка “Ignore ownership” на Mac и корректный fstab решают большинство проблем.
  • Netatalk не рекламируется — проверьте avahi и mdns в nsswitch.conf.
  • Time Machine продолжает просить диск заново — убедитесь, что имя share и настройки совпадают и что mounted path неизменен.

FAQ

Q: Можно ли использовать этот диск для других целей, кроме Time Machine?

A: Да, можно. Netatalk будет шарить указанный путь. Однако следите за правами и местом на диске.

Q: Нужен ли мне статический IP для Pi?

A: Необязательно, но рекомендуется; статический IP упрощает подключение и уменьшает вероятность потери подключения после DHCP-реноу.

Q: Можно ли подключаться через Wi‑Fi?

A: Можно, но для больших бэкапов Ethernet предпочтительнее.


Небольшая методология и рекомендации по поддержке

  1. Настройка и тестирование: соберите систему и проведите один полный бэкап в маловажное время (ночь).
  2. Наблюдение: первые 7–14 дней контролируйте ежечасные бэкапы и журналы.
  3. Поддержка: ежемесячно проверяйте SMART и свободное место, обновляйте систему в maintenance window.

Короткая аннотация для соцсетей (100–200 слов)

Короткое объявление: Соберите сетевой диск Time Machine из Raspberry Pi и внешнего жёсткого диска. Это дешёвая и гибкая альтернатива AirPort Time Capsule: форматируйте диск в HFS+, установите Raspbian, соберите Netatalk, настройте avahi и подключитесь через Finder. Детальная инструкция включает шаблоны конфигов, чек‑листы, советы по безопасности и раздел по устранению неполадок. Идеально для одного Mac в доме и тех, кто предпочитает делать всё своими руками.


Итог и рекомендации

  • Raspberry Pi + внешний диск — практичное и дешевое решение для сетевых резервных копий Time Machine.
  • Собирайте последнюю версию Netatalk для лучшей совместимости с современными macOS.
  • Всегда имейте дополнительный офлайн-или внешне расположенный бэкап на случай аппаратной ошибки или пожара.

Экспертное мнение: “Опытные системные администраторы отмечают, что такой подход хорош для домашней и тестовой среды, но для корпоративных данных лучше использовать сертифицированные решения с поддержкой квот, мониторинга и SLA.”

Спасибо за чтение. Если хотите, могу подготовить краткий чек-лист в формате печатного PDF или предоставить команды для автоматизации установки (ansible-скрипт).

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Замена сложного неба в Photoshop
Фоторедактирование

Замена сложного неба в Photoshop

Отправить Live Photo в Twitter как GIF
Социальные сети

Отправить Live Photo в Twitter как GIF

Фото как циферблат Apple Watch — инструкция
How-to

Фото как циферблат Apple Watch — инструкция

Хроматическая аберрация: причины и способы устранения
Фотография

Хроматическая аберрация: причины и способы устранения

Как ограничить комментарии в Instagram
Социальные сети

Как ограничить комментарии в Instagram

Отправлять RSS на почту через IFTTT
Автоматизация

Отправлять RSS на почту через IFTTT