Nas: спустя годы
Обложки альбомов «Illmatic» (1994) и «It Was Written» (1996) американского репера Nas


В этой части мы установим и настроим докер-контейнер с Audiobookshelf для потокового воспроизведения аудиокниг практически на любых устройствах (iOS вроде пока в бете).
В проводнике Windows, на смонтированном ранее сетевом диске, создаем папку "audiobooks".
В папку закидываем наши аудиокниги.
Важно!
Чтобы потом было меньше мороки, сразу делаем правильную структуру папок.
Audiobookshelf автоматически распознаёт порядок томов, если в начале папки стоит числовой префикс.
Рекомендованный формат:
01. Название книги
02. Название книги
03. Название книги
То есть важно:
две цифры (01, 02, 03…) — чтобы порядок был стабильным до 99 книг.


Структура папок (только картинкой, потому как текстом - ломает структуру :(
Как правило, обложки уже находятся внутри папки с книгами и Audiobookshelf сам их подтянет при добавлении.
Эти простые правила, по итогу, сэкономят вам кучу времени, когда будете собирать библиотеку.
Ничего сложного в этом процессе нет.
Заходим в админку Unraid и открываем вкладку Apps.
В поиске вводим audiobookshelf и нажимаем Install.
В настройках контейнера указываем путь к папке с вашими аудиокнигами, например:
/mnt/user/nas/audiobooks/
Сохраняем и запускаем контейнер.
На этом базовая установка завершена.



Установка и настройка контейнера
Теперь в админке Unraid открываем вкладку Docker — там будет отображаться наш новоиспечённый контейнер audiobookshelf.
Чтобы попасть в веб-интерфейс приложения, нажимаем левой кнопкой мыши по контейнеру и выбираем WebUI. Откроется новая вкладка с панелью управления Audiobookshelf.
Первый запуск
При первом входе система предложит задать пароль для пользователя root — создаём новый пароль и попадаем в админку.
Настройка интерфейса
Первым делом открываем Настройки — нажимаем на иконку шестерёнки в правом верхнем углу.
В настройках выбираем русский язык и активируем нужные галочки (как на скриншоте).


Создание пользователей
Теперь переходим во вкладку Пользователи и создаём отдельные аккаунты для себя и родных.
Да, можно пользоваться учёткой root, но это не сильно правильно и не очень безопасно.
Каждый пользователь, по итогу, получает:
свой логин и пароль,
свою историю прослушивания,
собственный прогресс по каждой книге.
Audiobookshelf будет запоминать, где конкретный пользователь остановился, даже если слушает на разных устройствах.
Не забываем заглянуть в настройки автоматического создания бэкапов и выставить параметры в соответствии со своими предпочтениями.




Настало время создать нашу первую библиотеку.
В данном примере я создам её в единственном варианте — по пути, который мы заранее подготовили на NAS, в папке audiobooks.
На моём основном Unraid у меня внутри audiobooks лежит несколько подпапок: detective, fantasy, romance и т.д. Для каждой из них создана своя отдельная библиотека по жанрам. Это удобно, если сервисом пользуются не только вы, но и семья/друзья — у всех свои литературные предпочтения, да и мешанины из разных жанров будет куда как меньше.
Вкладка Подробности
Указываем название библиотеки и путь к папке с аудиокнигами.
Вкладка Настройки
Выставляем галочки так, как на скриншоте.
Вкладка Сканер
Настраиваем параметры сканирования — тоже по образцу на скрине.
От корректных настроек сканера зависит правильный парсинг ваших книг.
Высочайший приоритет отдаём варианту “Folder structure”.
Планировщик
Этот раздел не трогаем.
Ура! Библиотека создана
Жмём кнопку Сканировать и ждём окончания процесса.







Создание библиотеки
Готово — библиотекой уже можно пользоваться.
Но… скорее всего, не для всех книг автоматически подтянулось описание (метаданные). Исправим это.
Наводим курсор на книгу без описания и нажимаем иконку редактирования в правом верхнем углу.
Откроется меню настроек конкретной книги.
Вкладка Match
Начнём отсюда — здесь находится "волшебная" кнопка поиска метаданных.
Выбираем источник метаданных. Для русскоязычных книг вариантов обычно два: Google Books или FantLab.
Правильно указываем название книги и автора.
Жмакаем Поиск.
Если для книги есть описание, оно появится в результатах: обложка, аннотация, автор, жанр и многое другое.
Выбираем подходящий вариант — все данные подтянутся автоматически.
Если у вас уже была собственная обложка и она нравится больше, чем предложенные, просто снимите галочку с замены — тогда сохранится ваша.
Вкладка Cover
Если описание есть, а обложки нет — переходим во вкладку Cover.
Здесь можно выполнить поиск по названию и автору или загрузить свою картинку вручную.
Вкладка Details
Переходим во вкладку Details и любуемся результатом — появилось описание, обложка и корректные метаданные.
Жмём Сохранить, и книга готова!




Слева находится основная навигация по разделам:
Домой — Стартовая страница: краткое меню, последние добавления, "продолжить прослушивание" и т.п.
Библиотека — Все ваши книги в одном списке.
Серии — Книги, сгруппированные по сериям. Очень удобно, если у вас много циклов.
Коллекции — Здесь вы можете создавать собственные коллекции. Они общедоступны внутри вашей библиотеки — все пользователи, имеющие доступ, смогут их просматривать.
Авторы — Каталог авторов. Если вы заполните метаданные, здесь появятся фото, биографические данные и прочая полезная информация.
Чтецы — Поиск и сортировка по чтецам (озвучкам). Особенно удобно, если вы предпочитаете конкретных дикторов.
Статистика — В этом разделе можно посмотреть общую статистику библиотеки, а также свой личный прогресс прослушивания за последний год.




Меню Audiobookshelf
С этим разобрались, теперь посмотрим, как пользоваться Audiobookshelf.
Сервис доступен практически откуда угодно:
с любого устройства через браузер,
через мобильные приложения.
iOS
Точной информации нет — я сам не пользуюсь, но официальное приложение находится в стадии разработки и вроде как уже доступно в бете.
Android
Открываем Google Play.
Ищем приложение Audiobookshelf.
Устанавливаем и запускаем.
После первого запуска делаем несколько простых шагов.
Подключение к вашему серверу
Указываем адрес сервера:
http://tower.local:13378
(Если у вас другой адрес или порт — вводим свой).
Далее вводим логин и пароль пользователя, которого вы создали ранее.
После этого вы попадаете на свой собственный сервер потокового воспроизведения аудиокниг.




Подключение к вашему серверу
Рекомендация: офлайн-прослушивание
Если вы открыли книгу, которую хотите слушать, нажмите кнопку скачивания (стрелочка вниз).
Файл загрузится на устройство — и вы сможете слушать книгу вне локальной сети, даже без интернета.
Это также работает при удалённом доступе к серверу, если вы его настроите.
Но имейте в виду: для внешнего доступа нужен белый (выделенный) IP-адрес, проброс порта на роутере или настройка через Nginx Proxy Manager.
Эти вещи уже выходят за рамки данного поста.
По просьбам небольшого количества пикабушников, я созрел на создание серии постов по созданию своего собственного мультимедийного сервера.
Будет, предположительно, серия постов по созданию собственных потоковых сервисов музыки, кино, аудиокниг и многого другого.
Планирую написать:
1. Альтернатива потоковым видеосервисам (Кинопоиск, Кион и т.д.)
2. Альтернатива потоковым аудиосервисам (Я.Музыка, Звук и т.д.)
3. Альтернатива потоковым аудиокнигам
4. Альтернатива игровым облачным сервисам (GeForce NOW)
5. Альтернатива потоковым видеосервисам для взрослых :)
6. Альтернатива Я.Диску, Облаку Mail и т.д.
Ну и если осилю, напишу про другие плюшки собственного NAS и что на нём можно запустить.
Дисклеймер
Большинство из заявленного можно реализовать довольно бюджетно из старого железа и дисков, но важно понимать, что альтернатива игровым облачным сервисам типа GeForce NOW потребует уже существенно более мощного железа. Та же история с транскодированием видео на лету. Идеальный вариант - процессоры со встроенным видеоядром + видеокарта (если планируете делать игровой стриминговый сервер). Если нет - то достаточно просто процессора со встроенной графикой или вообще без видеокарты и без процессора со встроенным видеоядром, но тогда транскодирование будет возложено уже на него.
Почему Unraid, а не что-то другое?
Ответ прост - я перепробовал практически все операционные системы для NAS и остановил свой выбор на Unraid по одной простой причине - это лучший, хотя и платный вариант для бюджетной версии собственного NAS, у которого адекватные требования по железу, и который можно установить почти на любое старьё, да ещё и до кучи можно использовать безнаказанно сборную солянку из различных HDD/SSD разных производителей и размеров. Но вы можете использовать любую другую ось, если она поддерживает докеры и VM - FreeNAS, TrueNAS, OpenMediaVault или даже встроенные от производителей, типа ThecusOS или QTS от QNAP.
Unraid — это мощная и гибкая операционная система на базе Linux, предназначенная для создания собственного сервера хранения данных (NAS), запуска виртуальных машин и контейнеризированных приложений. Главное преимущество Unraid в том, что система работает с флешки и не требует установки на жесткий диск, что позволяет максимально эффективно использовать все накопители для хранения данных.
Системные требования просты и обязательных не так много:
64-разрядный процессор с тактовой частотой 1 ГГц или выше
Минимум 4 ГБ оперативной памяти для базовой функциональности NAS
Поддержка Linux-драйверов для накопителей, сетевых контроллеров и USB
Дополнительные требования для виртуализации, а они нам конечно же нужны, если мы планируем запускать виртуальные машины - процессор и материнская плата должны поддерживать аппаратную виртуализацию (Intel VT-x/AMD-V) и технологию IOMMU (Intel VT-d/AMD-Vi).
Требования для запуска контейнеров:
Для множества приложений рекомендуется четырехъядерный процессор (2,4 ГГц или выше) и 4-8 ГБ оперативной памяти.
По поводу установки - нам потребуется USB-флешка, с которой Unraid и будет запускаться.
Главное требование - качественная флешка объемом не менее 2 ГБ, хотя рекомендуемый максимальный размер — 32 ГБ. Выбирайте флешки от известных производителей, так как надежность непосредственно влияет на долговечность системы.
Далее у нас два пути - купить или спиратить Unraid :)
О лицензировании:
Пробная версия: 30 дней бесплатно, с возможностью двух продлений по 14 дней (всего 58 дней)
Лицензия Basic (рекомендуется для большинства): поддерживает до 6 дисков в массиве, неограниченное количество VM и приложений
Лицензия Plus и Pro доступны для более продвинутых сценариев
Я буду показывать на триальной версии Unraid, так как это тестовая машина, но поиск никто не отменял и вы можете пойти своим путём спиратить дистрибутив.
Для официального варианта всё максимально просто - скачиваете USB Flash Creator для вашей операционной системы с официального сайта Unraid
и производите минимум действий:
Вставьте USB-флешку в компьютер
Запустите USB Flash Creator и выберите вашу флешку
Нажмите на кнопку Customize, если хотите изменить:
Имя сервера (по умолчанию "Tower")
Режим сети (по умолчанию DHCP)
Параметры загрузки
Нажмите Write для записи образа Unraid на флешку
Процесс может занять несколько минут в зависимости от скорости интернета и скорости записи на флешку.






