第1章 文件安全与权限

1.1 文件
$ ls -l
total 16
-rw-r--r--    1 root root 15712 Dec 14  2016 anaconda-post.log

-rw-r--r--:
rw-:文件属主权限 这是前面三位
r--:同组用户权限 这是中间三位
r--:其他用户权限 这是最后三位
权限位上的"-"代表权限禁止,第一个"-"代表文件类型

r 读权限
w 写/更改权限
x 执行该脚本或程序的权限
-rwxrwxrwx 普通文件,文件属主读写执行,同组用户读写执行,其他用户读写执行。

1 该文件硬链接的数目。
root 文件的属主。
root 文件的属主root所在的缺省组(也叫做root )。
15712 用字节来表示的文件长度,记住,不是 K字节!
Dec 14  2016 文件的更新时间。
anaconda-post.log 文件名。

1.2 文件类型
d 目录。
l 符号链接(指向另一个文件)。
s 套接字文件。
b 块设备文件。
c 字符设备文件。
p 命名管道文件。
- 普通文件,或者更准确地说,不属于以上几种类型的文件。

1.3 chmod命令符号模式
c h m o d命令的一般格式为:
chmod [who] operator [permission] filename
w h o的含义是:
u 文件属主权限。
g 同组用户权限。
o 其他用户权限。
a 所有用户(文件属主、同组用户及其他用户 )。
o p e r a t o r的含义:
+ 增加权限。
- 取消权限。
= 设定权限。
p e r m i s s i o n的含义:
r 读权限。
w 写权限。
x 执行权限。
s 文件属主和组set-ID。
t 粘性位*。
l 给文件加锁,使其他用户无法访问。
命 令             结 果        含 义
chmod a-x myfile  rw- rw- rw-  收回所有用户的执行权限
chmod og-w myfile rw- r-- r--  收回同组用户和其他用户的写权限
chmod g+w myfile  rw- rw- r--  赋予同组用户写权限
chmod u+x myfile  rwx rw- r--  赋予文件属主执行权限
chmod go+x myfile rwx rwx r-x  赋予同组用户和其他用户执行权限

1.4 chmod命令绝对模式
chmod [mode] file
其中mode是一个八进制数。
表1-3 八进制目录/文件权限表示
八进制数 含义         
0400     文件属主可读   
0200     文件属主可写 
0100     文件属主可执行 
0040     同组用户可读 
0020     同组用户可写
0010     同组用户可执行
0004     其他用户可读
0002     其他用户可写
0001     其他用户可执行
文件属主、同组用户和其他用户分别所能够具有的最大权限值就是7。

表1-4 计算权限值
文件属主 同组用户 其他用户
rwx         rwx      rwx
4+2+1       4+2+1    4+2+1

例子:
计算1:
-rw-r--r--
0400 + 0200    (文件属主可读、写) = 0600
0040           (同组用户可读)     = 0040
0004           (其他用户可读)     = 0004
                                    0644
计算2:
rw- r-- r--                                    
4+2 4   4
644

1.5 目录
表1-5 目录权限
r 可以列出该目录中的文件
w 可以在该目录中创建或删除文件
x 可以搜索或进入该目录
如果把同组用户或其他用户针对某一目录的权限设置为 --x,那么他们将无法列出该目录中的文件。
如果该目录中有一个执行位置位的脚本或程序,只要用户知道它的路径和文件名,仍然可以执行它。用户不能够进入该目录并不妨碍他的执行。
目录的权限将会覆盖该目录中文件的权限。

1.6 suid/guid

1.7 chown/chgrp/group/id
chown palinue project
文件project的所有权现在由原用户xxx交给了用户pauline。
chgrp sybadmin project
用户palinue现在把该文件所属的组由admin(当前用户组)变为sybadmin(系统中的另外一个用户组)。
group/id
查询当前用户的用户组

1.8 umask
当最初登录到系统中时, umask命令确定了你创建文件的缺省模式。这一命令实际上和chmod命令正好相反。
umask nnn(nnn为umask置000-777)
系统不允许你在创建一个文本文件时就赋予它执行权限,必须在创建后用 chmod命令增加这一权限。所以创建文件时最大为4+2=6;
目录可以创建时赋予执行权限,所以创建目录时最大4+2+1=7.
umask 000  文件:666 -rw-rw-rw-  目录:777 drwxrwxrwx 
umask 002  文件:664 -rw-rw-r--  目录:775 drwxrwxrw-
umask 022  文件:644 -rw-r--r--  目录:755 drwxrw-rw-
查看当前umask值,直接输入umask命令

1.9 符号连接
创建软连接(可以是目录,可以是文件,链接权限默认777)
ln [-s] source_path target_path
$ ll
total 7436
-rw-rw-r-- 1 jbossuser jbossuser       0 Aug 24 19:20 dst
-rwxr--r-- 1 jbossuser jbossuser       0 Aug 27 10:08 myfile
-rw-rw-r-- 1 jbossuser jbossuser 7613221 Aug 27 11:48 smcrm-sit-wildfly-85756-0.log

文件smcrm-sit-wildfly-85756-0.log创建软链接server.log
$ ln -s /opt/logs/app/smcrm-sit-wildfly-85756-0.log /opt/logs/app/server.log

$ ll
total 7436
-rw-rw-r-- 1 jbossuser jbossuser       0 Aug 24 19:20 dst
-rwxr--r-- 1 jbossuser jbossuser       0 Aug 27 10:08 myfile
lrwxrwxrwx 1 jbossuser jbossuser      43 Aug 27 16:12 server.log -> /opt/logs/app/smcrm-sit-wildfly-85756-0.log
-rw-rw-r-- 1 jbossuser jbossuser 7613221 Aug 27 11:48 smcrm-sit-wildfly-85756-0.log                                
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值