侧边栏壁纸
博主头像
Gerchart's Blog 博主等级

For the ideal life is the ideal of the life.

  • 累计撰写 6 篇文章
  • 累计创建 1 个标签
  • 累计收到 0 条评论

目 录CONTENT

文章目录

TrueNas-Scale SMB共享目录在Windows下.exe无可执行权限修复

gerchart
2025-07-06 / 0 评论 / 0 点赞 / 2 阅读 / 0 字
温馨提示:
部分素材来自网络,若不小心影响到您的利益,请联系我们删除。

TrueNas-Scale SMB共享目录在Windows下.exe无可执行权限修复

前言

  • 为了节省SSD空间,同时可以在VM中直接通过SMB运行已经下载的游戏,我想到了用SMB共享目录的形式,在TrueNas中开一个Dataset用来存放所有的游戏,在需要运行游戏的系统上通过Mapping SMB目录为磁盘的形式进行访问。
  • Steam创建目录,下载游戏都是很正常的,但在运行时出错了,显示没有权限运行.exe,如下图,就很奇怪。
    1751814937769.png
  • 直觉上感觉这个问题时可解的,于是开始寻找Solutions。

查找经过

  • 在TN上我并没有启用ACL权限控制,考虑到使用者仅有可能是我,因此只创建了smb_adminnfs_admin用来分别管理两种共享目录的数据集权限,并作为所有人。
  • 首先看到了一些针对ACL下,给予所有文件可执行权限的方式,就是添加acl allow execute always = yes这个参数到smb的config文件即可,但是TN不同于其他简单的额SMB共享服务端,近乎所有的操作只能通过GUI或CLI进行操作设置,于是继续搜索,但确定方向应该是ACL相关的,只要能找到TN如何将这个参数加到SMB ACL的配置里应该就行。
  • 于是顺藤摸瓜找到了一篇14.0的TN的处理方式,但在目前25.0的TN下,SMB设置里advance的Additional Parameters String选项不可选中修改,尝试F12后无果(肯定不行,试着玩玩)。
  • 也就是说,在Scale后,这个附加字段被ban了?但直觉告诉我应该是可以去直接动他的配置文件的。
  • 顺藤摸瓜,果然是有办法,但甚至TN的开发都不知情这个被Ban了(乐),原帖在此
  • 引用:
Wasn’t actually aware this had been removed myself. There are some workarounds in the thread linked.

From a shell:  
`cli`  
`sharing smb query` (grab the ID of your share)  
`sharing smb update x`  (where x = your share ID)

You’re taken into an editor where you should be able to uncomment and modify “auxsmbconf”, please note I’ve never actually looked at this before and am just relaying info from the linked thread. You should only touch these if you know what you are doing! Take appropriate measures to make sure you don’t break access to your share!

解决方案

  • 既然CLI能直接动config,那就好办了
  1. 打开TN GUI的Shell,然后进入cli
  2. 查看一下smb的ID
    1751815290839.png
  3. 修改对应的config
  4. 保存,大功告成
    1751815349987.png
0

评论区