linux文件权限s设置,Linux权限位(含特殊权限位s s t) 及chown\chmod命令使用

1.普通权限位

ls –l查看文件的属性

[root@oldboy ~]# ls -l

-rw-------. 1 root root 1073 Mar 4 22:08 anaconda-ks.cfg

-rwxrwxrwx 1 root root 256 Mar 24 21:27 get_ip.txt

-rw-r--r-- 1 root root 5 Mar 5 03:25 ifconfig

-rw-r--r--. 1 root root 22179 Mar 4 22:08 install.log

-rw-r--r--. 1 root root 5890 Mar 4 22:07 install.log.syslog

chmod 可以改变文件权限

a.直接加数字

chmod 777 filename  给文件777权限 即-rwxrwxrwx

b.对应属主(u)\属组(g)或者其它用户(o)加减权限

chmod g+x filename 给属组用户添加x权限

2.特殊权限:特殊权限有三种:--s--s--t;

如果原来有x权限,则用小写s或者t,原来没有x权限则用大写S或者T

suid    s(有x) S  4  用户对应的权限位(用户对应的3位上)

sgid    s(有x) S  2  用户组对应的权限位(用户组对应的3位上)

sticky  t(有x) T  1  其他用户对应的权限位

a.所有(onwer)人s权限:称为Set UID,简称为SUID的特殊权限;即当执行该文件时将具有该文件所有者的权限。

当在文件上设置 suid 时,将以文件的属主的身份而不是运行该文件的用户身份执行操作。其中好的操作范本是 passwd 命令,它需要设置 suid 位,以便更改密码的操作具有 root 权限。

设置 suid 位的示例:chmod u+s /bin/foo_file_name

b.所在(group)组s权限:称为Set GID,简称为SGID的特殊权限;即在该目录下建立的目录和文件都属于固定的组。sgid 位与 suid 位类似,操作是在目录的组所有权下完成的,而不是以运行命令的用户身份。

一个使用 sgid 的例子是,如果多个用户正在同一个目录中工作,并且目录中创建的每个文件都需要具有相同的组权限。下面的示例创建一个名为meilian_net 的目录,设置 sgid 位,并将组所有权更改为 webdev。

1)mkdir meilian_net

2)chmod g+s meilian_net

3)chown :webdev meilian_net

现在,在该目录中创建的任何文件,都将具有 webdev的组所有权,而不是创建该文件的用户的组。

1)cd meilian_net

2)touch file-sgid

3)ls -lah file-sgid

4)-rw-r--r--. 1 root webdev 0 Jun 12 06:04 file-sgid

设置Sgid方法:chmod 2755 file 或者 chmod g+s file

最后的t权限:称为Sticky Bit,简称为SBIT权限,只针对目录有效。它表示只能让所属主以及root可以删除(重命名/移动)该目录下的文件

我们知道/tmp是系统的临时文件目录,所有的用户在该目录下拥有所有的权限,也就是说在该目录下可以任意创建、修改、删除文件,那如果用户A在该目录下创建了一个文件,用户B将该文件删除了,这种情况我们是不能允许的。为了达到该目的,就出现了stick bit(粘滞位)的概念。它是针对目录来说的,如果该目录设置了stick bit(粘滞位),则该目录下的文件除了该文件的创建者和root用户可以删除和修改/tmp目录下的stuff,别的用户均不能动别人的,这就是粘滞位的作用。

Chmow使用

-R:对目录及该目录下的所有文件和子目录都进行相同的操作,即递归更改目录的所有者;

1)chown root:root aaaa.txt

2)chown root: aaaa.txt

在用户名后跟冒号【: 】运行该命令将同时设置用户和组所有权。要仅将文件 aaaa.txt 的用户所有权设置为 root 用户,操作命令:

chown root aaaa.txt

要仅更改文件 aaaa.txt 的组所有权,则需要在组之前加冒号,操作命令:

chown :root aaaa.txt

[test@oldboy ~]$ touch aaaa.txt

[test@oldboy ~]$ ls -l

-rw-rw-r-- 1 test test 0 Mar 25 19:52 aaaa.txt

[test@oldboy ~]$ chown root aaaa.txt #没有ROOT权限不能更改所属主或者组

chown: changing ownership of `aaaa.txt': Operation not permitted

[test@oldboy ~]$ su -

[root@oldboy ~]# ls

[root@oldboy test]# ls -l

-rw-rw-r-- 1 test test 0 Mar 25 19:52 aaaa.txt #aaaa.txt本身属实test用户

[root@oldboy test]# chown root aaaa.txt  #使用chown命令改变aaaa.txt所属实用户

[root@oldboy test]# ls -l

-rw-rw-r-- 1 root test 0 Mar 25 19:52 aaaa.txt #所属组test

[root@oldboy test]# chown :root aaaa.txt #改变所属组

[root@oldboy test]# ls -l

-rw-rw-r-- 1 root root 0 Mar 25 19:52 aaaa.txt

设置sticky方法:chmod 1777 file 或者 chmod o+t file

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值