Linux权限列中加号及点的示例分析(linux,开发技术)

时间:2024-05-08 08:21:20 作者 : 石家庄SEO 分类 : 开发技术
  • TAG :
一、综述

Linux中,ls -l命令可谓是最常用不过了。命令显示结果中的第一列也是我们比较关注的地方,一般说法是表示权限的字符占10个位置。可是,我们也经常看到在这一列中第十一个位置也有内容显示,最常见的非那个点(.)莫属了,还有加号(+)也会出现在这个位置,这到底是怎么回事呢?让我们亲手来实践一下吧?

Linux权限列中加号及点的示例分析
二、关于权限列内的点(.)

2.1 让我们来看一下根目录。

[root@DCGH~]#ls-lZ/lrwxrwxrwx.rootrootsystem_u:object_r:bin_t:s0bin->usr/bindr-xr-xr-x.rootrootsystem_u:object_r:boot_t:s0bootdrwxr-xr-x.rootrootsystem_u:object_r:device_t:s0devdrwxr-xr-x.rootrootsystem_u:object_r:etc_t:s0etcdrwxr-xr-x.rootrootsystem_u:object_r:home_root_t:s0homelrwxrwxrwx.rootrootsystem_u:object_r:lib_t:s0lib->usr/liblrwxrwxrwx.rootrootsystem_u:object_r:lib_t:s0lib64->usr/lib64drwxr-xr-x.rootrootsystem_u:object_r:mnt_t:s0mediadrwxr-xr-x.rootrootsystem_u:object_r:mnt_t:s0mntdrwxr-xr-x.rootrootsystem_u:object_r:usr_t:s0optdr-xr-xr-x.rootrootsystem_u:object_r:proc_t:s0procdr-xr-x---.rootrootsystem_u:object_r:admin_home_t:s0rootdrwxr-xr-x.rootrootsystem_u:object_r:var_run_t:s0runlrwxrwxrwx.rootrootsystem_u:object_r:bin_t:s0sbin->usr/sbindrwxr-xr-x.rootrootsystem_u:object_r:var_t:s0srvdr-xr-xr-x.rootrootsystem_u:object_r:sysfs_t:s0sysdrwxrwxrwt.rootrootsystem_u:object_r:tmp_t:s0tmpdrwxr-xr-x.rootrootsystem_u:object_r:usr_t:s0usrdrwxr-xr-x.rootrootsystem_u:object_r:var_t:s0var1234567891011121314151617181920

2.2 在HOME目录分别创建一个文件和目录,观察权限了第十一个位置的详细情况。

[root@DCGH~]#touchDCGH[root@DCGH~]#mkdirDCGH-DIR[root@DCGH~]#ls-l总用量0-rw-r--r--.1rootroot03月2810:23DCGHdrwxr-xr-x.2rootroot63月2810:24DCGH-DIR123456

2.3 查看本机SELinux状态,并列举本目录下文件和目录关于SELinux的基本情况。

[root@DCGH~]#getenforceEnforcing[root@DCGH~]#ls-lZ-rw-r--r--.rootrootunconfined_u:object_r:admin_home_t:s0DCGHdrwxr-xr-x.rootrootunconfined_u:object_r:admin_home_t:s0DCGH-DIR12345

3.4 关闭SELinux,再创建实验文件和目录,再次列举本目录及根下文件和目录关于SELinux的基本情况。