Установка Unraid на флешку
Здесь есть подробная инструкция от Unraid:
Теперь довольно важный момент - предварительная БАЗОВАЯ настройка вашего железа, а если быть точнее - подготовка BIOS. Материнок множество, но порядок действий примерно один и тот же (Флешка уже должна быть в ПК!). В некоторых случаях или при желании, можно более тонко настроить, но я это пропущу, потому как нас интересуют именно базовые настройки.
BIOS
Заходим в BIOS. Обычно Delete (Del) или F2 при загрузке.
Включить загрузку с USB-устройств — настройте BIOS так, чтобы система загружалась с USB перед жесткими дисками.
UEFI предпочтительнее, но Legacy тоже работает.
Включить функции виртуализации:
Для процессоров Intel:
Intel Virtualization Technology (VT-x) - Enabled
Intel VT-d (Directed I/O) - Enabled
Для процессоров AMD:
AMD SVM (Secure Virtual Machine) или AMD-V - Enabled
AMD IOMMU или AMD-Vi - Enabled
И общая, но очень важная опция:
IOMMU - Enabled
Теперь мы готовы к первому запуску Unraid!



Unraid по умолчанию загружается без графического интерфейса, если он не выбран при старте!
Вы можете выбрать вариант при загрузке самостоятельно.
По умолчанию используется учетная запись root без пароля.
Доступ к веб-интерфейсу
После загрузки системы у вас есть два варианта управления:
Вариант 1: Локальный доступ
Используйте монитор и клавиатуру для прямого взаимодействия с сервером
Вариант 2: Удаленный доступ (рекомендуется)
Если в настройках, при создании флешки вы всё оставили без изменений, и имя сервера - tower, то в браузере, на своём основном ПК вводите:
http://tower.local
Если вы изменили имя хоста при создании USB-флешки (например, на myserver), используйте:
http://myserver.local
Ну или выполнить на самом Unraid простую команду:
ip addr show
которая покажет IP адрес вашего нового сервера.
Откроется веб-интерфейс Unraid (WebGUI)
При первом входе в WebGUI система немедленно попросит вас установить надежный пароль для учетной записи root.
Пароль должен быть не менее 8 символов
Используйте комбинацию прописных, строчных букв, цифр и специальных символов
Регистрация и получение лицензионного ключа
Нажмите на Начало работы (Getting Started) в правом верхнем углу WebGUI
Выберите Войти или Зарегистрироваться на Unraid.net
После входа пробный ключ автоматически загрузится на ваш сервер






