Perl和PHP在Linux下无法mkdir 777的问题
首先Perl mkdir 的语法是:
1.mkdir('dir', 代表九位二进制数字的十进制值)
设置775,则该值为十进制的509,即二进制的111111101
此数值不能设置为111111111即十进制的511即777。
2.mkdir('dir', 0常见unix3位权限)
可以设置777。
然后在linux下时,由于umask的原因,只能设置为755。
因为创建文件时的权限是umask和mode的&运算的值。
具体原因参见:http://www.perlmonks.org/?node_id=543251
可用下列代码验证:
$ perl -e'printf "umask: %04o\n", umask; printf "mode: %04o\n", 0777; +printf "masked mode: %04o\n", 0777 & ~umask'
umask: 0022
mode: 0777
masked mode: 0755
解决办法如下:
1.可以设置umask时,如下代码:
my $old_umask = umask;
umask 0;
mkdir('test_dir', 0777);
umask $old_umask;
2.或者创建完后赋予权限:
chmod test_dir, 777
相关文档:
linux下的软件RAID支持RAID级别0,1,4,5,6,今天特别测试一下RAID6。
步骤一:准备分区
分区情况如下,具体如何分区就不介绍了。
/dev/hdb5 5240 5252 1043 ......
Linux 内核 最流行的开源操作系统内核
Linux 内核组成
Linux 剖析系列
内核配置及编译
性能调试
Linux 内核开发与测试
内核 2.4 与 2.6 比较
内核其他文章
Linux 内核是一个庞大而复杂的操作系统的核心,不过尽管庞大,但是却采用 ......
1.定位,明确方向。
2.定位后就去尝试。不要再谈能不能做。
以上是好友给我的建议,很中肯。
第一点,我需要确定自己今后发展的方向,不能再像现在这样什么都去学,结果什么都一无所成。
第二点,制定计划后就应该马上着手去执行,遇到挫折时不要急着说,我熬夜了多久多久,还是没学会啊,而是静心分析,然后对症下药, ......
memcache::debug
bool memcache_debug ( bool $on_off )
说明:
控制调试功能,前提是php在编译的时候使用了-enable-debug选项,否则这个函数不会有作用。
参数:
$on_off:true表示开启调试,false表示关闭调试
返回值:
如果php在编译的时候使用了-enable-debug选项,返回true,否则返回false
Memcache::decremen ......
向mysql写入数据时,如:mysql_query("update tableName set `title`='goaler's blog'");
这个时候,PHP将会报错,ASP中处理时也一样。
因为数据库对单引号过敏。
ASP中需要进行replace("'","''",str);
而PHP中则可以直接使用addslashes。
ASP问题这里暂不考虑,本文要说的是PHP相关的strip ......