Дозвіл відхилено під час завантаження з передач deamon


24

Я встановив xubuntu і демон передачі, встановив шлях завантаження до мого будинку / користувача / телевізійних шоу та отримав відмову в дозволі при спробі завантажувати торрент через передачу.

Я пробував chmod -r 777цю папку без успіху.

будь ласка, допоможіть!

вихід ps -ef | передача греп

chen@htpc:~$ ps -ef | grep transmission
109       1023     1  1 21:46 ?        00:00:35 /usr/bin/transmission-daemon --config-dir /var/lib/transmission-daemon/info

chen@htpc:~$ ps aux | grep transmission
109       1023  3.2  0.4  47684 16620 ?        Ssl  21:46   1:20     /usr/bin/transmission-daemon --config-dir /var/lib/transmission-daemon/info
chen      1852  0.0  0.0   4200   772 pts/0    S+   22:27   0:00 grep --color=auto transmission

enter code here

Чи можете ви додати висновок ps -ef | grep transmissionпитання. Я не думаю, що передача-демона не має права писати до домашніх панів за замовчуванням.
щороку

Я додав його, як додати дозволи для цього користувача?
Чен Кінрот

Ну, я був після імені користувача, під яким він працює, але це не відображається. Спробуйте ps aux | grep transmissionзамість цього.
щороку

Гм ..., схоже, його ім'я користувача 109, якесь дивне.
щороку

Це насправді химерно, але воно повинно працювати під debian-transmissionневідомим, чому воно показує дурне число. Ви можете підтвердити це за допомогою id debian-transmission.
щороку

Відповіді:


47

Якщо припустити, що шлях до папки для завантаження є /home/chen/TV shows, виконайте наступне:

  • додати chen до групи передачі debian

    sudo usermod -a -G debian-transmission chen
    
  • змінити право власності на папку

    sudo chgrp debian-transmission /home/chen/TV\ shows
    
  • надати доступ для запису до групи

    sudo chmod 770 /home/chen/TV\ shows
    
  • Зупинимо Діамона

    sudo service transmission-daemon stop
    
  • Останнє, що потрібно зробити, - це змінити маску створення файлів, щоб завантажені файли могли бути записані chen.

    sudo nano /etc/transmission-daemon/settings.json
    

    … І змінити "umask": 18на "umask": 2. Натисніть Ctrl+, Oщоб зберегти та Ctrl+, Xщоб вийти.

Почніть демона з

sudo service transmission-daemon start

У випадку, якщо хтось спробує cdувійти до свого каталогу відразу після цього і отримати дозвіл відмовлено, вийдіть із системи та ввійдіть знову. Мій сеанс SSH не мав правильних дозволів на доступ до папки після надання власності папки debian-tranmissionгрупі (оскільки мій користувач не був доданий до цієї групи до наступного входу)
matrixanomaly

Це працює, поки мені не потрібно створити нову папку (наприклад, файли торрента вкладені). Потім мені інший дозвіл відмовлено.
GDorn

@GDorn Це не повинно бути так. "umask": 2перекладається на дозволи 774, або rwxrwxr--, що означає нерозумний доступ для власника та групи.
mikew незалежно від

Корисна відповідь, але, можливо, я можу запропонувати редагувати відповідь: У мене були проблеми /var/lib/transmission-daemon/.config/transmission-demon/torrents. У цьому каталозі не було дозволу на запис. Змінюючи їх, усі заявили, що вони працюють.
LPs

6

Це проблема з дозволом на основі ідентифікатора користувача, який працює із передачею. Передача встановлює користувача за замовчуванням, якого ви можете не очікувати під час першого встановлення. Ім'я користувача - debian-transmission.

Я поясню, як це змінити:

  1. Зупиніть демон передачі sudo service transmission-daemon stop
  2. Відкрийте файл конфігурації передачі для редагування: sudo nano /etc/init.d/transmission-daemon
  3. Знайдіть рядок із зазначенням USER=debian-transmissionта змініть його користувачеві, якому належить ця папка. Якщо ви не переймаєтесь питаннями безпеки, ви також можете використовувати USER=rootцей файл. (Не рекомендується, але добре для усунення несправностей).
  4. Альтернативно (замість точки 3) змініть папку / etc / fstab, щоб встановити папку з правильними дозволами для користувача, який запускає демон передачі.
  5. Запустіть демон передачі sudo service transmission-daemon start

