当前位置: 技术问答>linux和unix
请教高手一个问题:目录权限的问题
来源: 互联网 发布时间:2015-09-30
本文导语: 在LINUX下如何精确设置一个目录的权限呢? 打个比方: 一个TEST的目录 文件所有权是U-A,所属组是G-A G-A里有U-B,U-C,U-D等多个用户,现在希望TEST目录U-B可以读,不能写,U-C可以写,U-D没有任何权限 请问要如何设置? ...
在LINUX下如何精确设置一个目录的权限呢?
打个比方: 一个TEST的目录 文件所有权是U-A,所属组是G-A
G-A里有U-B,U-C,U-D等多个用户,现在希望TEST目录U-B可以读,不能写,U-C可以写,U-D没有任何权限
请问要如何设置?
打个比方: 一个TEST的目录 文件所有权是U-A,所属组是G-A
G-A里有U-B,U-C,U-D等多个用户,现在希望TEST目录U-B可以读,不能写,U-C可以写,U-D没有任何权限
请问要如何设置?
|
用 chmod 命令
使用方法:chmod [who] [+ | - | =] [mode] [文件名?]
参数:
who :
u 表示“用户(user)”,即文件或目录的所有者。
g 表示“同组(group)用户”,即与文件属主有相同组ID的所有用户。
o 表示“其他(others)用户”。
a 表示“所有(all)用户”。它是系统默认值。
+ 赋予某权限;
- 取消某权限;
= 赋予给定权限并取消其他权限(如果有的话);
mode:
r 可读
w 可写
x 可执行
X 只有目标文件对某些用户是可执行的或该目标文件是目录时才追加x 属性
文件名:
以空格分开的要改变权限的文件列表,支持通配符
在一个命令行中可给出多个权限方式,其间用逗号隔开。例如:chmod g+r,o+r example
使用方法:chmod [who] [+ | - | =] [mode] [文件名?]
参数:
who :
u 表示“用户(user)”,即文件或目录的所有者。
g 表示“同组(group)用户”,即与文件属主有相同组ID的所有用户。
o 表示“其他(others)用户”。
a 表示“所有(all)用户”。它是系统默认值。
+ 赋予某权限;
- 取消某权限;
= 赋予给定权限并取消其他权限(如果有的话);
mode:
r 可读
w 可写
x 可执行
X 只有目标文件对某些用户是可执行的或该目标文件是目录时才追加x 属性
文件名:
以空格分开的要改变权限的文件列表,支持通配符
在一个命令行中可给出多个权限方式,其间用逗号隔开。例如:chmod g+r,o+r example
|
设置访问控制列表:setfacl
查询访问控制列表:getfacl
查询访问控制列表:getfacl
|
个人认为,应该是对所有者以外的,G-A组的成员另外进行权限的设置。通过ljt303(challenge) 所说的方法。如果想在GUI界面下设置这个好象是不可以的!最好是在命令模式下进行。
转载:
指令名称 : chmod
使用权限 : 所有使用者
使用方式 : chmod [-cfvR] [--help] [--version] mode file...
说明 : Linux/Unix 的档案存取权限分为三级 : 档案拥有者、群组、其他。利用 chmod 可以藉以控制档案如何被他人所存取。
mode : 权限设定字串,格式如下 : [ugoa...][[+-=][rwxX]...][,...],其中u 表示该档案的拥有者,g 表示与该档案的拥有者属于同一个群体(group)者,o 表示其他以外的人,a 表示这三者皆是。
+ 表示增加权限、- 表示取消权限、= 表示唯一设定权限。
r 表示可读取,w 表示可写入,x 表示可执行,X 表示只有当该档案是个子目录或者该档案已经被设定过为可执行。
-c : 若该档案权限确实已经更改,才显示其更改动作
-f : 若该档案权限无法被更改也不要显示错误讯息
-v : 显示权限变更的详细资料
-R : 对目前目录下的所有档案与子目录进行相同的权限变更(即以递回的方式逐个变更)
--help : 显示辅助说明
--version : 显示版本
范例 :将档案 file1.txt 设为所有人皆可读取 :
chmod ugo+r file1.txt
将档案 file1.txt 设为所有人皆可读取 :
chmod a+r file1.txt
将档案 file1.txt 与 file2.txt 设为该档案拥有者,与其所属同一个群体者可写入,但其他以外的人则不可写入 :
chmod ug+w,o-w file1.txt file2.txt
将 ex1.py 设定为只有该档案拥有者可以执行 :
chmod u+x ex1.py
将目前目录下的所有档案与子目录皆设为任何人可读取 :
chmod -R a+r *
此外chmod也可以用数字来表示权限如 chmod 777 file
语法为:chmod abc file
其中a,b,c各为一个数字,分别表示User、Group、及Other的权限。
r=4,w=2,x=1
若要rwx属性则4+2+1=7;
若要rw-属性则4+2=6;
若要r-x属性则4+1=7。
范例:
chmod a=rwx file
和
chmod 777 file
效果相同
chmod ug=rwx,o=x file
和
chmod 771 file
效果相同
若用chmod 4755 filename可使此程式具有root的权限
转载:
指令名称 : chmod
使用权限 : 所有使用者
使用方式 : chmod [-cfvR] [--help] [--version] mode file...
说明 : Linux/Unix 的档案存取权限分为三级 : 档案拥有者、群组、其他。利用 chmod 可以藉以控制档案如何被他人所存取。
mode : 权限设定字串,格式如下 : [ugoa...][[+-=][rwxX]...][,...],其中u 表示该档案的拥有者,g 表示与该档案的拥有者属于同一个群体(group)者,o 表示其他以外的人,a 表示这三者皆是。
+ 表示增加权限、- 表示取消权限、= 表示唯一设定权限。
r 表示可读取,w 表示可写入,x 表示可执行,X 表示只有当该档案是个子目录或者该档案已经被设定过为可执行。
-c : 若该档案权限确实已经更改,才显示其更改动作
-f : 若该档案权限无法被更改也不要显示错误讯息
-v : 显示权限变更的详细资料
-R : 对目前目录下的所有档案与子目录进行相同的权限变更(即以递回的方式逐个变更)
--help : 显示辅助说明
--version : 显示版本
范例 :将档案 file1.txt 设为所有人皆可读取 :
chmod ugo+r file1.txt
将档案 file1.txt 设为所有人皆可读取 :
chmod a+r file1.txt
将档案 file1.txt 与 file2.txt 设为该档案拥有者,与其所属同一个群体者可写入,但其他以外的人则不可写入 :
chmod ug+w,o-w file1.txt file2.txt
将 ex1.py 设定为只有该档案拥有者可以执行 :
chmod u+x ex1.py
将目前目录下的所有档案与子目录皆设为任何人可读取 :
chmod -R a+r *
此外chmod也可以用数字来表示权限如 chmod 777 file
语法为:chmod abc file
其中a,b,c各为一个数字,分别表示User、Group、及Other的权限。
r=4,w=2,x=1
若要rwx属性则4+2+1=7;
若要rw-属性则4+2=6;
若要r-x属性则4+1=7。
范例:
chmod a=rwx file
和
chmod 777 file
效果相同
chmod ug=rwx,o=x file
和
chmod 771 file
效果相同
若用chmod 4755 filename可使此程式具有root的权限
|
回复人:levine001(阿松) ( 一级(初级)) 信誉:100 2005-05-23 08:46:00 得分:0
?
楼上的筒子,setfacl 是设置文件的权限的吧?
-----------------------------------------------------------------
不知道楼主有没有听说过 Linux 的访问控制列表和扩展属性(即 ACL 和 EA )
有关ACL和EA的资料可以在 http://acl.bestbits.at/找到.
FC3 默认是安装了 ACL 支持的.
要打开分区的ACL支持, 要修改/ect/fstab文件, 在相应分区属性由 defaults 改为 acl
假设有文件 file1, 用户user1, user2, user3
令 user1 可以读写 file1 : setfacl -m u:user1:rw file1
令 user2 可以读 file1 : setfacl -m u:user2:r file1
令 user3 不能读写 file1: setfacl -m u:user3:--- file1
?
楼上的筒子,setfacl 是设置文件的权限的吧?
-----------------------------------------------------------------
不知道楼主有没有听说过 Linux 的访问控制列表和扩展属性(即 ACL 和 EA )
有关ACL和EA的资料可以在 http://acl.bestbits.at/找到.
FC3 默认是安装了 ACL 支持的.
要打开分区的ACL支持, 要修改/ect/fstab文件, 在相应分区属性由 defaults 改为 acl
假设有文件 file1, 用户user1, user2, user3
令 user1 可以读写 file1 : setfacl -m u:user1:rw file1
令 user2 可以读 file1 : setfacl -m u:user2:r file1
令 user3 不能读写 file1: setfacl -m u:user3:--- file1
|
用chmod不行吗?我觉得应该是用这个命令
|
我同意用 chmod 应该可以