首先我想描述一下环境:
服务器:
Windows Server 2016(保存网络 SMB 共享文件夹)
客户:
Mac OS X (El Capitan/Sierra),所有用户都使用它并拥有对网络共享根目录和所有子文件夹等的完全访问权限。他们不在域中,但使用所有相同的凭据连接到网络共享。使用与最新 MAC 操作系统不兼容的软件。
现在的问题:
当用户访问网络共享上的 excel 文件时,他们不能以相同的名称再次保存它。他们可以删除文件、重命名它们、移动它们等。所以现在他们必须打开一个 excel 文件,以不同的名称保存它,删除前一个文件,然后将新文件重命名回旧文件。这不是很糟糕,但很烦人。其他 Office 软件产品按预期工作(Word、Powerpoint 等),只有 Excel 导致此问题。
到目前为止我尝试/检查了什么:
- 确保网络共享根目录中的 .temporaryitems 为用户提供完全访问权限。
- 确保没有其他人访问我正在使用的同一文件
- 在 Excel 中禁用自动保存功能
- 在网络共享上禁用 .DS_Store 创建
什么是错误消息:
无法将其保存在 bla.xlsx 下,将文件保存为 [大约 8 位的随机十六进制文件名]。(注意:该文件可以在 .temporaryitems 文件夹中找到)
我的老板不会接受的解决方案:
- 将网络共享更改为 cifs 或 afp 而不是 smb(背后的原因无关紧要)
我想到的解决方法,但我的老板不太高兴:
- 在他们的 NAS 上创建了一个网络共享 (smb)。在那里工作完美。老板抱怨它不会包含在备份中。所以我想在服务器上创建一个 VM 并备份它。老板对此有点满意,但更喜欢没有解决方法的解决方案。
我可能忘记了我尝试过的事情,因为最初的错误消息和错误行为是 FUBAR,我调整了设置,现在看起来如上所述。
仅供参考,如果我以新名称保存一个 excel 文件,我可以随时以相同的名称再次保存它,除非我关闭该文件。关闭文件并重新打开后,“乐趣”就开始了。
好的,在我又花了几个小时并尝试了一大堆新选项之后,我找到了一个非常有效的解决方案。
所以这是怎么回事:
1) 禁用 Apple 产品在网络共享上创建 .DS_Store 文件
2) 转到共享根目录并找到隐藏文件夹
.temporaryItems
,并授予 apple-users 对其的完全访问权限。例如,如果您的网络共享是\\server01\Files
并且您的文档位于\\server01\Files\Excel-Docs\excel-file.xlsx
,则隐藏文件夹位于\\server01\Files\.temporaryItems
3) 在每个苹果产品上,您都打开了查找器并导航到包含 excel 文档的文件夹。然后在最上面去
View
然后去Hide View Options
。取消选中文档预览选项。或者,您可以在打开取景器后立即执行此操作,然后为所有文件夹将其关闭。在我的例子中,客户通常希望看到他们文档的预览,所以我将所有 excel 文档放入一个文件夹并禁用那里的预览。
4) 删除网络共享上的所有临时文件和仍然存在的 .DS_Store 文件。这包括以文件名开头开头的文档
$
。5)重启!
为了更好地理解,我应该补充一些话。至少在我能够理解的范围内(可能包含不正确的信息,因为我目前还不是 MAC 专家)
通常 FULL ACCESS 对于普通的 Windows 环境来说太多了。但是如果那个 .temporaryitems 文件夹没有给苹果用户那个权限,那么他们会得到奇怪的行为,因为他们不能在那里保存他们的临时文件。
预览选项很麻烦,即使在正常的 Windows 环境中也是如此。对于预览,系统已经打开文件。因此,如果您通过双击打开一个文件,您也会打开它的预览。因此,当您尝试以相同名称保存文档时,它会显示“不行,Jose!文件仍然打开!”。这就是为什么客户可以用新名称保存 excel 文档,然后随心所欲地保存,除非他们重新打开该文件。因为当他们以新名称保存它时,他们没有在 Finder 上选择它,因此没有预览。
删除那些 .DS_Store 文件和临时文件,您将摆脱可能仍然存在的任何“标记”(我不知道正确的术语),文件可能被任何 Apple 用户打开,甚至被其中之一锁定。