[问题]如何让新建文件的group和other的访问权限为read-only??

系统安装、升级讨论
版面规则
我们都知道新人的确很菜,也喜欢抱怨,并且带有浓厚的Windows习惯,但既然在这里询问,我们就应该有责任帮助他们解决问题,而不是直接泼冷水、简单的否定或发表对解决问题没有任何帮助的帖子。乐于分享,以人为本,这正是Ubuntu的精神所在。
回复
yangjian05
帖子: 6
注册时间: 2006-11-29 20:56

[问题]如何让新建文件的group和other的访问权限为read-only??

#1

帖子 yangjian05 » 2006-12-07 18:56

HI 各位。

默认建立的文件,other的访问权限为none.
所以我建立PHP文件后,还要手动改属性,才可以在浏览器测试。
有什么好办法吗?? 谢谢。
yangjian05
帖子: 6
注册时间: 2006-11-29 20:56

#2

帖子 yangjian05 » 2006-12-08 11:53

用touch新建的文件就有read属性。

听说改umask就行,改哪个文件的umask ??????????????????
yangjian05
帖子: 6
注册时间: 2006-11-29 20:56

#3

帖子 yangjian05 » 2006-12-08 15:38

有朋友遇到这麻烦吗??没有也回一下呀

照下面的方法做了,没有效果
umask命令用来设置限制新建文件权限的掩码。其一般格式是:umask mode

当新文件被创建时,其最初的权限由文件创建掩码决定。用户每次注册进入系统时,umask命令都被执行,并自动设置掩码mode来限制新文件的权限。用户可以通过再次执行umask来改变默认值,新的权限将会把旧的覆盖掉。

利用umask命令可以指定哪些权限将在新文件的默认权限中被删除。例如,可以使用下面的命令创建掩码,取消组用户的写权限以及其他用户的读、写和执行权限: umask u=,g=w,o=rwx

执行该命令以后,下面所建新文件的文件主权限未作任何改变,而组用户没有写权限,其它用户的所有权限都被取消。

应注意,在umask命令和chmod命令中,操作符=的作用恰恰相反。在chmod中,利用它来设置指定的权限,而其余权限都被取消;但是在umask命令中,它将在原有权限的基础上把指定的权限删除。

不能直接利用umask创建一个可执行的文件,用户只能在其后利用chmod命令使它具有执行权限。假设执行了下面命令:
umask u=,g=w,o=rwx

虽然在命令行中,文件主和组用户的执行权限没有被删去,但默认的文件权限还是640(即rw-r-----),而不是750(rwxr-x---)。但是,如果创建的是目录,或者通过编译程序创建一个可执行文件,将不受此限制。在这种情况下,文件的执行权限会被设置。

此外,也可以使用八进制数值来设置mode。在umask中所指定的权限表示要删除的权限,所以,如果一个文件原来的初始权限是777,那么执行命令umask 022以后, 那么该文件的权限将变为 755;如果该文件原来的初始权限是666, 那么该文件的权限将变为644。

使用下面的命令可以检查新创建文件的默认权限:
umask -s

上面命令中,选项-s表示以字符形式显示当前的掩码。

如果直接输入umask命令,不带任何参数,那么将以八进制形式显示当前的掩码。系统默认的掩码是0022。
头像
BigSnake.NET
帖子: 12522
注册时间: 2006-07-02 11:16
来自: 廣州
联系:

#4

帖子 BigSnake.NET » 2006-12-08 18:07

yangjian05 写了:用touch新建的文件就有read属性。

听说改umask就行,改哪个文件的umask ??????????????????
既然touch的有read屬性,問題應該出在你創建文件所用的程序
看一下owner是誰
^_^ ~~~
要理解递归,首先要理解递归。

地球人都知道,理论上,理论跟实际是没有差别的,但实际上,理论跟实际的差别是相当大滴。
chenzhouc
帖子: 131
注册时间: 2006-08-28 16:52
来自: 上海外国语大学

#5

帖子 chenzhouc » 2006-12-09 23:24

umask 是在.bashrc 里改的,改了之后所有的文件就 相应的减去这样的权限,也许你看不懂。我建议你还是用 chmod 命令

不懂建议看man文件
Sunken Boot
头像
SuperWar3Fan
帖子: 1263
注册时间: 2006-05-20 6:25
来自: 山东淄博
联系:

#6

帖子 SuperWar3Fan » 2006-12-10 14:30

在你的目录下面建立一个.template,写一个空文件,其权限是你的要求。
以后在右键的新建里面的模板建立!
回复