Пароль и триальный доступ
Назначение устройств массиву
После регистрации приступите к настройке дисков:
Перейдите на вкладку Main в WebGUI
Вы увидите список всех подключенных устройств:
Диски в массиве (Array)
Диски в пулах (Pool) — кэш-диски
Неназначенные диски
Загрузочное устройство (Flash)
Назначьте диски в соответствии с вашей конфигурацией:
Один диск как Parity (четность) — при отказе этого диска данные восстановятся
Остальные как Data (данные)
Важно: При первом запуске массива система переформатирует диски, поэтому убедитесь, что данные на них вам не нужны.
Первая инициализация дисков может занять от 30 минут до нескольких часов в зависимости от их размера (особенно для дисков объемом 4TB+). Во время инициализации на странице Main будет показан прогресс — система проверяет диски, поэтому не отключайте сервер.
Совет: время от времени скачивайте конфигурацию Unraid. Это можно сделать в WebGUI: Settings → Backup/Restore → Download Backup. Сохраняйте архив в безопасное место — если флешка сломается, вы сможете быстро восстановить все настройки на новой флешке.
Так как мы бюджетники и собрали сервер из того, что было и нам не жалко потерять на нём данные, то Parity мы игнорируем. Если хотим подстраховаться, то диск для Parity должен быть по объёму не меньше самого большого диска в массиве (или равен ему).
Запуск массива
После назначения всех устройств:
Нажмите кнопку Start в разделе Array Operations
Система покажет предупреждение о форматировании — подтвердите действие
Массив начнет инициализацию и монтирование дисков
Этот процесс может занять от нескольких минут до нескольких часов в зависимости от размера дисков и возможностей системы.



