你可能不知道的一些linux文件权限管理方法
作者:Y_xx 发布时间:2022-07-29 13:05:56
为什么需要权限管理?
1.计算机资源有限,我们需要合理的分配计算机资源。
2.Linux是一个多用户系统,对于每一个用户来说,个人隐私的保护是十分重要的
目录的 rwx 权限
当前用户:vagrant:vagrant
创建 testdir 目录,进入 testdir 目录内。创建文件 test。
$ mkdir testdir
$ cd testdir
$ touch test
修改 testdir 权限为 000,尝试执行 ls testdir
$ chmod 000 testdir
$ ls testdir/
ls: cannot open directory testdir/: Permission denied
修改 testdir 权限为 400,尝试执行 ls testdir
$ chmod 400 testdir
ls -l testdir/
ls: cannot access testdir/test: Permission denied
total 0
-????????? ? ? ? ? ? test
结果:能够读取目录下文件列表,但是看不到具体文件信息(权限、大小、用户组、时间等),尽管当前用户是 /testdir/test 的拥有者且具有 rwx 权限。
拥有目录的 r 权限可以读取目录下的文件列表。
继续,尝试进入 testdir 目录。
$ cd testdir/
-bash: cd: testdir/: Permission denied
看来 r 权限并不能让我们具有进入目录。
我们增加一个 x 权限试试。
~$ chmod 500 testdir/
~$ cd testdir/
~/testdir$ ls -l
total 0
-rw-rw-r-- 1 vagrant vagrant 0 Nov 19 08:16 test
成功进入。
拥有目录的 x 权限能够让我们进入到目录下。在此工作目录下,我们可以查看文件列表及文件的属性信息。
尝试删除 test 文件或者新建文件 test1。
~/testdir$ rm test
rm: cannot remove ‘test': Permission denied
~/testdir$ touch test1
touch: cannot touch ‘test1': Permission denied
拥有目录的 r x 权限并不能允许我们改变目录的内容。目录里的文件列表可以看做是目录的内容。
拥有目录的 w 权限可以对目录的内容进行增删。
~/testdir$ chmod 700 .
~/testdir$ rm test
~/testdir$ touch test1
~/testdir$ ls -l
total 0
-rw-rw-r-- 1 vagrant vagrant 0 Nov 19 08:30 test1
umask
在上面的例子里,我们创建的新文件的权限是 664(-rw-rw-r--),为什么默认权限会是 664,我如果想改变新文件的默认权限怎么办?
控制台输入 umask:
$ umask
0002
umask 是权限的补码。文件的默认权限是 666 - umask。
如果我们创建的文件不想让其他用户有 r 权限,则修改补码为 0006 即可。
~/testdir$ umask 0006
~/testdir$ touch test2
~/testdir$ ls -l | grep test2
-rw-rw---- 1 vagrant vagrant 0 Nov 19 08:38 test2
为什么文件的默认权限不是 777 - umask 呢?因为新建的文件默认不具有可执行权限,所以只考虑 rw 权限的话,这波操作自然是 666 了。
目录默认具有 x 权限,当 umask 是 0002 时,创建的目录的默认权限应该是 777 - 0002 = 775:
~/testdir$ mkdir dir1
~/testdir$ ls -l | grep dir1
drwxrwxr-x 2 vagrant vagrant 4096 Nov 19 08:39 dir1
特殊权限
SUID
一般来说文件权限是 rwx。我们查看一下 passwd(修改密码命令)的权限:
~/testdir$ ls -l /usr/bin/passwd
-rwsr-xr-x 1 root root 47032 May 16 2017 /usr/bin/passwd
细心点你会发现它的用户权限的 x 位竟然是 s。这个权限叫 SUID,仅对二进制程序有效。
当用户具有该文件的执行权限时,执行该文件会短暂的获取该文件所有者权限的支持。
比如:所有用户的密码存在 /etc/shadow 这个文件里,且该文件的权限默认是 -r-------- root root,仅root 用户具有强制写入权限,那为什么普通用户还能修改自己的密码呢?就是因为 passwd 命令具有 SUID 权限,用户执行该命令时会获得文件所有者 root 的权限支持,从而修改自己的密码。
SGID
当 group 的 x 位置变成 s 时,说明该文件具有 SGID 权限。
SGID 权限对二进制程序有效。类似 SUID,用户在具有文件的 x 权限时,执行该文件,会获取该文件所属用户组的权限支持。
除了二进制程序外,SGID也可以设置在目录上。
若用户对该目录具有 SGID 权限:
用户在此目录下的有效用户组将会变成该目录的用户组。
如果用户具有该目录的 w 权限,则用户在此目录下创建的文件的用户组与此目录的用户组相同。
该权限对于项目开发很重要。
SBIT
该权限目前只对目录有效:
当用户对此目录具有 w,x 权限,用户在该目录下创建文件夹或目录后,仅自己和 root 才有权限删除该文件。
Others 的 x 权限位若为 t,则说明文件夹具有 SBIT 权限。
比如 /tmp 目录:
$ ls -l / | grep tmp
drwxrwxrwt 4 root root 4096 Nov 19 09:09 tmp
$ sudo -s
# touch test
root@vagrant-ubuntu-trusty-64:/tmp# exit
exit
vagrant@vagrant-ubuntu-trusty-64:/tmp$ rm test
rm: remove write-protected regular empty file ‘test'? y
rm: cannot remove ‘test': Operation not permitted
如何设置以上三种权限
如果在普通的权限设置的“三个数字”前再加一个数字,那前面这个数字就代表这几个权限了:
4 为 SUID
2 为 SGID
1 为 SBIT
比如:
# chmod 777 /tmp
# ls -l / | grep tmp
drwxrwxrwx 4 root root 4096 Nov 19 09:17 tmp
# chmod 1777 /tmp
# ls -l / | grep tmp
drwxrwxrwt 4 root root 4096 Nov 19 09:17 tmp
End。
来源:https://segmentfault.com/a/1190000017066487


