Введение: почему TrueNAS?
Представь, что тебе нужно централизованное хранилище для дома или офиса — место, где будут лежать все важные данные, доступные с любого устройства. TrueNAS — это профессиональное решение с открытым исходным кодом, построенное на FreeBSD и ZFS. В этом руководстве мы разберем все аспекты работы с TrueNAS: от установки до тонкой настройки.
Этот truenas мануал поможет тебе создать надежную систему хранения данных, даже если ты только начинаешь знакомство с сетевыми хранилищами.
Часть 1: Подготовка и установка TrueNAS
1.1 Требования к оборудованию
Прежде чем начать, убедись, что твое железо соответствует минимальным требованиям:
| Компонент | Минимум | Рекомендуется |
|---|---|---|
| Процессор | 64-bit, 2 ядра | 4+ ядер (Intel/AMD) |
| Оперативная память | 8 ГБ | 16+ ГБ ECC |
| Хранилище | 16 ГБ (система) | 2+ диска для данных |
| Сеть | 1 Гбит Ethernet | 10 Гбит или LACP |
1.2 Создание загрузочной флешки
Скачай последний образ TrueNAS CORE или Scale с официального сайта. Для записи используй BalenaEtcher или dd на Linux/Mac.
# Пример записи через dd (Linux/Mac)
dd if=TrueNAS-SCALE-22.12.0.iso of=/dev/sdX bs=1M status=progress
# Замени /dev/sdX на свою флешку!
1.3 Процесс установки
Загрузись с флешки и следуй инструкциям:
- Выбери Install/Upgrade
- Укажи системный диск (SSD рекомендуется)
- Задай пароль root (запомни его!)
- Выбери способ загрузки (UEFI или Legacy)
- Дождись завершения и перезагрузись
Часть 2: Базовая настройка и создание пула ZFS
2.1 Первый вход и сетевая настройка
Открой браузер и перейди по IP, который показала система. Авторизуйся как root с установленным паролем.
Первым делом настрой сеть в Network → Interfaces:
- Назначь статический IP (рекомендуется)
- Проверь шлюз и DNS
- При необходимости настрой LAGG или VLAN
2.2 Создание пула ZFS (Pool)
ZFS — сердце TrueNAS. Давай создадим первый пул:
- Перейди в Storage → Pools
- Нажми ADD
- Выбери диски для пула
- Настрой уровень RAID (vdev)
Выбор уровня RAID ZFS:
- Stripe — нет избыточности, максимальная скорость и объем
- Mirror — RAID1, высокая скорость, 50% полезного объема
- RAIDZ1 — один parity диск, аналог RAID5
- RAIDZ2 — два parity диска (рекомендуется)
- RAIDZ3 — три parity диска для максимальной надежности
# Пример создания пула через CLI (альтернатива веб-интерфейсу)
zpool create -f tank raidz2 /dev/ada0 /dev/ada1 /dev/ada2 /dev/ada3
zpool status tank # Проверка состояния
2.3 Создание наборов данных (Datasets)
Внутри пула создай datasets — это как папки с расширенными функциями:
# Создание dataset с компрессией и квотами
zfs create tank/media
zfs set compression=lz4 tank/media
zfs set quota=500G tank/media
zfs list # Просмотр всех datasets
Часть 3: Настройка общего доступа (SMB, NFS, AFP)
3.1 Создание пользователей и групп
Прежде чем открывать доступ, создай пользователей:
- Accounts → Users → ADD
- Заполни имя, пароль, основную группу
- Укажи домашний каталог (опционально)
- Создай группу для совместного доступа
3.2 Настройка SMB/CIFS (для Windows)
Самый распространенный протокол:
# Конфигурация SMB через веб-интерфейс:
# 1. Services → SMB → включить
# 2. Sharing → Windows Shares (SMB) → ADD
# 3. Выбери dataset и настрой права
# Расширенные настройки в Auxiliary Parameters:
[global]
server min protocol = SMB2_10
smb encrypt = required
3.3 Настройка NFS (для Linux/Mac)
# /etc/exports настройка через веб-интерфейс
# Sharing → Unix Shares (NFS) → ADD
# Пример ручного монтажа с клиента:
mount -t nfs 192.168.1.100:/mnt/tank/media /mnt/nas-media
# Для автоподключения в /etc/fstab:
192.168.1.100:/mnt/tank/media /mnt/nas-media nfs rw,hard,intr 0 0
Часть 4: Расширенные возможности TrueNAS
4.1 Снапшоты и репликация
Одна из сильнейших сторон ZFS — моментальные снапшоты:
# Создание снапшота
zfs snapshot tank/media@$(date +%Y%m%d)
# Просмотр снапшотов
zfs list -t snapshot
# Восстановление из снапшота
zfs rollback tank/media@20240115
# Автоматические снапшоты через Tasks → Periodic Snapshot Tasks
4.2 Docker и виртуализация (TrueNAS SCALE)
В TrueNAS SCALE есть встроенная поддержка Docker (через Kubernetes):
# Установка приложения (например, Plex):
# 1. Apps → Available Applications
# 2. Найди Plex → Install
# 3. Настрой пути к данным и сеть
# Просмотр запущенных контейнеров:
k3s kubectl get pods -n ix-plex
4.3 Мониторинг и оповещения
Настрой мониторинг в System → Alert Services:
- Email уведомления (SMTP)
- Telegram/Slack через webhook
- Проверка SMART дисков
- Мониторинг свободного места
Часть 5: Безопасность и обслуживание
5.1 Рекомендации по безопасности
- Измени пароль root после первой настройки
- Отключи SSH доступ для root (используй sudo)
- Настрой фаервол (Network → Firewall)
- Регулярно обновляй систему
- Используй VPN для доступа извне
5.2 Резервное копирование конфигурации
Экспортируй конфиг в System → General → Save Config. Храни его в безопасном месте.
5.3 Обновление системы
TrueNAS обновляется через веб-интерфейс:
- System → Update
- Загрузи обновление
- Примени его (система перезагрузится)
- Всегда делай бэкап конфига перед обновлением!
Заключение
Этот truenas мануал покрывает основные аспекты работы с TrueNAS. Помни, что ZFS — мощная, но сложная система. Начинай с простых конфигураций, тестируй снапшоты и репликацию на тестовых данных, и только потом переноси на продакшен.
TrueNAS — это не просто файловое хранилище, а целая экосистема для данных. Освоив его, ты получишь профессиональное решение уровня enterprise для дома или бизнеса.
Часто задаваемые вопросы (FAQ)
Можно ли установить TrueNAS на виртуальную машину?
Да, но с ограничениями. Для тестирования — отлично. Для продакшена настоятельно рекомендуется физическое железо с прямым доступом к дискам (PCI passthrough в VM).
В чем разница между TrueNAS CORE и SCALE?
CORE — на FreeBSD, проверенная временем стабильность. SCALE — на Linux (Debian), имеет встроенный Kubernetes и лучше поддерживает Docker-контейнеры. Для дома часто выбирают SCALE.
Как восстановить данные если пул не импортируется?
Попробуй: zpool import -f tank. Если не помогает — экспортируй пул и импортируй заново. Всегда имей актуальные снапшоты на другом носителе!
Почему ZFS ест много памяти?
ARC (Adaptive Replacement Cache) использует RAM для кеширования. Это не утечка, а фича для ускорения работы. Можно ограничить: zfs set zfs_arc_max=4294967296 (4 ГБ).