问题
默认的application会使用一个User ID: 568,Group ID:568,名为apps的账号,此账号所创建的所有文件的默认权限都是apps所有的。
而有时候我们需要给一些apps添加已有目录,而这些目录有自己的权限,比如media文件夹是由media用户创建的,此时可能创建文件和删除文件遇到权限问题,比如qbittorrent应用等。
解决方法
修改配置
- 进入TrueNAS后台左边apps
- 选中要修改权限的apps,右侧的info中选择Edit
- 找到User and Group Configuration,将下方的568和568改为目标权限账户的用户ID和groupID。
如果没有对应的用户则需要TrueNAS的Credentials里面增加Group和user。注意和目标文件夹的Group与User保持一致。
此时应用会重启失败,显示如下内容:
进入后台view logs可以看到config的权限错误,这是因为第一次以apps的权限创建时生成了apps权限的config文件,需要进入shell后台做修改。
修改config目录权限
一般打开应用时TrueNAS会提示你默认的路径,如果不做修改则是原nas目录下的ix-applications数据集。我这里是:/mnt/NAS1/ix-applications/releases/qbittorrent/volumes/ix_volumes
此处为qbittorent原本的config目录,运行ls -lFa 可以看到权限为apps:apps,运行如下命令则可以修改目录权限:
sudo chown -R 用户名:组名 config
sudo chown -R 用户名:组名 downloads
这里的用户名和组名与上一步设置的一致。
可能权限给失败,这时需要用apps账户来修改权限,同时修改Credentials里面对应user的sudo权限才能够成功。
重启服务
此时重启服务,不出意外应该能顺利启动。