Представь, что ты построил надёжную систему резервного копирования на базе TrueNAS, но клиенты упорно не хотят подключаться к серверу urbackup. Знакомая ситуация? Давай разберём эту проблему системно — от установки до тонкой настройки сети.
Что такое urbackup и зачем он на TrueNAS?
UrBackup — это open-source система инкрементного резервного копирования файлов и образов дисков. Её главные преимущества:
- Бесплатность и открытый исходный код
- Поддержка инкрементных бэкапов на уровне блоков
- Клиенты для Windows, Linux и macOS
- Веб-интерфейс для управления
Установка urbackup на truenas даёт тебе централизованную систему бэкапов, где TrueNAS выступает надёжным хранилищем с ZFS.
Установка urbackup на TrueNAS через Jail
Самый стабильный способ — использовать Jail. Давай создадим его с нуля.
Шаг 1: Создание Jail
# В веб-интерфейсе TrueNAS:
# 1. Jail → Add
# 2. Имя: urbackup-jail
# 3. Версия: 13.2-RELEASE (или актуальная)
# 4. DHCP: выключено
# 5. Статический IP: 192.168.1.100 (пример)
# 6. Сохраняем
Шаг 2: Установка urbackup внутри Jail
# Подключаемся к jail через Shell
# или из консоли TrueNAS:
iocage console urbackup-jail
# Обновляем репозитории
pkg update
pkg upgrade -y
# Устанавливаем urbackup-server
pkg install urbackup-server -y
# Включаем автозагрузку
sysrc urbackup_server_enable="YES"
Шаг 3: Настройка хранилища
Критически важный этап — правильно смонтировать Dataset из TrueNAS в Jail:
# В веб-интерфейсе TrueNAS:
# 1. Jail → urbackup-jail → Mount Points
# 2. Add → Source: /mnt/tank/backups/urbackup
# 3. Destination: /mnt/backups
# 4. Read-only: НЕТ
# 5. Сохраняем
# Создаём необходимые директории внутри jail
mkdir -p /mnt/backups/{database,backups,logs}
chown -R urbackup:urbackup /mnt/backups
Конфигурация urbackup-server
Основной конфигурационный файл находится в /usr/local/etc/urbackup/urbackup.conf. Давай настроим его правильно:
# Редактируем конфиг
nano /usr/local/etc/urbackup/urbackup.conf
# Критически важные параметры:
internet_server = false
internet_server_port = 55414
# Пути к данным
database_path = /mnt/backups/database/urbackup.db
backupfolder = /mnt/backups/backups
# Сетевые интерфейсы (ВАЖНО!)
server_bind_to = 192.168.1.100 # IP твоего jail
server_port = 55415
# Лимиты
max_file_incr = 5
max_image_incr = 5
# Авторизация (рекомендуется включить)
internet_mode_enabled = false
internet_server_proxy =
Решение проблемы: urbackup на truenas не видит клиентов
Это самая частая проблема. Давай разберём по пунктам, почему truenas urbackup не видит клиентов и как это исправить.
Причина 1: Сетевые настройки Jail
Jail должен быть доступен в сети. Проверяем:
# Проверяем IP jail
ifconfig
# Должен быть виден твой статический IP
# Проверяем доступность портов извне
# Из другой машины в сети:
nc -zv 192.168.1.100 55415
nc -zv 192.168.1.100 55414
# Если порты закрыты, проверяем брандмауэр jail
ipfw show
# Или отключаем для теста:
sysrc firewall_enable="NO"
service ipfw stop
Причина 2: Настройки брандмауэра TrueNAS
TrueNAS может блокировать трафик к jail. Проверяем:
- В Network → Global Configuration проверь, что брандмауэр выключен
- Или добавь правила для портов 55414-55415 TCP/UDP
Причина 3: Конфигурация клиента
Клиент urbackup должен знать правильный адрес сервера:
# В клиенте Windows/Linux:
# Сервер: 192.168.1.100 (IP jail)
# Порт интернет-сервера: 55414
# Порт сервера: 55415
# Для принудительной отправки клиентом своего адреса:
# В консоли клиента (Windows):
urbackupclient.exe --internet-only --server 192.168.1.100:55414
Причина 4: Запуск и логи сервера
Проверяем, что сервер запущен и слушает порты:
# Проверяем статус сервиса
service urbackup_server status
# Если не запущен:
service urbackup_server start
# Проверяем открытые порты
sockstat -l | grep 554
# Должно быть примерно:
urbackup urbackup_server tcp4 192.168.1.100:55415
urbackup urbackup_server tcp4 192.168.1.100:55414
# Смотрим логи
tail -f /var/log/urbackup/*.log
# Или в реальном времени:
urbackupclient --loglevel debug --console
Таблица портов urbackup
| Порт | Протокол | Назначение | Обязателен |
|---|---|---|---|
| 55414 | TCP | Интернет-сервер (регистрация клиентов) | Да |
| 55415 | TCP | Основной сервер (передача данных) | Да |
| 35623 | UDP | Multicast discovery (автообнаружение) | Нет |
Оптимизация производительности
После того как urbackup на truenas заработал, давай настроим его для максимальной эффективности:
- ZFS настройки: Для Dataset с бэкапами установи recordsize=128K для лучшей производительности с большими файлами
- Ограничение потоков: В веб-интерфейсе urbackup ограничь concurrent_backups до 2-3 для HDD
- Расписание: Настрой бэкапы на ночное время, когда нагрузка на сеть минимальна
- Исключения: Добавь в исключения временные файлы, кэши браузеров
Веб-интерфейс и мониторинг
После запуска сервера, веб-интерфейс доступен по адресу:
http://192.168.1.100:55414
# Логин/пароль по умолчанию: admin/admin
# СМЕНЯЙ ПАРОЛЬ СРАЗУ!
В интерфейсе ты можешь:
- Видеть всех подключённых клиентов
- Настраивать расписания бэкапов
- Мониторить использование дискового пространства
- Восстанавливать файлы напрямую из браузера
Автоматизация и обслуживание
Для автоматической очистки старых бэкапов создай скрипт:
#!/bin/sh
# /usr/local/bin/clean_urbackup.sh
# Очистка логов старше 30 дней
find /var/log/urbackup -name "*.log" -mtime +30 -delete
# Проверка целостности базы данных
sqlite3 /mnt/backups/database/urbackup.db "PRAGMA integrity_check;"
# Перезапуск сервиса раз в месяц для обновлений
# service urbackup_server restart
Добавь в crontab:
# crontab -e
0 3 * * 0 /usr/local/bin/clean_urbackup.sh
Альтернативные методы установки
Если Jail не подходит, рассмотри другие варианты:
- Docker в TrueNAS Scale: Официальный образ urbackup/urbackup-server
- Виртуальная машина: Создай VM с Linux и установи urbackup туда
- Плагин FreeNAS: В старых версиях был официальный плагин
Однако Jail остаётся самым лёгким в обслуживании и производительным вариантом для truenas urbackup.
Частые вопросы (FAQ)
Клиент подключается, но сразу отключается
Проверь версии клиента и сервера — они должны совпадать. Удари клиента с компьютера и установи заново с официального сайта.
Бэкапы работают медленно
1) Проверь нагрузку на диски TrueNAS. 2) Увеличь recordsize в ZFS. 3) В настройках клиента уменьши приоритет процесса бэкапа.
Как обновить urbackup в Jail?
pkg upgrade urbackup-server затем перезапусти сервис. Не забудь сделать бэкап базы данных перед обновлением.
Можно ли использовать доменное имя вместо IP?
Да, в настройках клиента укажи доменное имя, которое резолвится в IP твоего jail. Убедись, что в конфиге сервера server_bind_to указан правильный IP.
Итог
Установка urbackup на truenas — это мощная комбинация надёжного хранилища ZFS и гибкой системы бэкапов. Основные моменты:
- Правильно настрой сеть Jail — 90% проблем с тем, что truenas urbackup не видит клиентов, решаются здесь
- Используй отдельный Dataset с оптимальными ZFS настройками
- Не забывай про безопасность — смени пароль по умолчанию
- Настрой мониторинг и автоматическую очистку
Теперь у тебя есть enterprise-система бэкапов практически бесплатно. Осталось только протестировать восстановление — самый важный этап любой системы резервного копирования.