Trilium Notes − мощное и гибкое приложение для ведения иерархических заметок, ориентированное на продвинутых пользователей, которые стремятся к организации больших объёмов информации. Кроме того, приложение поддерживает вложенные узлы, разметку Markdown, встроенные скрипты, историю изменений и множество других функций, В частности, Trilium Notes включает синхронизацию между устройствами через собственный сервер.
Trilium может работать как десктопное приложение, а также может быть установлен на виртуальный сервер. В такой конфигурации у приложения есть веб-интерфейс для доступа из браузера. Trilium Notes можно использовать для ведения базы знаний, исследований, планов или даже в качестве персональной вики. Данные хранятся в SQLite-базе. Это во многом упрощает резервное копирование и перенос данных.
В статье разберём, как установить сервер Trilium Notes и настроить его как системный сервис на VPS, работающем под управлением операционной системы семейства Linux.
Как установить Trilium Notes на Linux
Актуальная версия приложения, в том числе и его серверной компоненты, доступна на официальной GitHub-странице. Для установки сервера Trilium Notes необходимо на странице выбранного релиза при помощи контекстного меню скопировать ссылку на архив, предназначенный для Linux-систем.

Загрузку файлов из интернета через терминал позволяет производить утилита wget
. В чистом образе Debian по умолчанию данной утилиты нет. Поэтому, если вы используете эту операционную систему, сначала проинсталлируйте wget
:
$ sudo apt install wget
Затем при помощи wget
и скопированной ссылки загрузите в текущую директорию архив релиза:
$ wget https://github.com/TriliumNext/Notes/releases/download/v0.95.0/TriliumNextNotes-Server-v0.95.0-linux-x64.tar.xz
Дистрибутив представляет собой архив .tar.xz
, для распаковки которого необходимо наличие в системе соответствующей утилиты. Установить её на Debian можно при помощи команды:
$ sudo apt install xz-utils
В CentOS установка архиватора производится командой:
$ sudo dnf install tar
В Ubuntu инструмент для распаковки такого вида архива присутствует по умолчанию.
Следующей командой разархивируйте загруженный файл дистрибутива в текущий каталог:
$ tar -xvf TriliumNextNotes-Server-v0.95.0-linux-x64.tar.xz
Файлы сервера Trilium Notes будут распакованы в каталог TriliumNextNotes-Server-0.95.0-linux-x64
. Скопируйте его содержимое в директорию /opt/trilium
:
$ sudo cp -r TriliumNextNotes-Server-0.95.0-linux-x64/ /opt/trilium
В том же каталоге создайте директорию trilium-data
. Она будет использоваться для хранения всех пользовательских данных Trilium Notes.
$ sudo mkdir /opt/trilium/trilium-data
Настройка Trilium для работы в качестве службы
При запуске Trilium Notes в качестве системного сервиса необходимо поддержание определённого уровня безопасности сервера. Одной из мер, направленных на это, является создание отдельного системного пользователя с ограниченными правами. В нашем примере таким пользователем будет учётная запись trilium
. Для его создания запустите команду:
$ sudo useradd --system --no-create-home --shell /usr/sbin/nologin trilium
В команде используются следующие опции:
--system
− параметр означает, что будет создан именно системный пользователь, предназначенный для запуска фоновых служб;--no-create-home
− опция позволяет не создавать домашнюю директорию;--shell /usr/sbin/nologin
− параметр назначает в качестве оболочки/usr/sbin/nologin
, что запрещает интерактивный вход в систему под именем создаваемого пользователя.
Далее измените владельца и группу каталога /opt/trilium
, а также всех его вложенных файлов, на пользователя trilium
. Это нужно, чтобы данный пользователь имел права на чтение, запись и выполнение необходимых файлов, поскольку сервис Trilium Notes запускается от имени этого системного пользователя. Соответственно, учётная запись trilium
должна иметь полный доступ к каталогу /opt/trilium
и данным внутри него.
$ sudo chown -R trilium:trilium /opt/trilium
На следующем шаге необходимо создать юнит-файл для новой службы. В Debian и Ubuntu для этого запустите команду:
$ sudo nano /etc/systemd/system/trilium.service
В CentOS для редактирования файлов по умолчанию используется редактор vi
:
$ sudo vi /etc/systemd/system/trilium.service
В юнит-файл скопируйте следующее содержимое:
[Unit]
Description=Trilium Notes Service
After=network.target
[Service]
Type=simple
User=trilium
Group=trilium
WorkingDirectory=/opt/trilium
ExecStart=/opt/trilium/trilium.sh --data-dir /opt/trilium/trilium-data
Restart=always
Environment=NODE_ENV=production
Environment=TRILIUM_DATA_DIR=/opt/trilium/trilium-data
[Install]
WantedBy=multi-user.target
Обратите внимание на присутствие в файле переменной TRILIUM_DATA_DIR
. По умолчанию Trilium Notes сохраняет файлы в домашней директории пользователя, от имени которого запускается служба. Однако ранее при создании пользователя trilium
мы указали, что у него нет домашнего каталога. Исходя из чего, необходимо переопределить путь для хранения данных, указав ранее созданный каталог /opt/trilium/trilium-data
. Именно для этого в юнит-файле используется переменная TRILIUM_DATA_DIR
, которая заменяет путь по умолчанию на нужный.
После внесения всех изменений закройте юнит-файл с их сохранением и обновите конфигурацию systemd:
$ sudo systemctl daemon-reload
Затем запустите созданную службу:
$ sudo systemctl start trilium
Установите службу trilium
в автозагрузку:
$ sudo systemctl enable trilium
Чтобы убедиться в корректном старте нового сервиса, следующей командой выведите в консоль его текущее состояние:
$ systemctl status trilium
Вывод команды не должен содержать сообщений об ошибках.

Подключение к Trilium Notes
Веб-интерфейс Trilium Notes работает через TCP-порт 8080. Исходя из чего, необходимо открыть доступ к вашему серверу с использованием данного порта. В Debian и Ubuntu добавьте соответствующее разрешающее правило в брандмауэр UFW:
$ sudo ufw allow 8080
Если вы используете CentOS, доступ в межсетевом экране для порта 8080 можно открыть следующими командами:
$ sudo firewall-cmd --permanent --add-port=8080/tcp
$ sudo firewall-cmd --reload
Теперь откройте браузер и перейдите на http://X.X.X.X/8080
, где вместо X.X.X.X
укажите IP-адрес вашего виртуального сервера. На стартовой странице веб-интерфейса Trilium Notes кликните в строку I'm a new user,...
и нажмите Next
.

На следующей странице придумайте и дважды введите пароль, при помощи которого в дальнейшем будете подключаться к Trilium Notes. После чего нажмите Set password
.

Затем введите этот пароль, но уже для авторизации в приложении, и кликните Login
.

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