У меня Raspberry Pi работает RaspBMC с WD MyBook, подключенным через USB. Привод автоматически устанавливается на /media/My Book
. Я создал папку /media/My Book/downloads
и установил каталог загрузки Trasmission /media/My Book/downloads
.
Когда я пытаюсь скачать файл, Transmission сообщает,
Error: Permission denied (/media/My Book/downloads/The.Simpsons.S24E09.720p.HDTV.X264-DIMENSION [PublicHD]/The.Simpsons.S24E09.720p.HD
ls -la дает мне
drwx------ 1 pi 0 Dec 15 16:24 downloads
Таким образом, я предполагаю, что проблема в том, что передача выполняется от имени другого пользователя pi
и не может записывать в папку. Однако, когда я выполняю
chmod 777 downloads -R
операции выполняются без ошибок, но разрешения не меняются, они остаются 700 только для владельца.
Что я делаю не так и как я могу включить Transmission для записи в этот каталог?
источник
root
не так. Делать этоchmod 777
неправильно. Установка правильной группы и пользователя - единственный правильный путь.pi
в другое. Однако, когда я делаюls -al
это, кажется, мои файлы все еще находятся вpi
группе. С учетом приведенных выше инструкций, я должен изменить каждый экземплярpi
на свое новое имя пользователя или обратиться к группе, которая по-прежнемуpi
? Эти инструкции не работают, когда я меняю каждоеpi
на свое имя пользователя.Проблема заключалась в том, как был автоматически подключен USB-диск. Я установил его вручную с помощью mount -t ntfs-3g, и он начал работать.
источник
sudo mount -t ntfs-3g -o uid=pi,gid=pi /dev/sda1 /media/HDD/
они равны 0777, и передача работает отлично, действительно странно.exfat defaults,auto,umask=000,users,rw 0 0
, я изменил это, чтобы монтировать сpi
идентификаторами пользователей,exfat defaults,uid=1000,gid=1000 0 0
и это работало Проверьте этот ответ AskUbuntu: проблема с правами доступа / правами при автоматическомЯ не эксперт по Linux, но вы можете попробовать это, может сработать. Большая часть информации предоставлена http://www.superfecta.ca/?p=44.
менять
в
Я знаю, что запуск от имени root - это большой linux нет, нет (не уверен, что это считается выполнением от имени root), но это сработало для меня, так что я в порядке. Вы можете попробовать
USER=pi
вместо этого, но у меня нет любви там, поэтому я застрял с рутомисточник
ls -l
скажет вам, кому он принадлежит), или изменить файл / etc / fstab, чтобы показать другого владельца (например, debian- коробка передач).Я считаю, что ваша проблема в том, что ваша флешка USB отформатирована как NFTS или FAT, файловые системы, которые не поддерживают разрешения для каждого пользователя / группы. Решение состоит в том, чтобы переформатировать как ext4. Если вы сделаете это, у вас будет гораздо меньше лагов, если вы используете свой Pi в качестве медиацентра. Драйверы для Pi намного быстрее, когда вы используете ext4.
источник
Ни один из ответов здесь не сработал для меня, поэтому я пишу новый, ссылаясь на https://pimylifeup.com/raspberry-pi-torrentbox/ который отлично работал для меня и позволил мне запустить передачу как
pi
пользователь для доступа к моему USB-накопителю. Это не является прямым ответом на OP, но этот вопрос очень популярен (первый результат Google) для такого рода проблем, поэтому я поставил его здесь.Войти:
и найдите
USER
в верхней части файла и измените на:Затем нам нужно
chown
несколько файлов в нашей области разрешений:А затем запустите (это действительно важно, иначе демон из сервиса будет работать как
debian-transmission
)и найти
user
там и изменить на:и перезагрузите сервисный блок
И, наконец, нам нужно символически связать наш файл настроек с домашним каталогом pi и дать ему разрешения:
А затем снова начните передачу:
и вы сделали. Теперь должно работать.
источник
Я думаю, что одна из главных вещей, которую пропускают люди, это то, что вы должны монтировать ваш usb / внешний диск в папку / mnt / myUsbDrive, а НЕ в / media / pi / myUsbDrive.
Я попробовал каждый ответ, данный в этом обсуждении (включая root), сотней разных способов с разными вариантами и не смог получить передачу для сохранения на моем usb SSD-накопителе. Затем при чтении чего-то другого было упомянуто, что не нужно монтировать в / media / pi, поскольку у демонов или других групп может не быть доступа. Поэтому я подключаю USB-диск к / mnt / usb_disk, устанавливаю пути в /etc/transmission-daemon/settings.json в / mnt / usb_disk / downloads, и передача начинает сохраняться на диск.
К вашему сведению, у меня есть user = pi в /etc/init.d/transmission-daemon.
К вашему сведению, я сменил владельца / mnt / usb_disk / downloads на pi и сгруппировал для передачи debian с разрешениями 777.
источник
где / downloads - это каталог, в котором вы хотите, чтобы ваши загрузки были (или место монтирования).
это безопаснее, чем использовать root.
это дает «пользователю» права, известные как «передача Debian» на папку
источник
Я нашел то же решение, что и Игорь и puigcerber. Мой диск был настроен на автоматическое монтирование, поэтому я отредактировал свой fstab для удаления автомонтирования, а затем использовал
sudo mount -t vfat -o uid=pi,gid=pi /dev/sda1 /media/*mymountpoint/
источник
В то время как ответ biketire верен, Debian недавно переключился на systemd, и вам необходимо сменить пользователя здесь
sudo nano /etc/systemd/system/multi-user.target.wants/transmission-daemon.service
и убедитесь, что в разделе
у вас есть линия
источник
Решение:
После большого чтения и разочарования.
Прежде всего, убедитесь, что обычный пользователь имеет доступ на чтение и запись к USB-накопителю. Правильное исправление «без полномочий root» для доступа к записи на USB-накопитель:
Шаг 1: Остановить передачу демона
sudo service transmission-daemon stop
Шаг 2: Добавьте pi в группу передачи debian
sudo usermod -a -G debian-transmission pi
Шаг 3: изменение пользователя-демона
sudo nano /etc/init.d/transmission-daemon
Измените ПОЛЬЗОВАТЕЛЬ на пи.
sudo nano /etc/systemd/system/multi-user.target.wants/transmission-daemon.service
Измените ПОЛЬЗОВАТЕЛЬ на пи.
Шаг 4: Измените права папки с файлами конфигурации
sudo chown -R pi /var/lib/transmission-daemon/info/ sudo chmod 755 /var/lib/transmission-daemon/info/settings.json
Шаг 5. Установите правильные разрешения для загружаемых / неполных папок.
sudo chown -R pi /somewhere/downloads sudo chown -R pi /somewhere/incomplete
Шаг 6: Запустите демон передачи
sudo service transmission-daemon start
источник
Я обнаружил, что файловая система была проблемой для меня. К счастью, это был совершенно новый USB-накопитель, поэтому не было проблем с его форматированием.
Я сначала отформатировал жесткий диск в ext4
Затем я установил USB жесткий диск
После установки я изменил группу для жесткого диска на
debian-
Наконец, я добавил пользователя pi в группу debian-transmission, и он отлично работал в моем случае использования.
источник
После того, как вы измените пользователя-трансмиссионного пользователя на root, проблема с разрешениями исчезнет с общим ресурсом usb или smb.
sudo nano /etc/init.d/transmission-daemon
затем измените строку пользователя на:
USER = корень
источник
Проблема связана с тем, что FAT не распознает нескольких пользователей.
Если вы используете строку в своем файле fstab, такую как / dev / [your dev] / mnt / usb1 vfat по умолчанию, uid = 65534, gid = 65534, dmask = 000, fmask = 111 0 0
он должен монтировать вашу файловую систему с папками 777 и файлами как 666, принадлежащими "nobody", принадлежащим "nogroup"
Вам нужно будет перемонтировать (или перезагрузить) изменения, которые будут видны.
источник
Наконец-то нашел рабочее решение.
Я включил автоматическое совместное использование съемных устройств в настройках XBIAN и вручную добавил диск в share.conf
Недостаточно просто добавить его в share.conf, автоматическое совместное использование должно быть отключено.
источник
У меня была похожая проблема с разрешениями.
Я попытался слепо следовать решению Саби и обнаружил, что оно не работает. Не только это, но я считаю, что это немного излишне.
В моей ситуации я просто упустил из виду тот факт, что Transmission-Daemon был запущен от имени пользователя: debian-transmission .
Следовательно, для того, чтобы дать демону передачи права на запись в папку ( имя_папки ), вам нужно просто выполнить следующие команды:
Это при условии, конечно , что вы правильно настроены settings.json уже
источник
chmod 777 должен предоставить каждому пользователю все права доступа к файлу или каталогу. Если это не сработает, скорее всего, пользователь, выполняющий эту команду chmod, не владеет каталогом или файлом. Например, если root владеет / media / My Book / и пользователь pi не сможет изменить разрешения для этого файла. Три числа, которые вы передаете команде chmod, влияют на владельца, группу и всех остальных в этом порядке. Таким образом, наиболее распространенными настройками для каталога являются «chmod 755 somedirectory». Это означает, что владелец может читать, записывать и изменять каталог, но группа и все остальные могут только читать файлы и переходить в каталог.
источник