unix用户权限:UNIX文件安全和权限

在终端输入: ls -l xxx.xxx (xxx.xxx是文件名)那么就会出现相类似信息主要都是这些:

-rw-rw-r--

共有10位数其中:

最前面那个 - 代表是类型
中间那 3个 rw- 代表是所有者(user)
然后那 3个 rw- 代表是组群(group)
最后那 3个 r-- 代表是其他人(other)

然后再解释下后面那9位数:

r 表示文件可以被读(read)
w 表示文件可以被写(write)
x 表示文件可以被执行(如果它是话)
- 表示相应权限还没有被授予

现在该说说修改文件权限了

在终端输入:chmod o+w xxx.xxx

表示给其他人授予写xxx.xxx这个文件权限

chmod go-rw xxx.xxx

表示删除xxx.xxx中组群和其他人读和写权限

其中:

u 代表所有者(user)
g 代表所有者所在组群(group)
o 代表其他人但不是u和g (other)
a 代表全部也就是包括ug和o
r 表示文件可以被读(read)
w 表示文件可以被写(write)
x 表示文件可以被执行(如果它是话)

其中:rwx也可以用数字来代替

r ------------4
w -----------2
x ------------1
- ------------0

 

当大家都明白了上面东西的后那么我们常见以下些权限就很容易都明白了:

-rw------- (600) 只有所有者才有读和写权限
-rw-r--r-- (644) 只有所有者才有读和写权限组群和其他人只有读权限
-rwx------ (700) 只有所有者才有读执行权限
-rwxr-xr-x (755) 只有所有者才有读执行权限组群和其他人只有读和执行权限
-rwx--x--x (711) 只有所有者才有读执行权限组群和其他人只有执行权限
-rw-rw-rw- (666) 每个人都有读写权限
-rwxrwxrwx (777) 每个人都有读写和执行权限
 

 

来源:Magicer专栏

使用ls -l命令,如下列:

total 74434
-rwxrwxr-x 2 user dba 39921 1月 16 12:50 file1
drwxrwxr-x 2 user dba 4096 1月 16 15:29 folder

total 74434 表示该目录中所有文件所占空间
2 表示该文件硬链接数目
39921 表示该文件长度,用字节表示,不是K字节
-rwxrwxr-x 代表该文件或目录读写执行权限,第位表示该文件类型(7种)
d 目录 l 符号链接(指向另个文件) s 套接字文件 b 块设备文件
c 设备文件 p 命名管道文件 - 普通文件

段 rwx 表示文件属主权限: r,w,x(执行)
第 2段 rwx 表示文件属主缺省组权限: r,w,x
第 3段 r-x 系统中其他用权限: r,x

注意:如果文件属性为-r--------,文件属主仍可以通过重定向方式向该文件写入

chmod命令:分为符号模式和绝对模式两种:

符号模式格式:

chmod [who] operator [permission] filename

who含义:
u 文件属主权限 g 同组用户权限 o 其他用户权限 a 所有用户

operarot含义:
+ 增加权限 - 取消权限 = 设定权限

permission含义:
r 读权限 w 写权限 x 执行权限 s 文件属主和组-ID
t 粘性位 l 给文件加锁,使其他用户无法访问

如果在个目录上出现"t"位,就表示该目录中文件只有其属主才可以删除,即使同组用户或赋予和属主同等权限;如果在文件上出现"t"位,就表示该脚本或在执行时会被放在交换区(虚存)

例: chmod u+x filename 表示属主增加写权限
chmod u+x o-w filename 如果原来权限是 -rw-r--rw- ,改变后为 -rwxr--r--

绝对模式:
chmod [mode] filename mode有3个8进制数字组成,比如chmod 777 filename

参数R: 比如 chmod -R 644 /usr/* 表示次将/usr目录下文件连同子目录文件改变成644

目录权限覆盖文件权限,意思如果文件可写,但是其目录不能写,那么仍然不能写此文件

suid/guid命令:
suid意味着如果某个用户对属于自己shell脚本设置了这种权限,那么其他用户在执行这脚本时也会具有其属主相应权限同样原则也适用于guid,执行相应脚本用户将具有该文件所属用户组中用户权限

设置思路方法: (使用 ls -l |grep '^...s' 查看suid权限文件)
chmod 4711 结果 rws--x--x 使用4来设置suid
chmod 6711 结果 rws--s--x 使用4+2来设置suid和guid
chmod 2711 结果 rwx--s--x 使用2来设置guid

也可以使用 chmod u+s filename 来设置,如果看到是S,则表示该权限位未被设置,没有实际意义

chown/chgrp命令:
chown -R -h owner[:group] filename
改变文件属主,-R表示所有目录,-h表示改变符号链接文件不影响其目标文件

chgrp -R -h group filename 用于改变文件属组
id [user] , group [user] 显示user所属组,如不加则是查看自己

umask命令:
用于确定创建文件缺省模式可以写入自己.profile或.bash_profile中
umask是从权限中取消权限,计算时候目录以777来计算,文件以666计算,也即
umask 002 的后,目录权限为 rwxrwxr-x(775), 文件权限为 rw-rw-r--(664)

符号链接-软链接:
命令格式: ln [-s] source_path target_path 可以是目录也可以是文件
链接旦创建成功,链接目录将具有777权限,但实际目录权限未改变

Tags:  unix删除文件 unix文件系统 unix权限 unix用户权限

延伸阅读

最新评论

发表评论