Назначение устройств массиву
Базовая конфигурация системы
Настройка сетевого подключения
Перейдите в Settings → Network Settings
Убедитесь, что сетевой интерфейс настроен на получение IP-адреса через DHCP или установите статический IP
Проверьте подключение с помощью команды ping
Включение Docker (для контейнеров)
Docker позволяет запускать изолированные приложения в контейнерах. Для включения:
Перейдите в Settings → Docker
Переключите Docker на Enabled (Включено)
Нажмите Apply
После этого станет доступна вкладка Docker в главном меню, где вы сможете устанавливать и управлять контейнерами.
Включение виртуальных машин
Если ваше оборудование это поддерживает:
Перейдите в Settings → VM Manager и также включите поддержку VM
После чего можно там же подгрузить ISO с драйверами для виртуальных машин
Автоматический запуск массива
Чтобы массив автоматически запускался при включении сервера:
Перейдите в Settings → Disk Settings
Включите Auto Start Array (Автоматический запуск массива)
Нажмите Apply
Это особенно важно, если сервер находится в отдаленном месте и вы не сможете вручную его перезагружать.
Создание общих папок (Shares)
Общие папки позволяют организовать доступ к данным по сети:
Перейдите на вкладку Shares (Общие папки)
Нажмите Add Share (Добавить общую папку)
Введите имя общей папки (например, "Media" для медиа, "Backup" для резервных копий). У меня на скрине это "nas".
Выберите Use Cache (Использовать кэш) если у вас есть быстрые SSD-диски для кэша
Нажмите Create (Создать)
Создание пользователя (User)
Перейдите на вкладку Users (Пользователи)
Нажмите Add User (Добавить пользователя)
Достаточно указать имя пользователя и пароль. Описание - по желанию.
Здесь же, чуть ниже указываем пользователю доступ к нашей шаре.
Базовая настройка Unraid на этом завершена.
Добавление сетевого диска
Теперь мы можем добавить сетевой диск в проводнике Windows.
Правой кнопкой на "Мой компьютер" и "Подключить сетевой диск".
В зависимости от ваших настроек, это будет примерно так:
\\tower.local\nas
Имя пользователя и пароль, который вы создали.
Всё. Первый этап завершен. Продолжим в следующих постах.
P.S. В комментах можете пока написать, что хотели бы увидеть в ближайшей части.
P.P.S. Для юных рукоблудников - альтернатива потоковым видеосервисам для взрослых, будет на сладкое, в последних частях этой серии :)
Долго рассказывать как докатился до жизни такой.
Если вкратце:
Случайно переинициализировал NAS QNAP. Имеющиеся в нем диски теперь видны, но опознаются как "Свободный", монтаж приведет к неизбежной утрате данных. Сами HDD предположительно отформатированы были в Ext4, что под виндой разглядывать бесполезно. Плюс RAID, плюс LVM.
Есть вариант подключить к ПК или ноуту, работающими под убунтой или еще каким линуксом, и при помощи некоторых манипуляций открыть содержимое, а также дать возможность это содержимое извлечь. На хабре есть неплохая статья про это, но для меня это просто манускрипт Войнича.
Собственно говоря, нужна помощь в извлечении данных. Территориально Москва. Естественно подъеду, привезу что нужно.
Поставил перед собой задачу: сделать по-настоящему быстрое файлохранилище для временных файлов при обучении нейросетей: как сами модели (промежуточные чек-поинты), так и данные для обучения. При этом мне нужны как NFS (для пингвинов с видеокартами), так и SMB (закидывать данные для обучения с основного компа и смотреть как там идут дела - подгружать промежуточные чек-поинты и смотреть, что обучение движется в нужном направлении).
Построение быстрой сети - это отдельная тема. Кстати, не так дорого: на буржуйских маркетплейсах есть куча предложений по адекватной (~$150) цене с Mellanox CX414, 416 и иже с ними (40Гбит карты), которые простой перепрошивкой можно убедить в том, что на самом деле они 100Гбит/с.
Некоторое время я с вожделением смотрел на QNAP TBS-h574TX. Но во-первых дороговато, а во-вторых традиционная сеть у него 10Гбит, при том, что для поставленной задачи имеющиеся там два Thunderbolt порта совсем не нужны. Ну и вообще мне не понятно: у этой модели сетевые способности явно сильно хуже, чем то, что способны выдать поставленные в нее накопители.
Пришлось идти своим путем. Была взята плата MSI Pro B860M-A: у нее при mATX форм-факторе есть 3 слота под M2 SSD и 4 PCI-E слота: один х16 под видео, два х1 и один х4. В качестве процессора я поставил Core Ultra 235.
Совсем как Эллочка-Людоедочка конкурировала с миллионершей, я заселил плату пятью SSD Kingston 4TB NV3. Три штуки зашли в предусмотренные производителем разъемы, еще два я поставил в имеющиеся PCI-E x1 слоты через китайский переходник. Теперь по объему я совсем-совсем способен конкурировать с QNAP h574!
Вместо видео в слоте х16 поселилась сетевая карта, перепрошитая на 100Гбит/с.
А оставшийся слот х4 и место в корпусе под CD-ROM заняло бодрое комбо от китайских товарищей: оказывается, китайская промышленность производит "заглушку" в отсек 5.25" с шестью местами под SATA SSD 2.5"! На случай если мне понадобится побольше места, слот PCI-E x4 занял SATA адаптер на 6 портов подключенный к панели на 6 SSD.
В результате система выглядит так:




