Заметку написал скорее для себя, что бы собрать все в одну кучу. Написана на базе нескольких разрозненных, по интернету, статей.
Исходные данные: приобрел миникомпьютер Intel NUC
- Процессор: Pentium N3700 - 4 физических ядра, 2.4ГГц.
- Оперативная память: 8Гб.
- SSD диск: 450Гб Kingston.
- USB-3 порты: 4 штуки.
- Средняя стоимость (на 20 марта 2020): 9 500 рублей.
- PS: Диск и оперативка приобретаются отдельно. Мне, суммарно обошелся в 15 500 руб.
Приобрел для использования в качестве домашнего файлохранилища, вебсервера, медиа хранилища и хранения бекапов.
Достаточно компакный, производительный (для обозначенных выше целей) - можно даже порабатать, если не предъявлять высоких требований.
К компьютеру подключено 2 HDD диска по 1-ому террабайту по USB-3.
Задача: настроить хранение бекапов macOS: Time Machine.
Обозначу важный, для меня, момент: на компьютере установлена Windows 10 Pro, так как нужна для некоторых работ. Но сервер TimeMachine буду запускать в подсистеме Linux (ubuntu 18LTS) прямо внутри Windows. В качестве хранилища резервных копий используется один из подклченных (по USB) дисков.
Устанавливаем WSL на Windows 10
Для начала, идем в:
Панель управления > Все элементы панели управления > Программы и компоненты > Включение и отключение компонентов Windows
включаем "Подсистема Windows для Linux" дожидаемся установки и перезагружаем систему
После перезагрузки идем в Microsoft Store, находим и устанавливаем приложение Ubuntu 18LTS
После установки, находим Ubuntu в списке программ и запускаем. Нас запросит придумать логин пользователя и дважды ввести пароль (нужно придумать). Станет доступна командная оболочка bash.
Здесь заходим с правами sudo и выполняем обновление репозиториев (обновление самой ubuntu по желанию, можно позже)
sudo su
Вводим придуманный пароль
apt update
TimeCapsule в подсистеме Windows для Linux
Дальше, все достаточно просто. Устанавливаем и настраиваем netatlk, с бекапированием TimeMachine на внешний диск. Все диски, которые подключены к компьютеру, автоматически монтируются в /mnt/БУКВА_ДИСКА. Я буду использовать диск /mnt/e
Устанавливаем netatalk - бесплатная open-source реализация протокола Apple Filling Protocol, позволяющая общаться по сети с компьютерами Macintosh по родному протоколу, отображаться в сетевом окружении Finder'a, а так же будет возможно подключение сетевого диска Linux к TimeMachine без дополнительных настроек и "хаков" мака.
apt install netatalk
После установки, открываем на редактирование файл /etc/netatalk/AppleVolumes.default. Можете установить редактор nano, командой apt install nano
nano /etc/netatalk/AppleVolumes.default
В самый низ добавляем строчку, только, проверьте свой путь до диска с бекапами и имя пользователя (у меня camouf)
/mnt/e "TM" allow:camouf options:userdots,upriv,tm
Далее, в файл /etc/nsswitch.conf, в строчку hosts: files mdns4_minimal [NOTFOUND=return] dns дописывем mdns4 mdns. Должно получиться так:
Создаем файл /etc/avahi/services/afpd.service с содержимым:
<?xml version="1.0" standalone='no'?><!--*-nxml-*-->
<!DOCTYPE service-group SYSTEM "avahi-service.dtd">
<service-group>
<name replace-wildcards="yes">%h</name>
<service>
<type>_afpovertcp._tcp</type>
<port>548</port>
</service>
<service>
<type>_device-info._tcp</type>
<port>0</port>
<txt-record>model=Xserve</txt-record>
</service>
</service-group>
Поочередно запускаем / перезапускаем: dbus, avahi и netatlk, выполняя команды
/etc/init.d/dbus start
/etc/init.d/avahi-daemon start
/etc/init.d/netatalk restart
В общем-то и все, на macOS проходим в настройки TimeMachine и добавляем нашу "Time Capsule". В процессе попросит ввести логин и пароль пользователя ubuntu
PS: Само собой, данная заметка сгодится и для запуска сервера TimeMachine на ubuntu запущенной полноценно, на любом компьютере (имею ввиду, установленной на компьютер физически).
Также, внутри данной подсистемы Windows для Linux можно запустить и вебсервер (или хостинг панель).