adblock check

Превращаем Raspberry Pi в Time Capsule от Apple

Создать из популярного одноплатника устройство для бэкапов компьютера на macOS несложно и достаточно быстро

Time Capsule от Apple — это роутер, совмещённый с однодисковым NAS. Его ключевой функцией является возможность сохранять на него полные резервные копии компьютеров на macOS, будучи подключенным по беспроводной сети. Именно эту интересную фичу можно реализовать с помощью недорогого одноплатного компьютера Raspberry Pi. Преимущества у такого решения есть — низкая цена, высокая доступность. Создание подобного устройства будет крайне полезным для владельцев Mac.

Что для этого нужно

Комплект для превращения в Time Capsule такой же, как и для создания обычного домашнего NAS: Raspberry Pi, microSD, блок питания с кабелем, SSD- или HDD-накопитель, переходник SATA-USB. Если у вас роутер с гигабитным Ethernet-портом, то имеет смысл приобрести Raspberry Pi 4B — общая цена проекта получится выше, зато не будет проблем со скоростью обмена данными, и бэкапы будут совершаться быстрее. В качестве диска подойдёт любой формат: будь то 3.5", 2.5" или M.2. Самым удобным ввиду своей компактности будет последний, но если нужен самый бюджетный вариант, то первые два формата сгодятся для этой цели не хуже. Лично я отдал предпочтение 2.5", так как ему не требуется дополнительное питание.

Эмулировать Time Capsule будем под операционной системой Raspberry Pi OS Lite — её я использую для многих проектов, и она хорошо себя зарекомендовала в них. Советую ознакомиться с подробной инструкцией по настройке ОС, описанной в предыдущей статье, — это понадобится для того, чтобы приступить к следующему шагу.

⚠️ Жирным выделены все части команд, которые можно заменить на свои.

Подключение диска

Включили систему, подключились к ней по SSH, подсоединили к «малине» диск? Теперь надо отформатировать накопитель, удалив с него все данные, а затем примонтировать его.

Сначала выполним в терминале команду lsblk — узнаем имя, присвоенное USB-диску. В моём случае это /dev/sda. Надо создать раздел на диске — вводим sudo fdisk /dev/sda. Пишем n, нажимаем Enter, затем p, снова подтверждаем Enter. На следующие вопросы отвечаем нажатием всё той же клавиши Enter, выбирая тем самым стандартные настройки. Делаем это до тех пор, пока не появится сообщение об успешном создании раздела — Created a new partition 1. После этого вводим wи Enter для сохранения изменений.

Форматируем раздел в файловую систему ext4: sudo mkfs.ext4 /dev/sda1. Теперь следует создать точку монтирования командой sudo mkdir /mnt/backup и открыть файл fstab с помощью sudo nano /etc/fstab. В конец fstab добавим следующую строчку:

/dev/sda1 /mnt/backup ext4 defaults,noatime 0 2

Сохраним файл, нажав Ctrl+X, затем Y и подтвердим клавишей Enter. Выдадим права доступа к папке:

sudo chmod -R 777 /mnt/backup && sudo chown pi:pi /mnt/backup

Перезагрузим Raspberry Pi командой sudo reboot и заново подключимся через Termius по SSH.

Установка Netatalk

Программа Netatalk позволяет эмулировать сетевой протокол AFP, который Apple использует для создания бэкапов в Time Machine. Установим её командой:

sudo apt-get install netatalk -y

Затем отредактируем файл конфигурации, открыв его:

sudo nano /etc/netatalk/afp.conf

В конец его содержимого добавим текст, расположенный ниже. В нём я указал модель, которую будет имитировать Raspberry Pi, путь к сетевой папке, созданной ранее, и разрешил доступ только стандартному пользователю pi. Вы можете убрать эту строку или заменить имя аккаунта, если используете другое название.

[Global]
 mimic model = TimeCapsule6,106

[Time Machine]
 path = /mnt/backup
 time machine = yes
 valid users = pi

Сохраним файл, нажав Ctrl+X, затем Y и подтвердим клавишей Enter. Откроем другой файл командой sudo nano /etc/nsswitch.conf и в конец строчки hosts: files mdns4_minimal [NOTFOUND=return] dnsдобавим mdns4 mdnsдля того, чтобы диск можно было обнаружить на боковой панели Finder. Вот так должен выглядеть весь файл:

# /etc/nsswitch.conf
#
# Example configuration of GNU Name Service Switch functionality.
# If you have the `glibc-doc-reference' and `info' packages installed, try:
# `info libc «Name Service Switch»' for information about this file.
passwd: files
group: files
shadow: files
gshadow: files
hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4 mdns
networks: files
protocols: db files
services: db files
ethers: db files
rpc: db files
netgroup: nis

Для того, чтобы в Finder отображалась иконка настоящей Time Capsule, откроем ещё один файл:

sudo nano /etc/avahi/services/afpd.service

Добавим в него строчку:

<txt-record>model=TimeCapsule6,106</txt-record>

Сохраним файл, нажав Ctrl+X, затем Y и подтвердим клавишей Enter.

Запустим необходимые сервисы, выполнив по очереди команды ниже:

sudo service avahi-daemon start
sudo service netatalk start
sudo systemctl enable avahi-daemon
sudo systemctl enable netatalk

Готово, перезагружаемся командой sudo reboot и подключаем диск в macOS.

Настройка бэкапов в macOS

На компьютере с macOS заходим в Finder и нажимаем сочетание клавиш Cmd+K. В открывшемся окне пишем адрес в формате afp://<IP-адрес Raspberry>. В моём случае для подключения к серверу я вводил afp://192.168.88.213. Далее вводим логин и пароль от Raspberry и подтверждаем.

Как только соединение установилось, заходим в «Системные настройки», ищем пункт Time Machine. В нём выбираем в качестве диска для бэкапов Raspberry Pi в локальной сети, вводим снова данные от аккаунта. Теперь вы можете настроить регулярные бэкапы вашего Mac на диск, подключённый к одноплатному компьютеру.

Krokodil707 Krokodil707
>_<。
Комментариев пока нет
Оставьте комментарий...
Оставьте комментарий...