В моей малиной пи-передаче отказано в разрешении
Я установил на свой Raspberry pi 3, работающий на Debian, безголовую версию передачи:
sudo apt-get install transmission-daemon
После этого я остановил службу и изменил настройки:
sudo service transmission-daemon stop
sudo nano /etc/transmission-daemon/settings.json
Помимо изменения имени пользователя и пароля, я также изменил каталог загрузки:
...
"download-dir": "/home/pi/Desktop",
...
После этого я перезагрузил сервис
sudo service transmission-daemon start
Теперь, если я пытаюсь скачать любой файл, я получаю следующую ошибку:
Error: Permission denied (/home/pi/Desktop/ubuntu-17.04-desktop-amd64.iso)
Я не вижу, что я сделал неправильно.
2 ответа
Демон Transmission работает как debian-transmission
пользователь. Этому пользователю (вероятно) запрещено писать /home/pi/Desktop
, Вы можете проверить это с ls -ld /home/pi/Desktop
и интерпретировать вывод.
Изменить разрешения / владельца на /home/pi/Desktop
или разрешить загрузку Transmission в файл, в котором разрешено хранить данные.
Вы можете дать debian-transmission
доступ к папке с chown
или же setfacl
, Если вы не склонны к каким-либо исследованиям, вероятно, сработает следующее:
$ setfacl -m u:debian-transmission:rwX /home/pi/Desktop
Я рвал на себе волосы из-за этой проблемы, пока похожий вопрос на специальном сайте Stack Exchange Raspberry Pi не побудил меня изучить /var/log/daemon.log
Я использовал отличное руководство PiMyLifeUp для настройки моего Pi для загрузки торрентов, но не совсем следовал рекомендациям при редактировании /etc/transmission-daemon/settings.json. В частности, поскольку я оставил для параметра « incomplete-dir-enabled » значение false, мне не показалось неразумным изменить настройку « incomplete-dir » на « (unused) », чтобы напомнить мне, что я не намерены использовать его.
Итак, вы можете себе представить мое удивление, дорогой читатель, когда я нашел ссылки на Не удалось создать «(unused)»: Разрешение отклонено в /var/log/daemon.log.
Я только что отредактировал файл settings.json так, чтобы « incomplete-dir » указывал на ту же папку, что и « download-dir », и все работает нормально! К счастью, я уже знал, что мне нужно запустить sudo systemctl stoptransmission-daemon перед редактированием, иначе демон просто перезаписал бы мои изменения, когда в конечном итоге выключился (я вырвал гораздо больше волос, прежде чем обнаружил это вчера! :)