![来自 Transmission 客户端的“错误:权限被拒绝”错误](https://linux22.com/image/44381/%E6%9D%A5%E8%87%AA%20Transmission%20%E5%AE%A2%E6%88%B7%E7%AB%AF%E7%9A%84%E2%80%9C%E9%94%99%E8%AF%AF%EF%BC%9A%E6%9D%83%E9%99%90%E8%A2%AB%E6%8B%92%E7%BB%9D%E2%80%9D%E9%94%99%E8%AF%AF.png)
当我尝试使用 Transmission 下载文件时,我得到:
我尝试过寻找这个问题,每个人总是说要正确设置权限,但我已经这样做了:
它在 debian 无头服务器上运行,我确实让它工作,直到我将文件夹从我的主目录移到它们自己的目录之一;从那时起,我就无法启动并运行它,即使再次在我的主目录中也是如此。我什至将其删除并重新安装,按照无数指南之一一步步进行设置,但我一无所获。
我不确定是否transmission-daemon -f
可以帮助你们帮助我,但我认为它输出的内容可能是相关的,因为我看到“需要身份验证的传输守护进程”:
root@fileserver /# transmission-daemon -f
[19:09:48.940] Transmission 2.03 (11030) started (session.c:622)
[19:09:48.940] RPC Server Adding address to whitelist: 127.0.0.1 (rpc-server.c:767)
[19:09:48.940] RPC Server Adding address to whitelist: 192.168.0.* (rpc-server.c:767)
[19:09:48.940] RPC Server Serving RPC and Web requests on port 9091 (rpc-server.c:940)
[19:09:48.940] RPC Server Whitelist enabled (rpc-server.c:944)
[19:09:48.940] RPC Server Password required (rpc-server.c:947)
[19:09:48.940] Port Forwarding Stopped (port-forwarding.c:178)
[19:09:48.940] DHT Generating new id (tr-dht.c:378)
[19:09:48.940] Using settings from "/root/.config/transmission-daemon" (daemon.c:443)
[19:09:48.940] Saved "/root/.config/transmission-daemon/settings.json" (bencode.c:1651)
[19:09:48.940] transmission-daemon requiring authentication (daemon.c:461)
[19:09:48.940] Watching "/home/Transmission" for new .torrent files (daemon.c:473)
[19:09:48.940] Using inotify to watch directory "/home/Transmission" (watch.c:72)
答案1
您的权限不正确,但它在您没有查看的地方:
它可能是打开的/home/Transmission
(您需要确保它具有执行(x)权限;ls -ld /home/Transmission
进行检查)。以及 on /home
,但/home
应该已经是a+x
了。
或者,它可能在文件本身上 - 您没有提供ls -l Transmission/Downloads/
.
如果您正在运行 SELinux 或类似的系统,您可能还需要对其进行配置。
另外,您确定您的守护进程正在以用户身份运行debian-transmission
吗?如果是这样,以 root 身份:
# su debian-transmission -s /bin/sh -c 'echo test > /home/Transmission/Downloads/testfile'
运行应该没有错误;如果你的权限被拒绝,那么你肯定有权限问题。
您可能还会发现strace
在正在运行的守护进程上运行很有用。例如,如果守护进程的 pid 为 123:
# strace -f -p 123 |& grep EACCES # yes, acces with one s.
并在添加另一个 torrent 或停止/启动现有 torrent 时保持其运行,应该很快就会发现权限被拒绝错误。结果可能是您不知道 Transmission 正在尝试访问的文件。