`
天梯梦
  • 浏览: 13641034 次
  • 性别: Icon_minigender_2
  • 来自: 洛杉矶
社区版块
存档分类
最新评论

Linux umask限制导致php的mkdir 0777无效

 
阅读更多

这两天在写一个缓存模块,需要把生成的缓存目录和文件设置成777权限,好让ftp用户可以直接登录删除缓存,蛋疼的事也就这么发生了,明明用了mkdir($path, 0777);用ftp用户登录却删除不了,为什么呢?

 

查看了一下建立的目录的权限,发现mkdir建立的目录权限都是755的,我明明用的是777,立马google了一下,才知道原来是受Linux系统的 umask限制了,Linux的umask默认值是0022,所以php 的 mkdir 函数只能建立出755权限的文件夹出来。  

 

 小Tips查看Linux的umask值直接在终端输入命令umask就可以看到

 

解决方法:

$oldmask = umask(0);
mkdir("test", 0777);
umask($oldmask);

 

原文:http://stackoverflow.com/a/3997671/4009148

分享到:
评论

相关推荐

    LINUX UMASK详解

    LINUX UMASK详解 umask 0022

    linux下C语言中的mkdir函数与rmdir函数

    其中参数pathname是新创建目录的目录名,mode指定该目录的访问权限,这些位将受到文件创建方式屏蔽(umask)的修正。 该函数创建一个名为pathname的空目录,此目录自动含有“.”和“..”2个登记项。这个新创建目录的...

    Linux umask命令用法详解

    Linux umask命令 Linux umask命令指定在建立文件时预设的权限掩码。 umask可用来设定[权限掩码]。[权限掩码]是由3个八进制的数字所组成,将现有的存取权限减掉权限掩码后,即可产生建立文件时预设的权限。 语法umask...

    php中mkdir()函数的权限问题分析

    如linux默认的umask一般0022, 即创建目录的默认权限是0755, 所以这时php mkdir(‘./aa/’,0777) 得到目录的权限是0755. xw@xw-X201:~/Desktop/dd/aa$ umask 0022 xw@xw-X201:~/Desktop/dd/aa$ php -r "mkdir('./xw/...

    sujiangming#BigData-3#Linux umask文件创建时的权限的缺省模式1

    一、如何设置 umask 值通过 umask 命令可以设定文件创建时的缺省模式,对于每一类用户(文件属主、同组用户、其他用户)都存在一个相应的 umask 值中

    一个简单的linux命令 mkdir

    mkdir 命令用于创建指定名称的目录,要求用户具有要创建的目录下的读写权限。 一、命令格式 mkdir [option] Dir… 二、命令参数 -m, –mode=模式,设定权限<模式> (类似 chmod),而不是 rwxrwxrwx 减 umask -p, ...

    详解linux下umask的使用

    最近开始学习linux ,看完马哥的linux课程关于umask的这个部分, 写这篇博客希望加深下我对umask的理解 和对umask不太清楚的博友一些帮助。 1 umask 是什么 当我们登录系统之后创建一个文件是会有一个默认权限的,...

    201408深入浅出linux系统umask值及其对应文件权限(老男孩教育).pdf

    201408深入浅出linux系统umask值及其对应文件权限(老男孩教育).pdf

    深入浅出linux系统umask值及其对应的文件权限讲解.pdf

    深入浅出linux系统umask值及其对应的文件权限讲解.pdf

    php的mkdir()函数创建文件夹比较安全的权限设置方法

    如linux默认的umask一般0022, 即创建目录的默认权限是0755, 所以这时php mkdir(‘./aa/’,0777) 得到目录的权限是0755. 复制代码 代码如下: xw@xw-X201:~/Desktop/dd/aa$ umask 0022 xw@xw-X201:~/Desktop/dd/aa$ ...

    PHP mkdir()无写权限的问题解决方法

    但是如果直接用mkdir(‘文件地址’, 0777);时 发现新文件夹的权限并不是777,一般情况下会是022。 因为mkdir在给文件夹制定权限时,会跟当前登录操作系统用户的umask(用户缺省权限属 性)值进行位“与”,得到的值...

    oracle数据库创建脚本

    OLD_UMASK=`umask` umask 0027 mkdir -p /oradata mkdir -p /u01/app/oracle/admin/tdrb/adump mkdir -p /u01/app/oracle/admin/tdrb/dpdump mkdir -p /u01/app/oracle/admin/tdrb/pfile mkdir -p /u01/app/oracle/...

    linux新文件权限设置之umask的深入理解

    主要给大家介绍了关于linux新文件权限设置之umask的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧

    Linux文件权限详解

    Linux文件权限详解 文件和目录权限概述 一般权限 特殊权限

    linux必须的60个命令

    Linux提供了大量的命令,利用它可以有效地完成大量的工 作,如磁盘操作、文件存取、目录操作、进程管理、文件权限设定等。所以,在Linux系统上工作离不开使用系统提供的命令。要想真正理解Linux系统, 就必须从Linux...

    Linux学习笔记Linux学习资料Linux教程

    【linux学习笔记--17】...【linux学习笔记-3】文件操作(stat,chmod,umask).doc 【linux学习笔记-4】进程扇和进程链.doc 【linux学习笔记-5】编写自己的ls命令.doc 【linux学习笔记-6】文件IO操作--读写、重定向等.

Global site tag (gtag.js) - Google Analytics