Mam Raspberry Pi z RaspBMC z WD MyBook podłączonym przez USB. Napęd jest automatycznie montowany na /media/My Book
. Utworzyłem folder /media/My Book/downloads
i ustawiłem katalog pobierania Trasmission na /media/My Book/downloads
.
Kiedy próbuję pobrać plik, mówi Transmisja
Error: Permission denied (/media/My Book/downloads/The.Simpsons.S24E09.720p.HDTV.X264-DIMENSION [PublicHD]/The.Simpsons.S24E09.720p.HD
ls -la mi daje
drwx------ 1 pi 0 Dec 15 16:24 downloads
Wydaje mi się, że problem polega na tym, że transmisja odbywa się pod innym użytkownikiem pi
i nie może zapisywać w folderze. Jednak kiedy wykonam
chmod 777 downloads -R
operacje przebiegają bezbłędnie, ale uprawnienia się nie zmieniają, pozostają 700 tylko dla właściciela.
Co robię źle i jak mogę włączyć Transmission, aby zapisywać w tym katalogu?
źródło
root
źle. Robienie czegośchmod 777
jest złe. Ustawienie właściwej grupy i użytkownika to jedyny właściwy sposób.pi
na inną. Jednak gdy to zrobięls -al
, moje pliki nadal są wpi
grupie. Czy zgodnie z powyższymi instrukcjami powinienem zmienić każdą instancjępi
na moją nową nazwę użytkownika, czy może odnosić się do grupy, która nadal jestpi
? Te instrukcje nie działają, gdy zmieniłem każdąpi
na moją nazwę użytkownika.Problem polegał na tym, że dysk USB został zautomatyzowany. Zainstalowałem go ręcznie za pomocą mount -t ntfs-3g i zaczął działać.
źródło
sudo mount -t ntfs-3g -o uid=pi,gid=pi /dev/sda1 /media/HDD/
nimi to 0777, a transmisja działa idealnie, naprawdę dziwnie.exfat defaults,auto,umask=000,users,rw 0 0
, zmieniłem go, aby montować zpi
identyfikatorami użytkownikówexfat defaults,uid=1000,gid=1000 0 0
i działało. Sprawdź tę odpowiedź AskUbuntu: Problem własności / uprawnień związanych z automatycznym montowaniem dyskuNie jestem ekspertem od Linuksa, ale możesz spróbować, może działać. Większość tych informacji pochodzi z http://www.superfecta.ca/?p=44
zmiana
do
Wiem, że uruchamianie jako root to duży linux no no (nie jestem pewien, czy to liczy się jako uruchamianie w rootie), ale zadziałało dla mnie, więc nie mam nic przeciwko. Możesz spróbować
USER=pi
zamiast tego, ale nie mam tam miłości, więc utknąłem z korzeniemźródło
ls -l
powie ci, kto jest jego właścicielem) lub zmodyfikuj plik / etc / fstab, aby pokazać innego właściciela (np. Debian- transmisja).Uważam, że Twoim problemem jest to, że pamięć USB jest sformatowana jako NFTS lub FAT, systemy plików, które nie obsługują uprawnień na użytkownika / grupę. Rozwiązaniem jest sformatowanie jako ext4. Jeśli to zrobisz, będziesz mieć znacznie mniejsze opóźnienie, jeśli używasz swojego Pi jako centrum medialnego. Sterowniki Pi są znacznie szybsze, gdy używasz ext4.
źródło
Żadna z odpowiedzi tutaj nie działała dla mnie, więc piszę nową, odwołując się do https://pimylifeup.com/raspberry-pi-torrentbox/, która działała dla mnie świetnie i pozwoliła mi uruchomić transmisję jako
pi
użytkownik, aby uzyskać dostęp do mojego napędu USB. To nie jest bezpośrednia odpowiedź na OP, ale to pytanie jest bardzo popularne (pierwszy wynik Google) dla tego rodzaju problemu, więc umieściłem go tutaj.Wchodzić:
i znajdź
USER
w górnej części pliku i zmień na:Następnie potrzebujemy
chown
kilku plików do naszego zakresu uprawnień:A następnie uruchom (jest to naprawdę ważne, ponieważ demon z usługi będzie po prostu działał jako
debian-transmission
)i znajdź
user
tam i zmień na:i ponownie załaduj jednostkę serwisową
Na koniec musimy symlinkować nasz plik ustawień do katalogu domowego pi i nadać mu uprawnienia:
A następnie rozpocznij transmisję ponownie:
i jesteś skończony. Powinno teraz działać.
źródło
Myślę, że jedną z głównych rzeczy, które ludzie przeoczają, jest to, że powinieneś zamontować dysk USB / zewnętrzny w folderze / mnt / myUsbDrive, a NIE w / media / pi / myUsbDrive.
Próbowałem każdej odpowiedzi podanej w tej dyskusji (w tym root) na sto różnych sposobów z różnymi opcjami i nie mogłem uzyskać transmisji, aby zaoszczędzić na moim dysku SSD USB. Następnie podczas czytania czegoś innego wspomniano, aby nie montować w / media / pi, ponieważ demony lub inne grupy mogą nie mieć dostępu. Więc podłączam dysk USB do / mnt / usb_disk, ustawiam ścieżki w /etc/transmission-daemon/settings.json na / mnt / usb_disk / download i transmisja zaczyna zapisywać na dysk.
Do Twojej wiadomości mam użytkownika = pi w /etc/init.d/transmission-daemon.
Do twojej wiadomości zmieniłem właściciela / mnt / usb_disk / download na pi i pogrupowałem na debian-transmission z 777 uprawnieniami.
źródło
gdzie / pliki do pobrania to katalog, w którym mają się znajdować pliki do pobrania (lub miejsce instalacji).
jest to bezpieczniejsze niż używanie roota.
daje to użytkownikowi prawa zwane „transmisją debian” do folderu
źródło
Znalazłem to samo rozwiązanie, co Igor i puigcerber. Mój dysk został ustawiony na automatyczne montowanie, więc edytowałem fstab, aby usunąć automount, a potem go użyłem
sudo mount -t vfat -o uid=pi,gid=pi /dev/sda1 /media/*mymountpoint/
źródło
Chociaż odpowiedź biketire jest poprawna, debian ostatnio przeszedł na systemd i musisz teraz zmienić użytkownika tutaj
sudo nano /etc/systemd/system/multi-user.target.wants/transmission-daemon.service
i upewnij się, że w sekcji
masz linię
źródło
Rozwiązanie:
Po wielu lekturach i frustracji.
Przede wszystkim upewnij się, że normalny użytkownik ma dostęp do odczytu i zapisu na dysku USB. Prawidłowa poprawka „non-root” dla dostępu do zapisu na dysku USB to:
Krok 1: Zatrzymaj demona transmisji
sudo service transmission-daemon stop
Krok 2: Dodaj PI do grupy transmisji Debian
sudo usermod -a -G debian-transmission pi
Krok 3: zmiana użytkownika-demona
sudo nano /etc/init.d/transmission-daemon
Zmień USER na pi.
sudo nano /etc/systemd/system/multi-user.target.wants/transmission-daemon.service
Zmień USER na pi.
Krok 4: Zmień prawa do folderu plików konfiguracyjnych
sudo chown -R pi /var/lib/transmission-daemon/info/ sudo chmod 755 /var/lib/transmission-daemon/info/settings.json
Krok 5: Ustaw odpowiednie uprawnienia do pobierania / niekompletnych folderów
sudo chown -R pi /somewhere/downloads sudo chown -R pi /somewhere/incomplete
Krok 6: Uruchom demona transmisji
sudo service transmission-daemon start
źródło
Odkryłem, że problemem był dla mnie system plików. Na szczęście był to nowy dysk twardy USB, więc nie było problemu z jego sformatowaniem.
Najpierw sformatowałem dysk twardy na ext4
Następnie zamontowałem dysk twardy USB
Po zamontowaniu zmieniłem grupę dysków twardych na
debian-
W końcu dodałem użytkownika pi do grupy debian-transmisja i działało to świetnie w moim przypadku użycia.
źródło
Po zmianie użytkownika demona transmisji na rootowanie problem uprawnień zniknie z udziałem USB lub SMB.
sudo nano /etc/init.d/transmission-daemon
następnie zmień linię użytkownika na:
USER = root
źródło
Problem dotyczy tego, że FAT nie rozpoznaje wielu użytkowników.
Jeśli używasz wiersza w pliku fstab, takiego jak / dev / [your dev] / mnt / usb1 vfat defaults, uid = 65534, gid = 65534, dmask = 000, fmask = 111 0 0
powinien zamontować twój system plików z folderami 777 i plikami jako 666 należącymi do „nikt” należącego do „nogroup”
konieczne będzie ponowne zamontowanie (lub ponowne uruchomienie), aby zmiany zostały widoczne.
źródło
W końcu znalazłem działające rozwiązanie.
Wyłączyłem automatyczne udostępnianie urządzeń wymiennych w ustawieniach XBIAN i ręcznie dodałem dysk do share.conf
Po prostu dodanie go do share.conf nie wystarczy, automatyczne udostępnianie musi być wyłączone.
źródło
Miałem podobny problem z uprawnieniami.
Próbowałem ślepo podążać za rozwiązaniem sabi i odkryłem, że nie działa. Nie tylko to, ale uważam, że to trochę przesada.
W mojej sytuacji po prostu przeoczyłem fakt, że demon transmisji działał jako użytkownik: debian-transmisja .
Dlatego, aby zezwolić demonowi transmisji na zapis w folderze ( nazwa_folderu ), wystarczy wykonać następujące polecenia:
Zakłada się oczywiście, że poprawnie skonfigurowałeś już plik settings.json
źródło
chmod 777 powinien dać każdemu użytkownikowi wszystkie uprawnienia do pliku lub katalogu. Jeśli to nie zadziała, prawdopodobnie użytkownik wykonujący to polecenie chmod nie jest właścicielem katalogu ani pliku. Na przykład, jeśli root jest właścicielem / media / My Book /, a użytkownik pi nie będzie mógł zmienić uprawnień do tego pliku. Trzy liczby przekazywane do komendy chmod wpływają na właściciela, grupę i wszystkich innych w tej kolejności. Dlatego najczęstszymi ustawieniami dla katalogu są „chmod 755 somedirectory”. Oznacza to, że właściciel może czytać, zapisywać i zmieniać katalog, ale grupa i wszyscy inni mogą tylko czytać pliki i zmieniać katalog.
źródło