如何使用linuxmount-bind命令将/var/www装载到/www



我正在开发一个php应用程序,我想将/var/www安装到/w。我已经运行了chown -hR www-data:www-data /var/www

我想要实现的是能够使用我的本地帐户创建新的文件和目录,其中www数据作为所有者,www数据作为组,而不会出现问题。

因此,我决定使用sudo mount --bind /var/www /www将/var/www装载到/www,这样所有本地帐户都可以修改它,文件和目录也将创建为www-data:www-data,但我无法使其工作。

我想您在这里要找的是setfacl命令,它为指定目录设置默认权限。装载目录后,请尝试以下操作:

sudo setfacl -d -m u:www-data:rwx /www

如果您也想更改现有权限,请添加-R标志:

sudo setfacl -R -d -m u:www-data:rwx /www

我通过采取这些步骤解决了这个问题。

  1. 已安装程序包bindfssudo apt install bindfs
  2. 将自己添加到www数据组sudo usermod -a -G www-data "$LOGNAME"
  3. 在/etc/fstab中使用安装/var/www/shared/user到/home/user/Projects/www数据

/var/www/shared/user /home/user/Projects/www-data fuse.bindfs create-for-user=www-data,create-for-group=www-data,mirror=@www-data 0 0

在/home/user/Projects/www数据下创建的文件看起来像是用户所有,但创建为www-data:www-data

ls -l /home/user/Projects/www-data:输出

drwxrwxr-x+ 2 user www-data 4096 Sep 11 08:40 project_1

ls -l /var/www/shared/user:输出

drwxrwxr-x+ 2 www-data www-data 4096 Sep 11 08:40 project_1

相关内容

  • 没有找到相关文章