|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
使用gcc或g++进行编译,使用gdb进行调试;
在Unix/Linux体系上相沿了多年的权限机制,因为完善天真性,在当今的信息体系上显得掉队和不够使用。但是一个新的权限机制尺度已出生出来,本
文将会为人人先容这个新机制在Linux上的操纵体例。
---------------------------------------------------------
典范的文件权限
典范的文件权限是如许的:
#>ls-l
-rwxrw-r--1adammis272401May102003test.doc
暗示文件属于用户adam,权限可读可写可运转;属于群组mis权限可读可写;其别人权限只读
传统的权限只能对一切者,群组,其他来设定3套权限
更庞大的权限则必要依附ACL
这个POSIXACL的功效在Linuxkernel2.6上被正式撑持,以后又被back-port到2.4kernel上。人人经常使用的档案体系,如:ext3,xfs,jfs,和
ReiserFS,都能利用ACL。固然,人人必要在编译kernel时启动ACL。
---------------------------------------------------------
启动ACL
固然在kernel中已加进了POSIXACL的撑持,可是其实不会主动启用的。我们必需在挂上档案体系时指明要利用ACL。比方:
mount-text3-oacl/dev/sda1/home
个中“-oacl”参数暗示在/dev/sda1上启用ACL的选项。我们亦能够在/etc/fstab中到场选项:
/dev/sda1/homeext3acl12
---------------------------------------------------------
检察文件的ACL信息
#>getfacltest.doc
#file:test.doc
#owner:adam
#group:mis
user::rw-
group::rw-
other::r--
---------------------------------------------------------
会见型ACL设置
变动ACL
setfacl”指令能变动一个档案或目次的ACL。其用法以下:
setfacloptionrulesfiles
option:
-m用来新增或修正ACL中的划定规矩
-x用来移除ACL中的划定规矩
rules:
user:(uid/name):(perms)指定某位利用者的权限
group:(gid/name):(perms)指定某一群组的权限
other::(perms)指定别的利用者的权限
mask::(perms)设定无效的权限屏障
假如想让hr群组的利用者能读取“test.doc”而别的的人不克不及读取的话。我们能够用以下的指令告竣:
setfacl-mgroup:hr:r,other::-test.doc
以getfacl检视新的ACL:
[adam@wwwadam]$getfacltest.doc
#file:test.doc
#owner:adam
#group:mis
user::rw-
group::rw-
group:hr:r--
mask::rw-
other::---
要让利用者adam和eva能读取和写进,群组mis和hr只能读取,别的人不克不及读取和写进。我们只须多加两个划定规矩便能告竣:
setfacl-mgroup::r,user:eva:rwreport.doc
[adam@wwwadam]$getfaclreport.doc
#file:report.doc
#owner:adam
#group:mis
user::rw-
user:eva:rw-
group::r--
group:hr:r--
mask::rw-
other::---
---------------------------------------------------------
预设型ACL
预设型ACL只可用于目次,它决意了该目次下新创建的档案或目次的ACL。要设定预设型ACL,一样利用“setfacl”。所分歧的是,在每一个划定规矩前加上“
default:”,比方:
setfacl-mdefault:user::rw/home/adam
假如以为指令太长的话我们可使用大略字符:
长写简写
user:u:
group:g:
other:o:
mask:m:
default:d:
setfacl-md:u::rw,d:u:eva:rw,d:g::r,d:o::-/home/adam
[adam@wwwadam]$getfacl/home/adam
getfacl:Removingleading/fromabsolutepathnames
#file:home/adam
#owner:adam
#group:adam
user::rwx
group::---
other::---
default:user::rw-
default:user:eva:rw-
default:group::r--
default:mask::rw-
default:other::---
创建新的档案并检视其存取型ACL:
[adam@wwwadam]$touchnewfile
[adam@wwwadam]$getfaclnewfile
#file:newfile
#owner:adam
#group:mis
user::rw-
user:eva:rw-
group::r--
mask::rw-
other::---
</p>
看不懂man文档的人.在linux中,命令可分为系统基本命令和应用程序命令.系统基本命令是所有的unix类系统都支持的命令,走到哪都不变,只要是unix类系统上就肯定有. |
|