linux - 无法将文件保存到/var/www/html——即使我在 www-data 组中

标签 linux apache permissions sudo chgrp

我想保留 root 作为/var/www 的所有者

我想让 /var/www/var/www/* 可由 www-data 组访问 (rwx)。

我相信apache的用户是www-data。我将自己(用户:devon)添加到该组,但我仍然无法将文件保存到 /var/www/html。救命!

这非常清楚地说明了我尝试做的事情(如下)。我错过了什么?!

devon@cheap-dell /var $ ls -l
...
drwxrwsr-x  3 root www-data 4096 Apr 22 01:06 www
devon@cheap-dell /var $ cd www
devon@cheap-dell /var/www $ ls -l
total 2
drwxrwxr-x 4 root www-data 4096 Apr 22 17:25 html
devon@cheap-dell /var/www $ id devon
uid=1000(devon) gid=1000(devon) groups=1000(devon),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),108(lpadmin),110(sambashare)
devon@cheap-dell /var/www $ groups devon
devon : devon adm cdrom sudo dip plugdev lpadmin sambashare
devon@cheap-dell /var/www $ id www-data
uid=33(www-data) gid=33(www-data) groups=33(www-data)
devon@cheap-dell /var/www $ groups www-data
www-data : www-data
devon@cheap-dell /var/www $ sudo usermod -a -G www-data devon
devon@cheap-dell /var/www $ # just to be sure......
devon@cheap-dell /var/www $ sudo chgrp -R www-data /var/www
devon@cheap-dell /var/www $ sudo chgrp -R www-data /var/www/*
devon@cheap-dell /var/www $ sudo chmod -R g+rw /var/www
devon@cheap-dell /var/www $ sudo useradd -g www-data devon
useradd: user 'devon' already exists
devon@cheap-dell /var/www $ # good!
devon@cheap-dell /var/www $ ls -l
total 2
drwxrwxr-x 4 root www-data 4096 Apr 22 17:25 html
devon@cheap-dell /var/www $ cd html
devon@cheap-dell /var/www/html $ touch example
touch: cannot touch ‘example’: Permission denied
devon@cheap-dell /var/www/html $ # wtf?! I'm logged in as user devon
devon@cheap-dell /var/www/html $ echo ${APACHE_RUN_USER}

devon@cheap-dell /var/www/html $ # ?? where is it?
devon@cheap-dell /var/www/html $ users ${APACHE_RUN_USER}
devon devon devon devon
devon@cheap-dell /var/www/html $ # I would have expected user www-data, right?  
devon@cheap-dell /var/www/html $ groups ${APACHE_RUN_USER}
devon adm cdrom sudo dip plugdev lpadmin sambashare
devon@cheap-dell /var/www/html $ groups devon
devon : devon adm cdrom sudo dip www-data plugdev lpadmin sambashare
devon@cheap-dell /var/www/html $ sudo usermod -a -G www-data www-data
devon@cheap-dell /var/www/html $ touch example
touch: cannot touch ‘example’: Permission denied
devon@cheap-dell /var/www/html $ # why?!

最佳答案

答案:注销,然后重新登录以使组更改生效。 (这是巴马尔的回答。)

关于linux - 无法将文件保存到/var/www/html——即使我在 www-data 组中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29809885/

相关文章:

linux - FreeBSD sed 就地编辑文件时出错

java - Apache Groa 找不到主类错误

javascript - Ratchet Websocket Apache2 SSL 无法连接到 PHP websocket

Docker 与 ubuntu 用户共享文件权限

android - admob粗定位能提高多少收入?

linux - svn 提交失败 : Details Follow Directory . .. 丢失

linux - 如何将字符串输入重定向到 sudo?

java - Apache 阿夫罗 : UnresolvedUnionException when using union data type

javascript - Google Visualization API 多次调用权限被拒绝 (IE)

node.js - 无法安装 aerospike,在步骤 'node-gyp rebuild' 获取 aerospike 失败