В эпоху цифрового переизобилия объем личной информации растет экспоненциально. Фотографии, видео, сканы документов, рабочие файлы, библиотеки книг и медиатеки требуют надежного и удобного хранилища. Создание бесплатного домашнего архива — это не просто экономия на облачных подписках, это вопрос приватности, скорости доступа и полного контроля над своими данными.
В этой статье мы подробно разберем, как развернуть собственный домашний сервер (NAS) или программное решение на имеющемся железе, используя исключительно бесплатное и открытое ПО (Open Source), с полной поддержкой русского языка.
Почему стоит отказаться от облаков в пользу локального архива?
- Приватность и суверенитет данных: Ваши файлы не покидают стены дома. Никакие корпорации, спецслужбы или хакеры, взломавшие облачный провайдер, не получат доступ к вашим фото или сканам паспортов.
- Отсутствие ежемесячных платежей: Оплачиваете только электричество и износ дисков. Нет подписок на iCloud, Google One, Яндекс.Диск или Dropbox.
- Скорость локальной сети (LAN): Передача файлов по гигабитной или 2.5/10 Гбит сети происходит в десятки раз быстрее загрузки в интернет и скачивания обратно.
- Неограниченный объем: Ограничен только количеством слотов для дисков в вашем сервере и вашим бюджетом на покупку HDD/SSD.
- Работа без интернета: Архив доступен даже при отключенном провайдере;
Этап 1: Выбор «Железа» (Hardware) — от нуля до профи
Для бесплатного архива не обязательно покупать дорогой брендовый NAS (Synology, QNAP, Asustor). Можно собрать систему самостоятельно или перепрошить старое оборудование.
Вариант А: Перепрошивка готового NAS (Самый простой старт)
Если у вас уже есть NAS от Synology, QNAP, Asustor, TerraMaster или D-Link, вы можете установить на него альтернативные прошивки с открытым кодом, избавившись от проприетарных ограничений и «телеметрии».
- OpenMediaVault (OMV): Устанавливается поверх Debian на почти любое x86/ARM железо. Идеален для новичков благодаря веб-интерфейсу.
- CasaOS / Portainer: Не ОС, а оболочка над Docker для управления контейнерами через браузер. Ставится на любую Linux-систему (Ubuntu Server, Debian, Armbian).
- Unraid (платный, но есть trial) / TrueNAS SCALE (бесплатный): Более продвинутые файловые системы (ZFS, Btrfs).
Вариант Б: Мини-ПК / Тонкий клиент / Старый ноутбук (Бюджетный DIY)
Отличные платформы: Intel NUC (Gen 6-10), Lenovo ThinkCentre/ThinkPad Tiny (M700-M920), HP Elitedesk/ProDesk Mini, Dell Wyse / OptiPlex Micro.
Плюсы: Низкое потребление (10-20 Вт), малый размер, поддержка QuickSync (транскодинг видео в Plex/Jellyfin), дешево на вторичке (Avito/Юла).
Минусы: Обычно 1-2 слота для дисков (M.2 + 2.5″), нужен внешний USB-корпус или док-станция для расширения.
Вариант В: Сборка на обычном ПК / Серверной платформе (Максимальная мощность)
Материнка с поддержкой ECC-памяти (Ryzen PRO, Intel Xeon, встроенные Intel N100/N305), корпус с 4-8 отсеками 3.5″, блок питания 80+ Gold.
Это выбор для серьезных архивов (20+ ТБ), виртуализации (Proxmox) и тяжелых задач.
Этап 2: Выбор Операционной Системы и Файловой Системы
Это сердце вашего архива. Для «русского» домашнего архива критически важна корректная работа с кодировками (UTF-8), регистрозависимостью имен файлов и расширенными атрибутами.
Топ-3 бесплатных решения для 2024-2025 гг.:
- TrueNAS SCALE (ранее CORE) — Лучший для ZFS и надежности.
- База: Debian Linux.
- ФС: ZFS (OpenZFS) — золотой стандарт: контроль контрольных сумм (checksums), самовосстановление (self-healing), снимки (snapshots), дедупликация, сжатие (zstd/lz4).
- Интерфейс: Веб-админка на английском, но данные хранятся в UTF-8 без проблем. Поддержка SMB/NFS/WebDAV «из коробки».
- Приложения: Встроенный Kubernetes (TrueCharts) для развертывания Jellyfin, Nextcloud, Immich, Paperless-ngx одним кликом.
- OpenMediaVault (OMV) — Лучший для гибкости и слабого железа.
- База: Debian (устанавливается поверх минимальной установки).
- ФС: ext4, XFS, Btrfs, ZFS (через плагин), MergerFS (объединение дисков без RAID).
- Плагины: OMV-Extras (Portainer, Compose, Kernel Headers).
- Идеален для: Raspberry Pi, старые ноутбуки, тонкие клиенты. Низкие системные требования.
- CasaOS / Ubuntu Server + Docker (Portainer) — Лучший для «Контейнерного подхода».
- Не NAS-ОС, а удобная оболочка для Docker.
- Вы сами управляете дисками (через
lsblk,mdadm,zpoolилиbtrfsв консоли), а CasaOS дает красивый лаунчер приложений. - Максимальная свобода: любые образы с Docker Hub / GitHub Container Registry.
Всегда используйте UTF-8 (стандарт де-факто в Linux). Избегайте NTFS на системных дисках NAS (проблемы с правами доступа, регистрозависимостью, производительностью). Для внешних дисков-бэкапов используйте exFAT (совместимость с Windows/macOS/TV) или Btrfs/ZFS (если бэкап на другой Linux-машине).
Этап 3: Программный стек «Идеального русского архива» (Docker-контейнеры)
Современный подход, запуск каждого сервиса в изолированном контейнере. Управление через Portainer или Docker Compose (файл docker-compose.yml).
Медиатека: Jellyfin (Альтернатива Plex/Emby)
- Полностью бесплатно, Open Source, без телеметрии.
- Аппаратный транскодинг (Intel QuickSync, NVIDIA NVENC, AMD VAAPI, Raspberry Pi V4L2).
- Отличная поддержка русскоязычных метаданных (TheMovieDB, TheTVDB, Kinopoisk через плагины).
- Клиенты везде: Web, Android, iOS, Android TV, Samsung/LG TV, Kodi.
Фото-архив: Immich (Топ-1 сейчас) или PhotoPrism
- Immich: Написан на TypeScript/Go. ИИ-распознавание лиц (InsightFace), объектов, сцен. Очень быстрый, современный UI, приложение для автозагрузки с телефона (Android/iOS). Требует 4-8 Гб RAM + GPU для ИИ.
- PhotoPrism: На Go. Работает на слабее железе, отличная карта по геотегам, поддержка RAW. Интерфейс на русском есть.
Документооборот: Paperless-ngx (Must Have)
- Сканирует папку «Входящие» (Consumption folder), делает OCR (Tesseract, поддерживает русский язык идеально), индексирует, тегирует, корреспондентов, типы документов.
- Веб-интерфейс на русском. Полнотекстовый поиск по содержимому сканов паспортов, счетов, договоров.
- Интеграция с Telegram-ботами для отправки фото чеков/документов прямо в архив.
Файловый синхронизатор: Nextcloud или Syncthing
- Nextcloud: Полноценное «личное облако»: файлы, календарь (CalDAV), контакты (CardDAV), офис (Collabora/OnlyOffice), Talk, Deck (Kanban). Тяжелый, нужен 2+ Гб RAM, БД (PostgreSQL/MariaDB), Redis.
- Syncthing: P2P-синхронизация папок между устройствами без центрального сервера. Очень легкий, настраивается за минуты, идеален для бэкапа фото с телефона на NAS или синхронизации папки «Работа» между ноутбуком и ПК.
Загрузчик/Менеджер медиа: *Arr Stack (Sonarr, Radarr, Lidarr, Readarr, Prowlarr, qBittorrent/Transmission)
- Автоматизация скачивания сериалов, фильмов, музыки, книг, аудиокниг.
- Prowlarr — централизованный менеджер индексаторов (Jackett устарел).
- Работает с русскими трекерами (RuTracker, NNM-Club, Rutor и др.) при наличии API-ключей.
Резервное копирование НАС: BorgBackup (Vorta GUI) или Restic / Rclone
- BorgBackup: Дедупликация, сжатие, шифрование (AES-256). Лучший для бэкапа на другой локальный диск/NAS.
- Rclone: «Швейцарский нож» для синхронизации с облаками (S3, Yandex Disk, Google Drive, Mega, Dropbox) для offsite-бэкапа (3-2-1 правило). Поддерживает шифрование
crypt.
Этап 4: Архитектура хранения и Стратегия бэкапа (Правило 3-2-1)
Никогда не храните данные в единственном экземпляре на RAID-массиве. RAID (или ZFS RAID-Z) защищает от выхода из строя диска, но не от ошибок контроллера, вирусов-шифровальщиков, пожара, кражи или ошибочного rm -rf.
Структура папок (Рекомендуемая):
/mnt/pool/ # Точка монтирования пула (ZFS/Btrfs/ext4)
├── data/ # Основные пользовательские данные (бэкапятся)
│ ├── media/ # Медиатека (Jellyfin)
│ │ ├── movies/
│ │ ├── series/
│ │ └── music/
│ ├── photos/ # Оригиналы фото (Immich/PhotoPrism)
│ ├── documents/ # Paperless-ngx (consume + data)
│ ├── books/ # Calibre-Web / Readarr
│ └── archives/ # Ручные архивы, бэкапы телефонов, проекты
├── apps/ # Данные контейнеров (configs, DBs) — бэкапятся отдельно
│ ├── jellyfin/
│ ├── immich/
│ ├── paperless/
│ └── nextcloud/
├── downloads/ # Временная папка для *Arr / qBittorrent (НЕ бэкапится)
└── backups/ # Локальные бэкапы конфигов/БД (Borg/Restic репозитории)
Реализация правила 3-2-1:
- 3 копии данных: Оринал (NAS) + Локальный бэкап (второй диск/второй NAS/USB-диск) + Облачный бэкап (Offsite).
- 2 разных типа носителей: HDD (NAS) + HDD/SSD (внешний диск) + Облако (S3/Yandex/Mega).
- 1 копия вне дома (Offsite): Критично. Используйте Rclone + Crypt на Yandex Disk (бесплатно до 10-20 Гб, можно расширить), Mega (20 Гб), Cloudflare R2 / Backblaze B2 / Wasabi (платно, но дешево ~$6/Тб/мес) или второй NAS у родителей/друзей (через Tailscale/WireGuard).
Этап 5: Безопасность и Удаленный доступ (Без «Проброса портов»)
Никогда не открывайте порты 80/443/8096/32400 и т.д. напрямую в интернет! Это приглашение для ботнетов и взлома.
Современный стек безопасного доступа:
- Tailscale (или Headscale — self-hosted): Mesh-VPN на базе WireGuard.
- Устанавливается на NAS (контейнер/бинарник), телефон, ноутбук, ПК родителей.
- Все устройства видят друг друга по статичным IP (100.x.y.z) и DNS-именам (
nas.tailnet.ts.net). - Работает за любыми NAT/CGNAT, без белого IP.
- Бесплатно до 100 устройств (Personal plan).
- Reverse Proxy (Nginx Proxy Manager / Traefik / Caddy) + Authelia / Authentik:
- Один вход (порт 443) в Tailscale -> Reverse Proxy -> Сервисы.
- Автоматические SSL-сертификаты (Let’s Encrypt через DNS-01 challenge или самоподписанные для локали).
- Authelia/Authentik — добавляет 2FA (TOTP, WebAuthn/FIDO2) и Single Sign-On (SSO) ко ВСЕМ сервисам, даже если они не поддерживают 2FA нативно (Jellyfin, qBittorrent, Portainer).
- CrowdSec: Аналог Fail2Ban нового поколения. Анализирует логи Nginx/SSH/Authelia, банит злоумышленников, использует коллективную базу угроз (Community Blocklists). Запускается в контейнере рядом с NPM.
Этап 6: Локализация и комфорт для русскоязычного пользователя
Метаданные медиа (Jellyfin)
- В настройках библиотек выберите агенты: TheMovieDB (язык: Russian), TheTVDB (Russian).
- Плагин Kinopoisk (неофициальный, ставится через репозиторий плагинов Jellyfin), дает рейтинги Кинопоиска, описания на русском, актеров русского кинопроката.
- Настройте Intros (пропуск заставок) и Subs (OpenSubs, Subsource, нужен API ключ).
OCR в Paperless-ngx
В docker-compose.yml для контейнера paperless-ngx убедитесь, что переменная окружения:
PAPERLESS_OCR_LANGUAGES=rus+eng Тогда Tesseract будет идеально распознавать смешанный русский/английский текст.
Клавиатура и Locale в консоли сервера
Выполните на хосте (Debian/Ubuntu/TrueNAS Shell):
sudo dpkg-reconfigure locales
sudo dpkg-reconfigure keyboard-configuration
Имена файлов в Samba/NFS
В smb.conf (или через веб-интерфейс OMV/TrueNAS) для шары установите:
vfs objects = catia fruit streams_xattr
fruit:encoding = native
Пример docker-compose.yml для быстрого старта (Стек «Архивариус»)
Сохраните как docker-compose.yml, создайте папки ./config, ./data рядом, отредактируйте PUID/PGID (узнайте командой id), пароли и запустите docker compose up -d.
version: "3.8"
services:
# --- РЕВЕРС-ПРОКСИ И БЕЗОПАСНОСТЬ ---
nginx-proxy-manager:
image: 'jc21/nginx-proxy-manager:latest'
restart: unless-stopped
ports:
— '80:80' # Только внутри Tailscale/LAN!
⎼ '443:443'
— '81:81' # Админка NPM
volumes:
⎼ ./data/npm/data:/data
⎼ ./data/npm/letsencrypt:/etc/letsencrypt
environment:
TZ: "Europe/Moscow"
authelia:
image: authelia/authelia:latest
restart: unless-stopped
volumes:
— ./config/authelia:/config
environment:
TZ: "Europe/Moscow"
depends_on:
⎼ redis
, postgres # Нужен отдельный контейнер postgres или mariadb
crowdsec:
image: crowdsecurity/crowdsec:latest
restart: unless-stopped
volumes:
, ./config/crowdsec:/etc/crowdsec
— ./data/crowdsec:/var/lib/crowdsec/data
⎼ /var/log/nginx:/var/log/nginx:ro # Логи NPM
environment:
GID: "1000"
UID: "1000"
# --- МЕДИА И ФОТО ---
jellyfin:
image: lscr.io/linuxserver/jellyfin:latest
restart: unless-stopped
network_mode: host # Лучше для DLNA/QuickSync
volumes:
⎼ ./config/jellyfin:/config
— /mnt/pool/data/media:/media # Ваш путь к медиа
environment:
⎼ PUID=1000
⎼ PGID=1000
⎼ TZ=Europe/Moscow
⎼ JELLYFIN_PublishedServerUrl=https://jellyfin.yourdomain.ts.net # Через NPM
devices:
— /dev/dri:/dev/dri # Intel QuickSync (i915)
# — /dev/nvidia.com/gpu=all # NVIDIA (нужен nvidia-container-toolkit)
immich:
image: ghcr.io/immich-app/immich-server:release
restart: unless-stopped
volumes:
— ./config/immich:/config
— /mnt/pool/data/photos:/usr/src/app/upload
environment:
— DB_HOSTNAME=postgres-immich
⎼ DB_USERNAME=immich
⎼ DB_PASSWORD=supersecretpassword
— DB_DATABASE_NAME=immich
, TZ=Europe/Moscow
depends_on:
⎼ postgres-immich
— redis
deploy:
resources:
reservations:
devices:
⎼ driver: nvidia
count: 1
capabilities: [gpu] # Для ML (распознавание лиц)
postgres-immich:
image: postgres:15-alpine
restart: unless-stopped
volumes:
— ./data/postgres-immich:/var/lib/postgresql/data
environment:
POSTGRES_USER: immich
POSTGRES_PASSWORD: supersecretpassword
POSTGRES_DB: immich
redis:
image: redis:7-alpine
restart: unless-stopped
volumes:
— ./data/redis:/data
# --- ДОКУМЕНТЫ ---
paperless-ngx:
image: ghcr.io/paperless-ngx/paperless-ngx:latest
restart: unless-stopped
ports:
⎼ "8000:8000" # Внутри LAN/Tailscale
volumes:
— ./config/paperless:/usr/src/paperless/data
⎼ ./data/paperless/media:/usr/src/paperless/media
⎼ ./data/paperless/consume:/usr/src/paperless/consume
environment:
PAPERLESS_OCR_LANGUAGES: "rus+eng"
PAPERLESS_TIME_ZONE: "Europe/Moscow"
PAPERLESS_REDIS: "redis://redis:6379"
PAPERLESS_DBHOST: "postgres-paperless"
USERMAP_UID: 1000
USERMAP_GID: 1000
postgres-paperless:
image: postgres:15-alpine
restart: unless-stopped
volumes:
— ./data/postgres-paperless:/var/lib/postgresql/data
environment:
POSTGRES_USER: paperless
POSTGRES_PASSWORD: anothersecret
POSTGRES_DB: paperless
# --- ФАЙЛЫ / СИНХРОНИЗАЦИЯ ---
syncthing:
image: lscr.io/linuxserver/syncthing:latest
restart: unless-stopped
ports:
— "8384:8384" # Web UI
— "22000:22000/tcp"
, "22000:22000/udp"
volumes:
— ./config/syncthing:/config
⎼ /mnt/pool/data:/data # Синхронизируем весь пул данных
environment:
⎼ PUID=1000
⎼ PGID=1000
— TZ=Europe/Moscow
# --- БЭКАП НАС (КОНФИГОВ) ---
borgmatic:
image: ghcr.io/borgmatic-collective/borgmatic:latest
restart: "no" # Запускаем по расписанию (cron) или вручную
volumes:
— ./config/borgmatic:/etc/borgmatic.d
— ./config:/source/config:ro
⎼ /mnt/pool/backups:/repository
, /etc/localtime:/etc/localtime:ro
environment:
BORG_PASSPHRASE: "very_long_random_passphrase_here"
TZ: "Europe/Moscow"
Чек-лист запуска «Бесплатного домашнего архива»
- [ ] Железо: Собран/куплен, диски установлены, проходит тест
badblocks -wsv(для новых HDD) илиsmartctl -t long. - [ ] ОС: Установлена TrueNAS SCALE / Ubuntu Server / Debian + OMV.
- [ ] Пул дисков: Создан (ZFS RAID-Z1/Z2, Btrfs RAID1/5/6, mdadm RAID5/6, MergerFS+SnapRAID). Включено сжатие
zstd(ZFS/Btrfs). - [ ] Сеть: Статический IP в LAN. Настроен Tailscale на сервере и клиентах.
- [ ] Docker/Portainer: Установлен и работает.
- [ ] Reverse Proxy (NPM) + Authelia: Развернуты, выданы сертификаты (Let’s Encrypt через DNS или Self-Signed для .local/.ts.net).
- [ ] Сервисы: Развернут стек (Jellyfin, Immich, Paperless, Syncthing, *Arr при необходимости).
- [ ] Локализация: Языки Ru/En в метаданных, OCR, клавиатура, Samba vfs objects.
- [ ] Бэкап 1 (Локальный): Borgmatic/Restic бэкапит
/config(конфиги контейнеров, БД) и критичные данные на отдельный диск/пул каждую ночь. - [ ] Бэкап 2 (Offsite): Rclone Crypt синхронизирует репозиторий Borg / важные фото/документы в облако (Yandex/Mega/B2) раз в неделю/день.
- [ ] Мониторинг: Uptime Kuma (проверка сервисов) + Zabbix/Prometheus+Grafana (здоровье дисков SMART, температура, RAM, CPU).
- [ ] Тест аварийного восстановления (Disaster Recovery): Самый важный пункт. Разверните чистую ВМ, восстановите конфиги из бэкапа, поднимите стек. Убедитесь, что это работает до того, как сломается основной сервер.
Создание бесплатного домашнего архива на русском языке сегодня — это доступная задача для любого энтузиаста с базовыми навыками работы с Linux и сетями. Ключевые столпы успеха:
- Open Source стек (TrueNAS/OMV + Docker + Portainer) — никаких вендор-локинов.
- ZFS/Btrfs + Snapshots — мгновенная защита от «руки дрогнула».
- Правило 3-2-1 с шифрованием (Rclone Crypt / Borg) — гарантия выживания данных при любых катаклизмах.
- Tailscale + Authelia — удобный и безопасный доступ из любой точки мира без белого IP и открытых портов.
- Автоматизация (*Arr, Paperless, Immich ML) — архив живет и пополняется сам;
Начните с малого: старый ноутбук + внешний диск + Ubuntu Server + Docker Compose (файл выше). По мере роста данных и навыков мигрируйте на мощное железо с ZFS и ECC RAM. Ваши данные заслуживают лучшего дома — вашего собственного.
Статья подготовлена для рубрики «Самое главное помнить, что…». Главное помнить: Надежный архив, это не про железо и не про софт, это про регулярно проверяемые бэкапы. Неленый админ — это админ, у которого есть свежий тест восстановления вчерашнего бэкапа.