FLibGoLite logo
  • Документация 
  • Выпуски 

  •  Язык
    • English
    • Русский
    • Українська
Docs
    • Введение
    • Руководство пользователя
    • Расширенное руководство
    • Использование Docker
    • Сборка из исходников
    • Часто задаваемые вопросы
    • Введение
    • Руководство пользователя
    • Расширенное руководство
    • Использование Docker
    • Сборка из исходников
    • Часто задаваемые вопросы

Расширенное руководство

Расширенная и тонкая настройка

Содержание
  • Параметры запуска
  • Тонкая настройка
    • 1. Главный файл настройки
    • 2. Настройка расположения папки с книгами
    • 3. Настройка OPDS
    • 4. Советы по локализации
    • 5. База данных перечня книг
    • 6. Ведение журнала
    • 7. Аутентификация

Параметры запуска  

Чтобы просмотреть параметры запуска, в командной строке наберите ./flibgolite -help

Использование: flibgolite [ПАРАМЕТР] [каталог данных]

Без ПАРАМЕТРОВ программа будет работать в консольном режиме (Ctrl+C для выхода)
Внимание: одновременно можно использовать только один ПАРАМЕТР.

ПАРАМЕТР должен быть одним из:
 -service [действие] - управление системным сервисом FLibGoLite
    где действие одно из: 
      install (установить), 
      start (запустить),
      stop (остановить), 
      restart (перезапустить), 
      uninstall (удалить), 
      status (статус)
 -reindex - очистить каталог, а затем сканировать папку с книгами, чтобы заново добавить книги в базу данных
 -config - создать файл конфигурации по умолчанию в папке ./config для настройки
 -help - отобразить эту справку
 -version - вывести информацию о версии

каталог данных - не является обязательным (по умолчанию это текущий каталог)

Примеры:

Откройте Powershell от имени администратора и выполняйте команды
flibgolite                     #Запустить FLibGoLite в консольном режиме

flibgolite -service install    #Установить FLibGoLite как системную службу
flibgolite -service start      #Запустить службу FLibGoLite
Откройте терминал и выполняйте команды, используя sudo
./flibgolite                          #Запустить FLibGoLite в консольном режиме

sudo ./flibgolite -service install    #Установить FLibGoLite как системную службу
sudo ./flibgolite -service start      #Запустить службу FLibGoLite

Тонкая настройка  

1. Главный файл настройки  

Понятный файл конфигурации config.yml создается вместе с деревом папок при первом запуске программы в подпапке config папки, в которой лежит исполняемый файл программы flibgolite. Для тонкой настройки config.yml можно редактировать.
Содержимое по умолчанию следующее:

  • config.yml
library:
  # Book folders
  STOCK: "books/stock" # Book stock
  #TRASH: "books/trash" # Error and duplicate files and archives will be moved to this folder 
  #NEW: "books/new" # Uncomment the line to have separate folder for new acquired books

genres:
  TREE_FILE: "config/genres.xml"
 
database:
  DSN: "dbdata/books.db"
  # Delay before start each new acquisitions folder processing
  POLL_DELAY: 300 
  # Maximum parallel new acquisitions processing routines
  MAX_SCAN_THREADS: 10
  # Book queue size
  BOOK_QUEUE_SIZE: 20000
  # File queue size
  FILE_QUEUE_SIZE: 20000
  # Maximum number of books in one transaction
  MAX_BOOKS_IN_TX: 20000
  # Level of checking new books for duplicates: N - no check, F - fast check (default) by CRC32, S - slow check by CRC32 or title and plot comparison
  DEDUPLICATE_LEVEL: "F"

# Logs are here
logs:
  # To redirect the log output to console (stdout) just comment out the appropriate line OPDS or SCAN
  OPDS: "logs/opds.log"
  SCAN: "logs/scan.log"
  # Logging levels: D - debug, I - info, W - warnings (default), E - errors
  LEVEL: "W" 

opds:
  # OPDS-server port so opds can be found at http://<server name or IP-address or localhost>:8085/opds
  PORT: 8085
  # OPDS-server title that is displayed in a book reader
  TITLE: "FLib Go Go Go!!!"
  # OPDS feeds entries page size
  PAGE_SIZE: 20
  # Latest books period in days
  LATEST_DAYS: 14
  # Do not convert FB2 to EPUB format if set to true, default: false
  NO_CONVERSION: false

locales:
  # Locales folder. You can add your own locale file there like en.yml, ru.yml, uk.yml
  DIR: "config/locales"
  # Default english locale for opds feeds (bookreaders opds menu tree) can be changed to:
  # "uk" for Ukrainian, 
  # "ru" for Russian 
  DEFAULT: "en"
  # Accept only these languages publications. Add others if needed please. Set "any" to accept any language 
  ACCEPTED: "en, ru, uk"

# Authentication
auth:
#   Set METHOD to none or comment out METOD line for no authentication
#  METHOD: "none"
# 
#   Set METHOD to plain for http basic authentication with plain text master credentials from config.yml
#  METHOD: "plain"
#   and fill authentication credentials in plain text format username:password 
#  CREDS: "username:password"
...

2. Настройка расположения папки с книгами  

По умолчанию FLibGoLite добавляет в OPDS-каталог книги из папки books/stock и никуда их не перемещает. Чтобы изменить местоположение папки, просто отредактируйте соответствующую строку в config.yml

  STOCK: "books/stock" # Book stock

и замените books/stock на нужный вам путь к папке.

  Предостережение

В путях вместо обратного слэша \ используйте прямой слэш /.

Также это можно сделать при помощи создания ссылки на другую папку на диске, где лежат ваши книги.
Например:

Откройте Powershell и выполните команду создания соединения каталогов
mklink /J .\books D:\path\to\books
Откройте терминал и выполните команду создания символьной ссылки
ln -s /path/to/books ./books

3. Настройка OPDS  

3.1. Вы можете изменить HTTP-порт OPDS по умолчанию 8085 на свой

# OPDS-server port so opds can be found at http://<server name or IP-address>:8085/opds
PORT: 8085

3.2. Здесь вы можете установить желаемое имя сервера OPDS, отображаемое в читалке

# OPDS-server title that is displayed in a book reader
TITLE: "FLib Go Go Go!!!"

3.3. Вы можете изменить количество книг, которые ваша читалка будет загружать за раз при пролистывании страницы или обновлении экрана

# OPDS feeds entries page size
PAGE_SIZE: 20

  Предупреждение

Не устанавливайте это значение существенно больше значения по умолчанию. Это может сделать обновление страницы или пролистывание экрана некомфортным.

3.4. Вы можете отключить преобразование формата FB2 в EPUB при загрузке книг на читалку, просто раскомментируйте строку, чтобы установить NO_CONVERSION в значение true

# Do not convert FB2 to EPUB format
NO_CONVERSION: true

4. Советы по локализации  

Для дополнительной локализации есть несколько простых настроек.

4.1. По умолчанию обработка новых книг ограничена английскими, русскими и украинскими книгами. Вы можете расширить этот перечень добавив нужные теги IETF  , такие как de, fr, it и т. п.

# Accept only these languages publications. Add others if needed please.  Set "any" to accept any language 
ACCEPTED: "en, ru, uk"

  Примечание

Установите значение any, чтобы принимать книги на любом языке.

ACCEPTED: "any"

4.2. По умолчанию читалка будет отображать меню и комментарии на английском языке en, если вы хотите на русском, вы можете изменить эту настройку на ru.

# Default english locale for opds feeds (bookreaders opds menu tree) can be changed to:
# "uk" for Ukrainian, 
# "ru" for Russian 
DEFAULT: "en"

Если в первом запросе к каталогу OPDS читалка отправляет заголовок Accept-Language с указанием языка, то запрошенный язык будет установлен как язык по умолчанию.

  Примечание

Чтобы оставить единственный язык, можно удалить все файлы локалей в папке config/locales, кроме выбранного языка по умолчанию. В этом случае ридер не будет отображать меню выбора языка. См. раздел 4.3 о файлах локалей.

4.3. Если ваш родной язык отличается от трех упомянутых выше, для вашего удобства вы можете создать свой собственный файл локали и поместить его в папку config/locales.

# Locales folder. You can add your own locale file there like en.yml, ru.yml, uk.yml
DIR: "config/locales"

Например, для немецкого языка скопируйте en.yml в de.yml и переведите фразы на немецкий язык справа от двоеточия-разделителя. Оставьте символы формата %d нетронутыми. Что-то вроде этого:

Found authors - %d: Autoren gefunden - %d

Не забудьте заменить строку алфавита ABC на немецкий. Это обеспечит правильное отображение и сортировку немецких имен и названий.

4.4. Адаптацию языка выбора дерева жанров можно выполнить, отредактировав файл genres.xml в папке config

  TREE_FILE: "config/genres.xml"

Это можно сделать, добавив строки, специфичные для языка, в файл genres.xml.

<genre-descr lang="en" title="Alternative history"/>
<genre-descr lang="ru" title="Альтернативная история"/>
<genre-descr lang="uk" title="Альтернативна історія"/>
<genre-descr lang="de" title="Alternative Geschichte"/>

5. База данных перечня книг  

5.1. Список книг хранится в файлах базы данных SQLite, расположенных в папке dbdata.

