You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

树莓派Transmission-daemon下载完成脚本sudo权限问题

解决transmission-daemon脚本执行sudo报错的问题

方案1:移除transmission-daemon的NoNewPrivileges限制

  • 打开transmission的系统服务文件:sudo nano /lib/systemd/system/transmission-daemon.service
  • 在[Service]区块中找到NoNewPrivileges=yes,将其改为NoNewPrivileges=no,或者用#注释掉该行
  • 重新加载服务配置并重启:
    sudo systemctl daemon-reload
    sudo systemctl restart transmission-daemon
    

修改后transmission-daemon运行时不再携带no_new_privs标志,脚本内的sudo命令即可正常执行。

方案2:给目标命令设置免sudo权限(更安全)

若不想修改服务的安全限制,可直接让运行transmission-daemon的用户无需密码就能执行指定的VPN重启命令:

  • 编辑sudoers配置:sudo visudo
  • 在文件末尾添加一行(替换pi为你的用户名,替换后面的命令为实际的VPN重启命令):
    pi ALL=(ALL) NOPASSWD: /usr/bin/systemctl restart openvpn@client.service
    
  • 保存退出后,脚本里直接执行该命令即可,无需添加sudo前缀。

方案3:让root能读取普通用户的transmission配置

如果坚持用root身份运行transmission-daemon:

  • 先停止服务:sudo systemctl stop transmission-daemon
  • 复制普通用户的配置到root目录:sudo cp -r ~/.config/transmission-daemon /root/.config/
  • 修改配置文件的所有者为root:sudo chown -R root:root /root/.config/transmission-daemon
  • 编辑服务文件,把[Service]里的User=pi改成User=root,然后执行:
    sudo systemctl daemon-reload && sudo systemctl restart transmission-daemon
    

内容的提问来源于stack exchange,提问作者gyandoo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.05 21:17:40