deluge-console: Имя пользователя не существует

Вопрос или проблема

Я настроил deluged как службу с systemd для работы от имени пользователя deluge. Демон работает, поскольку я могу использовать веб-интерфейс и подключаться с помощью deluge-console, если вручную ввести учетные данные. Однако, когда я просто запускаю deluge-console (локально на том же компьютере) от имени своего обычного пользователя — т.е. не под deluge — я получаю сообщение об ошибке “Пользовательское имя не существует”.

Домашний каталог демона — var/lib/deluge, а файл var/lib/deluge/.config/deluge/auth содержит только test:test:10. То же самое касается ~/.config/deluge/auth. Мне объяснили, что именно этот файл будет использоваться для аутентификации deluge-console по умолчанию, когда он запускается от имени моего пользователя. Очевидно, это не так.

  • Ввод connect localhost test test внутри deluge-console работает.

  • Запуск deluge-console -c ~/.config/ или deluge-console -c ~/.config/deluge не работает (мне не совсем ясно, что разработчики имеют в виду под “расположение папки конфигурации”).

  • В укромном месте в http://dev.deluge-torrent.org/wiki/UserGuide/Authentication говорится, что в auth всегда должна быть запись “localclient” — добавление этого в оба файла auth не помогает.

Что я упустил?

Не дубликат: https://superuser.com/a/619383/36197

Это сделано на Raspberry Pi 3 с OSMC.

Не знаю, что именно сработало, но я смог автоматически подключиться с помощью консоли после выполнения:

systemctl stop deluged
systemctl start deluged

Мне не совсем понятно, когда это нужно было сделать. Я был под впечатлением, что могу редактировать файл auth, пока демон работает, и он будет проверять его каждый раз.

Я использую ту же ОС и аппаратное обеспечение.

Установите параметр конфигурации -c, чтобы он указывал на вашу папку конфигурации Deluge, где находятся ваши deluge.pid, auth, core.conf, dht.state и другие файлы.

$ deluge-console -c /var/lib/deluge/.config/deluge/ "add '/home/osmc/Downloads/totally not weird.torrent'"
Попытка добавить торрент: /home/osmc/Downloads/totally not weird.torrent
Торрент добавлен!

Ответ или решение

Ошибка «Username does not exist» в Deluge Console: подробное руководство по устранению неполадок

Ошибка «Username does not exist» в Deluge Console может расстроить пользователей, особенно когда они пытаются подключиться к сетевому торрент-демону, установленному с использованием systemd как службу. В этом руководстве мы проанализируем причины этой проблемы и предложим шаги для её решения, основываясь на примерах использования и конфигурации.

Определение проблемы

Вы находитесь в ситуации, когда Deluge работает нормально через веб-интерфейс, и вы можете подключаться к демону, вводя учетные данные вручную. Однако, когда вы пытаетесь подключиться через deluge-console от имени вашего обычного пользователя, вы получаете сообщение об ошибке «Username does not exist».

Контекст и конфигурация

  1. Демон и учетные записи:

    • У вас запущен deluged как служба для пользователя deluge.
    • Конфигурационный файл auth, расположенный в /var/lib/deluge/.config/deluge/auth, содержит запись test:test:10. Это указывает на то, что учетные данные «test» работают, однако вы не сможете подключиться под другим именем пользователя.
  2. Локальные файлы конфигурации:

    • Файл ~/.config/deluge/auth не содержит записи для вашего текущего пользователя.
    • Согласно документации, в этом файле должно быть определено имя пользователя, чтобы deluge-console смог его распознать.

Пошаговое решение

1. Проверка конфигурационного файла auth

Убедитесь, что файл ~/.config/deluge/auth имеет правильный формат. Например, добавьте запись для вашего пользователя, чтобы он выглядел следующим образом:

test:test:10
localclient:localclientpass:10

После редактирования сохраните файл.

2. Перезапустите демон

Несмотря на возможность редактирования конфигурационных файлов во время работы демона, изменения могут не вступить в силу, пока вы не перезапустите службу deluged. Используйте следующие команды для перезапуска:

sudo systemctl stop deluged
sudo systemctl start deluged

3. Явное указание пути к конфигурации

При запуске deluge-console, вы можете указать конкретный путь к конфигурационному каталогу, используя параметр -c. Например:

deluge-console -c ~/.config/deluge

или, если ваша конфигурация находится в другой директории:

deluge-console -c /var/lib/deluge/.config/deluge

4. Проверка наличия записи localclient

Убедитесь, что в файле auth присутствует запись для клиента:

localclient:your_password:10

Это позволит системе распознавать локальные подключения от имени вашего обычного пользователя.

Заключение

Теперь вы можете успешно подключаться к deluge-console без необходимости вводить учетные данные вручную, что значительно упрощает управление вашими торрентами. Перезагрузка демона после изменения конфигурации является критически важным шагом, чтобы гарантировать, что все изменения вступят в силу.

Если у вас остались вопросы или возникли новые трудности, обратитесь к документации или сообществу Deluge для получения дополнительной информации и поддержки. Применение указанных рекомендаций должно решить проблему с ошибкой «Username does not exist».

Оцените материал
Добавить комментарий

Капча загружается...