我有来自 EMC 存储的 CIFS 共享,它安装在 Linux 以及其他 Windows 和 Mac 机器上。
在 Linux 服务器上,CIFS 共享使用 mount.cifs 挂载。我的 Linux 服务器上运行着 php 代码。php 代码可以创建文件和文件夹。
同时,我的用户从另一台 Windows 和 Mac 机器尝试向其添加文件和文件夹。
问题:Windows 机器创建的文件和文件夹无法被 php 读取。
我对此进行了大量研究,但找不到解决方案。我怀疑 Linux 上的 cifs-utils 包存在问题,因此我升级了 cifs-utils 包,但这并没有解决我的问题。
我的服务器信息:centos 6.6 uname -a 2.6.32-431.3.1.el6.i686 #1 SMP Fri Jan 3 18:53:30 UTC 2014 i686 i686 i386 GNU/Linux
Linux 上的 mount 命令: mount -t cifs -o username=administrator,password=password,rw,file_mode=0777,dir_mode=0777 //192.168.1.25/userworkspace /userworksp
非常感谢任何建议。
答案1
检查从 Windows 端创建的文件的权限(从 Linux 端检查,以便了解 PHP 代码正在使用什么)。可能是创建文件的用户/组受到限制,或者没有正确映射,导致 php 文件无权访问。