从Linux创建隐藏的Windows文件/文件夹

4

是否有可能在挂载的SMB共享文件夹上创建对Windows隐藏的文件? 在这种情况下,使用 .(点)前缀是不起作用的,因为它只在Linux上起作用。 基本上,我正在寻找与在Windows上使用 attrib +h 相同的效果,但在Linux下。


修正从Windows服务器挂载的CIFS共享。 - what4893
3个回答

0
假设您的Samba共享在中看起来像这样:

[share-with-hidden-files]
  comment = this share shows all files when browsing it (doesn't work as expected)
  path = /some/where/on/the/linux/file/system
  browseable = yes
  [...more settings...] 

再加一行:

[share-with-hidden-files]
  comment = this share includes some hidden files
  path = /some/where/on/the/linux/file/system
  browseable = yes
  [...more settings...] 
  hide files = /firstfile.doc/secondfile.pdf/.*/*.xls/

隐藏文件指令将把所有标记的文件变成不可见的(但它们仍然可以访问!)。DOS“隐藏”属性适用于与之匹配的任何文件或目录。

在上面的示例中,有两个文件明确地被命名为要隐藏的文件(一个 .doc 文件和一个 .pdf 文件),以及所有“点”文件和所有 .xls 文件。

使用隐藏文件的注意事项:

  • 文件名由“/”分隔
  • 文件名可能包含空格(但不能包含“/”)
  • 文件名区分大小写
  • 您可以使用“?”和“*”通配符来匹配文件名

0

尝试在您想要隐藏的文件中设置可由其他人执行的位。例如:

  • rwxrwxrw- <-- 文件不会被隐藏
  • rwxrwxrwx <-- 隐藏

希望这有所帮助。顺便说一句,如果您想要Windows隐藏属性适用于Linux共享,您将需要在samb.conf文件中设置map hidden = yes。


这似乎适用于您从Linux框架托管文件共享的情况。我有一个通过fstab挂载的CIFS文件共享,我正在尝试修改它。抱歉,在我的原始问题中应该更清楚地表达。 - what4893

0

你可以直接使用 setmode 文件名 +h


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接