DSN: "dbdata/books.db"

  Предостережение

Файлы базы данных создаются при первом запуске программы и не предназначены для ручного редактирования

5.2. В случае утраты или повреждения файлы базы данных могут быть восстановлены командой

Откройте Powershell от имени администратора и выполните команду
flibgolite -reindex
Откройте терминал и выполните команду, используя sudo
sudo ./flibgolite -reindex

Это может занять некоторое время.

  Примечание

То же самое можно выполнить вручную: остановить сервис, удалить файлы базы данных и запустить сервис заново.

5.3. Процесс регистрации новых поступлений изображен на диаграмме

SSTcOaCnKefvoelrdyer3PPU0aans0rrzcaaiasllpnellnceeFiollBnn2gdEFsPBzU2iBpp-paaarrrscseherirvePmpUmaaanarxrzxsa1ie2l0p2d0le00ewd0b0lo0o0rf0oFkikbBelfso2reiosslqkpeusaqseruuseeeureBmualxke2d00T0x0waotrkaertimeSQLiteDB

В большинстве случаев процесс регистрации поступлений не требует настройки, поскольку его скорость определяется в основном производительностью системы ввода-вывода (контроллерами, типами дисков и т.п.). При необходимости изменить работу процесса можно следующими настройками:

  # Delay before start each new acquisitions folder processing
  POLL_DELAY: 300 
  # Maximum parallel new acquisitions processing routines
  MAX_SCAN_THREADS: 10
  # Book queue size
  BOOK_QUEUE_SIZE: 20000
  # File queue size
  FILE_QUEUE_SIZE: 20000
  # Maximum number of books in one transaction
  MAX_BOOKS_IN_TX: 20000

5.4. При добавлении новых книг в каталог можно настроить отбраковку дубликатов:

  • N - не проверять,
  • F - проверять только по совпадению хеша CRC32 (по умолчанию),
  • S - проверять по совпадению CRC32 или по названию книги и краткому описанию.
  # Level of checking new books for duplicates: N - no check, F - fast check (default) by CRC32, S - slow check by CRC32 or title and plot comparison
  DEDUPLICATE_LEVEL: "F"

6. Ведение журнала  

При работе сервис записывает журналы opds.log и scan.log, расположенные в папке logs.

  # Logs are here
  OPDS: "logs/opds.log"
  SCAN: "logs/scan.log"

opds.log содержит записи о запросах читалок. scan.log содержит записи о новых книгах и индексации архива.

Нет необходимости удалять журналы, чтобы освободить место на диске, поскольку журналы меняются (перезаписываются) через 7 дней.

Можно задать один из следующих уровеней детализации журнала:

  • D - отладка,
  • I - информация,
  • W - предупреждения (по умолчанию),
  • E - ошибки.
  # Logging levels: D - debug, I - info, W - warnings (default), E - errors
  LEVEL: "W" 

7. Аутентификация  

Вы можете настроить аутентификацию на вашем сервере OPDS, задав метод аутентификации и ряд дополнительных параметров.

Текущая версия реализует только один метод аутентификации. Это HTTP Basic аутентификация — аутентификация по имени пользователя и паролю.

Чтобы включить Basic аутентификацию, необходимо указать метод plain и учетные данные username:password в разделе auth файла config.yml.

auth:
#   Set METHOD to plain for http basic authentication with plain text master credentials from config.yml
  METHOD: "plain"
#   and fill authentication credentials in plain text format username:password 
  CREDS: "username:password"

  Предостережение

Реализованный метод plain имеет недостатки безопасности, поскольку пароль хранится в открытом виде в файле конфигурации. Кроме того, при использовании базовой аутентификации вне домашней сети без использования протокола https учетные данные могут быть перехвачены злоумышленниками.


Предложения, отчеты об ошибках и комментарии приветствуются здесь 

Последнее изменение 22 февраля 2025 г.
Поделиться в
FLibGoLite
Ссылка Скопировано в буфер обмена
Содержание:
  • Параметры запуска
  • Тонкая настройка
    • 1. Главный файл настройки
    • 2. Настройка расположения папки с книгами
    • 3. Настройка OPDS
    • 4. Советы по локализации
    • 5. База данных перечня книг
    • 6. Ведение журнала
    • 7. Аутентификация
FLibGoLite
FLibGoLite - ваша домашняя облачная библиотека и не только
Текущая версия v2.2.4
© 2024 Serguei Vine
Code licensed MIT, docs CC BY-NC 4.0
 
Ссылки
  Репозиторий   
  Проблемы   
  Загрузки   
  Про   
 
 
 
 
Powered by Hinode  .
FLibGoLite
Код Скопировано в буфер обмена