免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3471 | 回复: 6

[FreeBSD] 对于UMASK和用户的关系无法理解 [复制链接]

论坛徽章:
0
发表于 2011-07-01 18:26 |显示全部楼层
系统默认umask是022  网站目录owner是www:www  目录mod是777  但是用ftp上传文件到该目录后文件mod是644  文件所有者成了ftp:www

为了解决这个问题我在/etc/login.conf里把www和ftp用户的默认umask都修改成了000



但是现在用web程序 也就是www用户创建的新文件owner成了root:www  文件mod也是644



请问为什么会出现这种情况?我思路哪里错了还是对umask概念理解错误?

论坛徽章:
0
发表于 2011-07-02 00:13 |显示全部楼层
系统默认umask是022  网站目录owner是www:www  目录mod是777  但是用ftp上传文件到该目录后文件mod是644  文件所有者成了ftp:www


检查你FTP程序的用户身份和umask

但是现在用web程序 也就是www用户创建的新文件owner成了root:www  文件mod也是644


如果是APACHE的话应该是以root身份来启动的

论坛徽章:
0
发表于 2011-07-02 08:44 |显示全部楼层
本帖最后由 stalkerru 于 2011-07-02 08:46 编辑

如果web服务创建的文件/目录owner都是root的话  那web服务器本身岂不是就没有权限访问了?另外请问web服务器配置文件里指定用户的作用是什么?

论坛徽章:
54
2017金鸡报晓
日期:2017-02-08 10:39:42操作系统版块每日发帖之星
日期:2016-03-08 06:20:00操作系统版块每日发帖之星
日期:2016-03-07 06:20:00操作系统版块每日发帖之星
日期:2016-02-22 06:20:00操作系统版块每日发帖之星
日期:2016-01-29 06:20:00操作系统版块每日发帖之星
日期:2016-01-27 06:20:00操作系统版块每日发帖之星
日期:2016-01-20 06:20:00操作系统版块每日发帖之星
日期:2016-01-06 06:20:0015-16赛季CBA联赛之江苏
日期:2015-12-21 20:00:24操作系统版块每日发帖之星
日期:2015-12-21 06:20:00IT运维版块每日发帖之星
日期:2015-11-17 06:20:002015亚冠之广州恒大
日期:2015-11-12 10:58:02
发表于 2011-07-02 10:42 |显示全部楼层
apache没有理由创建root的文件,再检查一下group,也许www不在你指定的那个组里。

也有可能web是通过其它途径创建的文件,比如php-fcgi,它的用户和组是单独设置的。

论坛徽章:
0
发表于 2011-07-02 11:32 |显示全部楼层
本帖最后由 stalkerru 于 2011-07-02 11:34 编辑

php-fcgi的确是通过php-fpm开启的  但是默认配置也没有改过



至于用户组  对passwd文件我看不太懂  不知道www这个配置对不对

论坛徽章:
54
2017金鸡报晓
日期:2017-02-08 10:39:42操作系统版块每日发帖之星
日期:2016-03-08 06:20:00操作系统版块每日发帖之星
日期:2016-03-07 06:20:00操作系统版块每日发帖之星
日期:2016-02-22 06:20:00操作系统版块每日发帖之星
日期:2016-01-29 06:20:00操作系统版块每日发帖之星
日期:2016-01-27 06:20:00操作系统版块每日发帖之星
日期:2016-01-20 06:20:00操作系统版块每日发帖之星
日期:2016-01-06 06:20:0015-16赛季CBA联赛之江苏
日期:2015-12-21 20:00:24操作系统版块每日发帖之星
日期:2015-12-21 06:20:00IT运维版块每日发帖之星
日期:2015-11-17 06:20:002015亚冠之广州恒大
日期:2015-11-12 10:58:02
发表于 2011-07-02 15:17 |显示全部楼层
本帖最后由 lsstarboy 于 2011-07-02 15:23 编辑

先运行一下ps,看php-cgi的用户是不是www:
ps -jU www

结果应该类似下面:
www   1152  1104  1104  1104    0 I     ??    0:00.00 /usr/local/sbin/php-fpm


再运行一下id命令看看:
id www


新的php-fpm.conf是这个样子的:
; Unix user/group of processes
; Note: The user is mandatory. If the group is not set, the default user's group
;       will be used.
user = www
group = www

论坛徽章:
0
发表于 2011-07-02 16:46 |显示全部楼层
man umask
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP