我无法使用 php 程序在网络驱动器(由 samba 托管)上写入。为什么?

我无法使用 php 程序在网络驱动器(由 samba 托管)上写入。为什么?

我有一个托管在 Samba 上的网络驱动器服务(我无法更改其设置),当我使用 mount.cifs 将其安装到我的 ubuntu 电脑上时,我能够读写其内容。要在那里创建目录或文件,只需使用 sudo(我当前的用户有 sudo 权限)。

使用的挂载命令是:sudo mount.cifs //address.to.samba /mnt/temp -o"username=user,password=pswd"

当网络驱动器安装在 /mnt/temp/ 上时,我的 php 程序file_exists(/mnt/temp/)返回 True,而 asis_writable(/mnt/temp/)返回 false。

/mnt/temp 的权限最初为 755。但即使我将该目录的权限 chmod 为 766,它也不会改变。

我该怎么办 ?

答案1

CIFS 文件系统从命令参数中获取其所有者和组mount

mount -t cifs -o 'uid=...,gid=...,file_mode=...,dir_mode=...,credentials=...'

请参阅手册页mount(8)了解详情。

您可能想要使用 Apache HTTP 服务器运行的 uid/gid 来挂载文件系统。

相关内容