1
Це не спрацює. Тут або користувач, transmission-daemon або root також володіє "/var/lib/transmission-daemon/info/settings.json", і якщо ви зміните демона на запуск $ USER, він дасть Couldn't read "/var/lib/transmission-daemon/info/settings.json": Permission denied. Це якось працювало у вашій системі, але це не правильний спосіб зробити це.
Хуршид Алам

Це працює, дякую. І якщо ви користуєтесь, systemdви повинні відредагувати Userстаттю [Service]в /lib/systemd/system/transmission-daemon.service.
zer09

4

Перевірте, чи використовуєте ви "неповну" папку. Помилка може ввести в оману в цьому випадку, і це може бути неповна папка, до якої ви не маєте доступу для запису.


2
це був мій випадок: у налаштуваннях у мене був неправильний випадок неповного режиму. Тож помилка була вдвічі оманливою: помилки не було в каталозі, про яку повідомляла помилка, і помилка повинна була бути "не знайдена" і не "дозволу відмовлено"
Ріккардо Коссу

2
Це була моя проблема! Він був скинутий на / root / неповний, що, очевидно, не піддається запису!
Pez Cuckow

1
Що сказав @RiccardoCossu. Неможливо подати внесок.
ракетбой

1

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


0

Це може бути проблема профілю apparmor. Передача працює під sanitized_helperпрофілем в apparmor.

Шукайте скарги в /var/log/kern.log. grep transm /var/log/kern.log, особливо відразу після спроби запустити передачу, і вона не вдалася.


0

Оскільки це найвищий результат пошуку в Google, для кожного, хто читає це, я витрачаю більше години, намагаючись змусити його працювати. Виявляється, папка завантажень, вказана в settings.json, - "Завантаження" замість "завантаження". Зверніть увагу на випадок.


0

У моєму випадку проблема полягала в тому, як монтувався привід. Використовуючи це, /etc/fstabдля мене працювали:

UUID=2069-1A05  /mnt/ext   vfat   rw,user,exec,umask=0000   0   0

Тут може допомогти трохи контексту ( vfat? Не типова файлова система Linux) - який був ваш сценарій, що саме не працювало і як це виправити?
Zanna

0

Встановлення зовнішнього диска в домашній каталог вирішило цю проблему;

sudo mkdir / home / plex / media-server

sudo chmod 770 / home / plex / media-server

sudo mount / dev / sdxx / / home / plex / media-drive

Примітка. sdxx - це ім'я вашого HDD. Ви можете скористатися наступною командою, щоб знайти свою;

sudo blkid


-1

У мене була така ж проблема, і це була помилка, яку я зробив, коли пов'язував каталог завантажень передачі з моїм домом / користувачем / каталогом, я змінив право власності на файл, пов'язаний з символом, який, як наслідок, також змінив право власності на передачу " каталог завантажень ...

Я щойно повернувся до власності на debian-передачу, і це спрацювало як шарм (без необхідності перезапускати сервіс)

#chown debian-transmission:debian-transmission /var/lib/transmission/downloads

(ну, вам доведеться перевірити відповідно до вашого власного дистрибутива Linux, що є правильним власником, а зрештою і правильним шляхом до каталогу завантажень)


-1

У мене була подібна проблема з передачею. Я отримав помилку дозволу під час завантаження навіть при правильних налаштуваннях дозволу папки на зовнішній жорсткий диск USB.

Я щойно встановив зовнішній жорсткий диск на /home/pi/такі ж дозволи, і він працював чудово.

mount /dev/sda /home/pi/USB-HDD-MOUNTED

дозволи є drwxrwxrwx (0777) pi:debian-transmission. Ім'я користувача змінено piв /etc/init.d/transmisssion-daemon.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.