如何更改 transmission-daemon 创建的文件的默认权限?

如何更改 transmission-daemon 创建的文件的默认权限?

debian-transmission我有一台运行 Ubuntu 12.04 服务器的机器,其中运行 transmission-daemon 来处理 bitorrent。除了 transmission-daemon 以用户/组身份创建文件,并且具有 744 个文件权限外,其他一切都正常。

  • 我希望能够从 Samba 共享中删除并移动这些文件。

  • 我考虑过更改用户 debian-transmission 的主要组,但我担心这可能会影响对其他文件的访问。

  • 我认为最好将 debian-transmission 创建的新文件的默认权限更改为 774,并将自己添加到组 debian-transmission 中。

    我知道可以使用 umask 来完成此操作,但我的理解是,这将在 .profile 文件中设置,并且由于 debian-transmission 没有主文件夹,我不确定该文件是否存在于用户。那么我该如何实现这一点呢?

    欢迎提出建议或替代解决方案。提前致谢。

答案1

您可以在 transmission 的配置文件 ( /etc/transmission-daemon/settings.json) 中指定 umask。umask 通常以八进制表示,但不幸的是,json 不支持这种表示法,因此我们必须将其转换为十进制。您可以在 shell 中像这样执行此操作:

$ echo $(( 8#022 ))
18

这是默认值,但你可能想要 002,它在十进制中是相同的,所以

sudoedit /etc/transmission-daemon/settings.json

然后改为"umask": 18"umask": 2保存。

sudo systemctl reload transmission-daemon 

这告诉 transmission-daemon 重新读取配置文件。这很重要,否则更改将不会被采用。

还有一件事。如果您更改下载目录的组所有权,并在其上添加 setgid 位,则在该目录中创建的所有文件都将具有与该目录相同的组所有权。

sudo chgrp "$USER" /path/to/transmission/download/dir
sudo chmod g+s /path/to/transmission/download/dir

它不会影响已存在的文件。请参阅http://mywiki.wooledge.org/Permissions了解更多信息。

相关内容