Зачем тратить 300 долларов на AirPort Time Capsule, если вы можете сделать ее самостоятельно с помощью Raspberry Pi и внешний жесткий диск ? Требуется небольшая настройка, но как только все будет настроено, ваш Mac автоматически выполнит резервное копирование без каких-либо усилий с вашей стороны. Больше не нужно подключать диск к компьютеру.
Еще лучше: когда придет время восстанавливать файлы, вы можете отключить жесткий диск от Pi и подключить его непосредственно к Mac, что позволит вам восстановиться после полного сбоя системы с помощью System Recovery. Подобные хаки не работают.
Что вам понадобится
Мы показали вам как сделать резервную копию вашего Mac с помощью Time Machine , и даже как выполнять резервное копирование Time Machine по сети . Но в этих руководствах для резервного копирования по сети требовался другой Mac, выступающий в качестве сервера. Так что, если вы живете в семье с одним Mac, вы можете подумать, что ваш единственный вариант - это подключить жесткий диск USB или купить Apple Time Capsule за 300 долларов.
Это не правда. Raspberry Pi, подключенный к внешнему жесткому диску, является отличной импровизированной альтернативой Time Capsule или другому Mac, и он намного дешевле. (Да, Time Capsule действительно включает в себя функции маршрутизатора, поэтому на самом деле это достойная цена за то, что он предлагает, но этот метод позволяет использовать любой маршрутизатор, который вы хотите, и предлагает больше возможностей для обновлений, когда на вашем диске заканчивается место.)
В этом руководстве предполагается, что вы уже знакомы с основами как настроить Raspberry Pi . Также требуется немного оборудования:
- Raspberry Pi. Подойдет любая модель, но текущая модель Raspberry Pi 3 Модель B .
- SD-карта для операционной системы Raspberry Pi. В старых версиях Raspberry Pis будет использоваться стандартная SD-карта, в то время как для новых потребуется карта microSD, поэтому убедитесь, что выбрали правильный тип. Вот отличный список карточек проверено на работоспособность Pi.
- Блок питания для Pi. Порт питания Pis - это просто microUSB, но мы рекомендуем приобрести блок питания, предназначенный для Pi для надежной работы - это из CanaKit работает хорошо.
- Проводное сетевое соединение для вашего Pi (вы можете использовать Wi-Fi, но для этого потребуется больше настроек, а проводное будет намного лучше для тех больших резервных копий по сети)
- An внешний жесткий диск , который вы подключите к Pi через USB. Мы рекомендуем приобрести внешний жесткий диск для настольного компьютера с собственным выделенным блоком питания, если у вас нет накопителя с питанием от USB, который был протестирован для работы с Pi.
Вы можете получить большую часть этого (и даже больше) одним махом с хороший стартовый комплект Raspberry Pi, как этот , или вы можете купить их отдельно. Ваш звонок.
Я узнал об этом методе из сообщение в блоге Калеба Вудса , и заполнил несколько вещей, которые мне не помогли, прочитав этот пост на Badbox.de . Моя искренняя благодарность вам обоим.
И последнее замечание: по моему опыту, этот хак работает довольно хорошо, но, в конце концов, это все еще просто хак. По этой причине я рекомендую иметь какую-нибудь резервную копию помимо этого, желательно что-нибудь за пределами офиса. (Вам следует в любом случае всегда есть резервная копия вне офиса , в случае пожара или другого стихийного бедствия.)
СВЯЗАННЫЕ С: Как сделать резервную копию вашего Mac и восстановить файлы с помощью Time Machine
Шаг первый: подготовьте внешний диск для Time Machine
Первое, что вам нужно сделать, это подготовить внешний диск для работы с Time Machine. Подключите диск к Mac, затем запустить Дисковую утилиту . Выберите внешний диск и нажмите кнопку «Стереть». Вам нужно отформатировать диск как «Mac OS Extended», также известный как HFS +.
Затем мы хотим убедиться, что ваш Raspberry Pi и каждое устройство будут иметь разрешение на управление диском. Перейдите в Finder, затем щелкните правой кнопкой мыши диск на боковой панели. Щелкните «Получить информацию».
В нижней части открывшегося окна вы найдете настройки разрешений.
Нажмите на замок внизу справа и введите свой пароль. Затем установите флажок «Игнорировать владение этим томом». Теперь вы готовы подключить внешний диск к Pi.
Шаг второй: установите Raspbian на свой Pi и подключитесь к нему через SSH
Затем вам нужно будет настроить Raspberry Pi с Raspbian, как изложено в этой статье . Мы не будем подробно описывать процесс здесь, так как это проект сам по себе, поэтому ознакомьтесь с этим руководством, чтобы настроить Raspbian на вашем Pi. Я использовал Raspbian Core для своей настройки, так как я не подключал Pi к дисплею, но нет причин, по которым полная версия Raspbian с графическим интерфейсом не будет работать.
Кстати говоря, у вас есть два варианта, когда дело доходит до остальной части этого урока. Вы можете подключить свой Raspberry Pi к клавиатуре и монитору и настроить все таким образом, или вы можете подключиться к своему Pi через SSH и запускать каждый шаг, не выходя из своего Mac. Мы думаем, что метод SSH намного проще, чем поиск случайного монитора, поэтому вот как это сделать.
Запустите Терминал на вашем Mac, затем введите следующую команду:
Замена
192.168.1.11
с IP-адресом вашего Pi. Вы можете
найти IP-адрес любого устройства, подключенного к вашей сети
, включая Raspberry Pi, перейдя в веб-интерфейс маршрутизатора.
Затем вам будет предложено ввести пароль для пользователя по умолчанию,
число Пи
. Пароль для
число Пи
по умолчанию
малина
.
Если вы впервые подключаетесь к новой системе, я предлагаю вам настроить несколько параметров, прежде чем продолжить. Первый забег
sudo raspi-config
и измените пароль по умолчанию. Вы также можете расширить файловую систему по умолчанию здесь, если у вас есть большая SD-карта (хотя в этом руководстве это не обязательно). Raspberry Pi перезапустится, после чего вы будете готовы приступить к работе.
Шаг третий: установите внешний диск
Прежде чем вы сможете настроить Time Machine, вам необходимо смонтировать диск, чтобы Raspberry Pi мог читать и писать на него. Для этого требуется установка некоторого программного обеспечения. Во-первых, убедитесь, что все программное обеспечение на Pi обновлено. Выполните эти две команды одну за другой:
sudo apt-get update
sudo apt-get upgrade
Затем установите два пакета: hfsprogs и hfsplus. Это позволит вашему Raspberry Pi читать ваш диск, отформатированный на Mac.
sudo apt-get install hfsprogs hfsplus
Теперь у вас есть программное обеспечение, способное монтировать ваш диск, но оно должно знать, какой диск монтировать, поэтому вам нужно будет провести некоторое исследование. Начните с запуска Parted.
sudo / sbin / расстались
Затем введите
Распечатать
чтобы увидеть список подключенных в данный момент дисков. Здесь вы должны увидеть свой внешний диск.
На этом скриншоте видно, что у меня накопитель Maxtor на 164 ГБ (я обещаю, что позже приобрету еще больший). Важная информация здесь
/ dev / sda
. у вашего диска будет аналогичное имя, которое вы должны записать.
Затем посмотрите на таблицу под этим блоком текста. В моем случае очевидно, что я ищу второй, более крупный раздел. Поэтому я отмечаю, что раздел, который я хочу смонтировать,
Правда
. Вам может понадобиться немного другое число, если у вас более одного диска или более одного раздела на вашем диске.
Теперь, когда у вас есть необходимая информация, введите
уволиться
и нажмите Enter. Далее мы собираемся создать папку, которая будет нашей точкой монтирования…
судо мкдир -п /медиа/тм
… А затем добавьте информацию в файл fstab. Используйте эту команду, чтобы открыть текстовый редактор:
судо нано / и т. д. / fstab
Вставьте следующую строку в документ, заменив
/ Dev / с 2
с разделом вашего диска, если он отличается от / dev / sda2.
/ dev / sda2 / media / tm hfsplus force, rw, пользователь, авто 0 0
Вставив текст, нажмите Control + X, чтобы выйти из редактора, не забудьте сохранить, когда вы это сделаете.
Затем смонтируйте диск с помощью:
sudo mount -a
Если вы не видите сообщения об ошибке, поздравляем! Вы успешно смонтировали свой диск.
Шаг третий: скомпилируйте и установите Netatalk
Netatalk - это программа, имитирующая AFP, сетевой протокол, который Apple в настоящее время использует для резервного копирования Time Machine. Вы можете установить старую версию Netatalk, используя
sudo apt-get install netatalk
, но
Я настоятельно рекомендую вам не делать этого
. По (в основном политическим) сложным причинам Debian, на котором построен Raspbian, предлагает в своих репозиториях очень устаревшую версию Netatalk. Вы можете заставить Time Machine работать, используя эту устаревшую версию Netatalk, но, по моему опыту, это разочаровывает.
Поэтому я рекомендую вам скомпилировать последнюю версию. Установить его сложнее, но оно того стоит.
Во-первых, вам нужно установить зависимости. Вот все, что вам нужно для установки, с помощью одной команды:
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 systemtap-sdt-dev libdbus-1-dev libdbus-glib-1-dev libglib2.0-dev libio-socket-inet6-perl трекер libtracker-sparql-1.0-dev libtracker-miner-1.0-dev
Установка может занять некоторое время. Затем загрузите последнюю версию Netatalk. На момент написания это 3.1.10, хотя вы можете проверить домашняя страница netatalk чтобы получить номер последней версии. Затем запустите эту команду, чтобы загрузить его:
wget http://prdownloads.sourceforge.net/netatalk/netatalk-3.1.10.tar.gz
Замените номер версии, если вы найдете более позднюю версию на их сайте.
Теперь распакуйте загруженный файл:
tar -xf netatalk-3.1.10.tar.gz
Затем переключитесь на новую папку, которую вы только что создали.
компакт-диск netatalk-3.1.10
Затем вы можете настроить все параметры netatalk перед компиляцией программы, используя эту команду:
./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
Если вы не видите сообщений об ошибках, вы можете перейти к следующему этапу и запустить:
сделать
Это займет некоторое время. С таким же успехом можно приготовить себе кофе, булочки и ужин из трех блюд. Raspberry Pi не быстро компилирует программное обеспечение.
Когда все будет сделано, можно, наконец, установить Netatalk:
sudo make install
Разве это не весело? Быстро проверьте, действительно ли Netatalk запущен:
нетаталк -В
Вы увидите много информации о вашей настройке Netatalk. Если все в порядке, давайте настроим!
Шаг четвертый: настройте Netatalk
Теперь, когда Netatalk установлен, вам нужно указать ему, чтобы он предоставил общий доступ к вашему диску. Сначала вам нужно отредактировать
nsswitch.conf
.
Судонано / Etc / Nssi tic. Кон ф
Здесь нужно добавить
mdns4
а также
mdns
на строку, начинающуюся с «hosts:», чтобы она выглядела так:
хосты: файлы mdns4_minimal [NOTFOUND=return] dns mdns4 mdns
Эта настройка означает, что ваш диск Time Machine будет отображаться на боковой панели Finder, как только вы подключите Raspberry Pi к сети.
Далее вам нужно будет отредактировать
afpd.service
:
Судонано / Etc / Aahi / Seruisse s / Afpd. Ser ゔ
Скопируйте этот блок текста и вставьте его в этот файл:
<? xml version = "1.0" standalone = 'no'?> <! - * - nxml - * ->
<! DOCTYPE service-group SYSTEM "avahi-service.dtd">
<сервисная группа>
<name replace-wildcards = "yes">% h </name>
<услуга>
<type> _afpovertcp._tcp </type>
<port> 548 </port>
</service>
<услуга>
<type> _device-info._tcp </type>
<port> 0 </port>
<txt-record> модель = TimeCapsule </txt-record>
</service>
</service-group>
Помимо прочего, эта информация заставляет ваш Raspberry Pi имитировать настоящую Apple Time Capsule с соответствующим значком.
Наконец, пришло время настроить внешний диск как сетевой ресурс.
Судонано / U sr / ぉ ka l / Etc / A fp. Кон ф
Внизу этого документа вставьте следующий текст:
[Global] мимическая модель = TimeCapsule6,106 [Time Machine] путь = / media / tm машина времени = да
Если хотите, между вторыми скобками можно поставить другое имя, чем «Машина времени». Это изменит имя диска, на который вы выполняете резервное копирование, как показано в Finder и Time Machine.
Наконец, запустите сетевые службы. По порядку выполните эти две команды:
sudo сервис avahi-daemon start
sudo service netatalk start
Ваш диск теперь доступен в сети. Чтобы это происходило каждый раз, когда вы запускаете Raspberry Pi, введите эти команды снова, одну за другой:
sudo systemctl включить avahi-daemon
sudo systemctl включить netatalk
Мы очень близки!
Шаг пятый: подключитесь к своей машине времени
Перейдите в Finder на своем Mac, и вы должны увидеть здесь свой Raspberry Pi.
Фактически вы можете подключиться отсюда, нажав «Подключиться как» и введя те же имя пользователя и пароль, которые вы используете для подключения по SSH.
Однако по моему опыту Time Machine работает лучше, если вы подключаетесь к диску через его IP-адрес, особенно если вы настроить статические IP-адреса на вашем маршрутизаторе (что вам, вероятно, следует). Чтобы подключиться, откройте Finder, затем нажмите Command + K на клавиатуре.
После того, как вы подключили диск, перейдите в Системные настройки> Time Machine, затем выберите диск в качестве резервной копии Time Machine.
Начальное резервное копирование будет запущено, а после этого резервное копирование будет происходить каждый час. Теперь у вас есть сетевой диск Time Machine. Наслаждайтесь!