[root@DCGH~]#sed-i"s/SELINUX=enforcing/SELINUX=disabled/g"/etc/selinux/config[root@DCGH~]#reboot[root@DCGH~]#getenforceDisabled[root@DCGH~]#ls-lZ-rw-r--r--.rootrootunconfined_u:object_r:admin_home_t:s0DCGHdrwxr-xr-x.rootrootunconfined_u:object_r:admin_home_t:s0DCGH-DIR[root@DCGH~]#touchDCGH-later[root@DCGH~]#mkdirDCGH-later-dir[root@DCGH~]#ls-lZ-rw-r--r--.rootrootunconfined_u:object_r:admin_home_t:s0DCGHdrwxr-xr-x.rootrootunconfined_u:object_r:admin_home_t:s0DCGH-DIR-rw-r--r--rootroot?DCGH-laterdrwxr-xr-xrootroot?DCGH-later-dir[root@DCGH~]#ls-lZ/lrwxrwxrwx.rootrootsystem_u:object_r:bin_t:s0bin->usr/bindr-xr-xr-x.rootrootsystem_u:object_r:boot_t:s0bootdrwxr-xr-xrootroot?devdrwxr-xr-x.rootrootsystem_u:object_r:etc_t:s0etcdrwxr-xr-x.rootrootsystem_u:object_r:home_root_t:s0homelrwxrwxrwx.rootrootsystem_u:object_r:lib_t:s0lib->usr/liblrwxrwxrwx.rootrootsystem_u:object_r:lib_t:s0lib64->usr/lib64drwxr-xr-x.rootrootsystem_u:object_r:mnt_t:s0mediadrwxr-xr-x.rootrootsystem_u:object_r:mnt_t:s0mntdrwxr-xr-x.rootrootsystem_u:object_r:usr_t:s0optdr-xr-xr-xrootroot?procdr-xr-x---.rootrootsystem_u:object_r:admin_home_t:s0rootdrwxr-xr-xrootroot?runlrwxrwxrwx.rootrootsystem_u:object_r:bin_t:s0sbin->usr/sbindrwxr-xr-x.rootrootsystem_u:object_r:var_t:s0srvdr-xr-xr-xrootroot?sysdrwxrwxrwt.rootrootsystem_u:object_r:tmp_t:s0tmpdrwxr-xr-x.rootrootsystem_u:object_r:usr_t:s0usrdrwxr-xr-x.rootrootsystem_u:object_r:var_t:s0var12345678910111213141516171819202122232425262728293031323334

通过上面的例子,我们可以看出来,这个点(.)不是没有用的,而是作用巨大,我们平时没怎么注意而已。开启SELinux后创建的文件和目录都会在权限列显示这个点的,关闭SELinux后创建的文件和目录在权限列是不会显示这个点的,之前创建的文件或目录保持不变。

三、关于权限列的加号(+)

3.1 了解过Linux中ACL权限设置的朋友对于这个加号肯定不陌生。不过还是让我们通过实验来验证一下。

[root@DCGH~]#setfacl-mu:dcgh:rwx*[root@DCGH~]#ls-lZ-rw-rwxr--+rootrootunconfined_u:object_r:admin_home_t:s0DCGHdrwxrwxr-x+rootrootunconfined_u:object_r:admin_home_t:s0DCGH-DIRdrwxrwxr-x+rootroot?DCGH-DIR-later-rw-rwxr--+rootroot?DCGH-later[root@DCGH~]#setfacl-b*[root@DCGH~]#ls-lZ-rw-r--r--.rootrootunconfined_u:object_r:admin_home_t:s0DCGHdrwxr-xr-x.rootrootunconfined_u:object_r:admin_home_t:s0DCGH-DIRdrwxr-xr-xrootroot?DCGH-DIR-later-rw-r--r--rootroot?DCGH-later123456789101112

我们可以看到,加了ACL权限控制之后,之前具有SELinux属性的文件和目录的权限列最后一个位置全部变成了加号(+)。移除原来的ACL权限之后,恢复原样。

四、总结

4.1 Linux权限列的点不是无意义字符。在开启SELinux的情况下创建的目录和文件有具有这个点,权限列有这个点说明该目录或文件以及设置了SELinux相关的权限。在禁用SELinux权限之后,在之前开启SELinux权限时创建的文件或目录保持原来的权限不变,权限列的点依然显示。新创建的目录或文件在权限列无这个点显示。

4.2 权限列中最后一个位置如果是加号,说明这个目录或文件已经设置了ACL权限相关的内容。如果加号存在,则已经有点的目录或文件,点的显示会被覆盖,但原来的SELinux属性保持不变。

4.3 官方一点的说法:点表示该文件具有SELinux安全上下文,加号表示该文件配置了ACL权限,加号不会覆盖SELinux控制。

 </div> <div class="zixun-tj-product adv-bottom"></div> </div> </div> <div class="prve-next-news">
本文:Linux权限列中加号及点的示例分析的详细内容,希望对您有所帮助,信息来源于网络。
上一篇:Linux如何定制sudo密码会话超时的时间下一篇:

11 人围观 / 0 条评论 ↓快速评论↓

(必须)

(必须,保密)

阿狸1 阿狸2 阿狸3 阿狸4 阿狸5 阿狸6 阿狸7 阿狸8 阿狸9 阿狸10 阿狸11 阿狸12 阿狸13 阿狸14 阿狸15 阿狸16 阿狸17 阿狸18