猜你喜欢
- 前两天,登陆我们的discuz论坛,跳转到uchome后院的时候,状态不是已经登陆上的,但在uchome里面登陆,跳转到discuz论坛,就
- 分布式文件系统分布式文件系统是Windows系统网络存储构架的核心技术之一,可以实现将网络上位于不同位置的文件挂接在统一命名空间之下。在管理
- 在第二个节点上安装群集服务所需的时间要比在第一个节点上安装所需的时间少。“安装”程序基于第一个节点的配置,在第二个节点上配置群集服务网络设置
- 08年美国次贷危机引起了全球的金融海啸,在此背景下,成千上万的企业开始谋求新的营销模式,以突破自身困境渡过这段艰难的时期。作为一种全新的营销
- 反向链接、网站结构优化、关键词布置,并列搜索引擎优化三 * 门,其中,反向链接的获得往往是做SEO的朋友最感头痛的。芋头在这里总结了最实用的七
- 准备:一台电脑,VMware(VMware安装教程)一、下载系统镜像文件1.首
- 盗链是指服务提供商自己不提供服务的内容,通过技术手段绕过其它有利益的最终用户界面(如广告),直接在自己的网站上向最终用户提供其它服务提供商的
- 不久前有一些以前的学员问我很多关于百度竞价方面的问题,因为网络上一直也没看到什么系统的教程,所以一直想把这方面的东西整理起来跟大家分享一下,
- 查看了一下博客的链接,发现有一些在博客文章中的链接也被计算在友情链接在内,不太清楚它们会不会影响页面的权重,索性将这些都加上了”extern
- 100 Continue 初始的请求已经接受,客户应当继续发送请求的其余部分。(HTTP 1.1新)101 Switching Protoc
- 看完入门篇和进阶篇后,稍加练习,破解一般的网站是没问题了。但如果碰到表名列名猜不到,或程序作者过滤了一些特殊字符,怎么提高注入的成功率?怎么
- 1. 安装docker;参考网址:Docker入门安装教程(小白篇) linux上安装Docker(非常简单的安装方法) 
- 网络营销已经成为旅游行业一种至关重要的推广模式,几乎所有的旅行社都拥有自己的网站,综合类的旅游网站也让人目不暇接,竞争之激烈可谓战火纷飞。但
- 邮件服务器的配置同样是企业网络管理中经常要进行的任务之一。与Web网站、FTP站点服务器一样,邮件服务器的配置方案也非常之多,但对于中小型企
- 这两天遇到一个很愚蠢的问题,每次登录淘宝/支付宝的时候,总是会遇到“此网站的安全证书有问题”的提示,指出正在访问的网站所出具的安全证书未生效
- 1.Sun xVM VirtualBox简介VirtualBox官方网站:http://www.virtualbox.org &n
- 1、查看内存槽数、那个槽位插了内存,大小是多少dmidecode|grep -P -A5 "Memory\s+Device&quo
- 你的服务器上是否存有一些不能随意公开的重要数据呢?当然有吧?而最近,偏偏服务器遭受的风险又特别大,越来越多的病毒、心怀不轨的黑客,以及那些商
- rewrite规则学习 我们新建一个.htaccess文件之后,就在里面写入以下内容: RewriteEngine on #rewritee
- 由于众所周知的原因,微软的产品总能吸引黑客们的目光,IIS也不例外。IIS是什么?即因特网信息服务,作为当今流行的Web服务器之一,它提供了