Для загрузки этой радости я подключил SATA SSD на 250Гб к порту на самой плате. И радостно установил TrueNAS.
Пять дисков объединены в RAIDZ1. Из них трое получают полные PCIE x4 и способны выдать свои примерно 4ГБ/сек (вроде Kingston NV3 способен примерно на это), а два диска ограничены пропускной способностью шины и упираются в лимит 2ГБ/сек. Тем не менее, тесты производительности радуют: 6.7ГБ/сек на запись и 9.3ГБ/сек на чтение:
Сеть тоже работает как задумано. Сервер подключен к 100Гбит порту на Mikrotik CRS510, клиент был подключен к тому же свичу через Breakout Cable: 100Гбит делятся на два "хвоста" по 50Гбит, каждый для отдельного компа.
Всем привет. Задача приобрести и настроить NAS хранилище. Ввиду нестабильной обстановки в мире, многие зарубежные компании свернули свою деятельность на территории России и прекратили поддержку своего продукта. Есть NAS от компании ZyXel, но по причине описанной ранее, пользоваться всеми его функциями на 100% не представляется возможным.
На сегодняшний день есть задача установить дополнительное NAS хранилище, которое будет отвечать следующим потребностям:
- Быстрое локальное хранилище в офисе объемом примерно 10 тб - 20 тб (SSD в приоритете)ж
- Функция удаленного доступа через протоколы WebDav, FTTP и т.д. Необходимо удаленно по средствам интернета иметь доступ к хранилищу на уровне локальной папки на ПК;
- Функция облачного хранилища и доступ через браузерный интерфейс по ссылке и т.д.;
- Функция удаленного доступа к хранилищу через смартфон;
- Удобный интерфейс управления хранилищем.
Как и писал ранее, есть опыт работы с ZyXel NAS542. Мало туториалов о нем в сети, много с чем приходится разбираться методом тыка. Да удаленное подключение к нему со слабым интернетом практически не возможно.
Добрые люди, посоветуйте пожалуйста машинку для таких задач
В наличии сетевое хранилище D-Link DNS-323, старый добрый NAS.
Так случилось, что подгорел на нем сетевой порт LAN. Коротким патч-кордом к роутеру цепляется на 100Мбит, длинным не хочет цепляться никак, иногда на несколько секунд появляется 100Мбитный линк и отваливается. Раньше на длинном кабеле нормально держал гигабит.
На нем есть порт USB, который на сайте производителя описан как "USB Порт встроенного принт-сервера, для подключения принтера".
Можно ли в этот USB воткнуть внешнюю сетевую карту? Ну то есть понятно, что воткнуть можно, но будет ли она работать, при условии что найдутся соответствующие драйвера для этого старого линукса?