在Linux中,ls -l命令是最常用的。命令显示结果中的第一列也是我们更关心的地方。一般来说,表示权限的字符占10个位置。然而,我们经常看到内容显示在这个列的第11个位置,最常见的不是那个点(.)莫属,还有加号( )也会出现在这个位置,这到底是怎么回事?让我们自己练习吧?
2.1 让我们来看看根目录。
[root@DCGH ~]# ls -lZ / lrwxrwxrwx. root root system_u:object_r:bin_t:s0 bin -> usr/bin dr-xr-xr-x. root root system_u:object_r:boot_t:s0 boot drwxr-xr-x. root root system_u:object_r:device_t:s0 dev drwxr-xr-x. root root system_u:object_r:etc_t:s0 etc drwxr-xr-x. root root system_u:object_r:home_root_t:s0 home lrwxrwxrwx. root root system_u:object_r:lib_t:s0 lib -> usr/lib lrwxrwxrwx. root root system_u:object_r:lib_t:s0 lib64 -> usr/lib64 drwxr-xr-x. root root system_u:object_r:mnt_t:s0 media drwxr-xr-x. root root system_u:object_r:mnt_t:s0 mnt drwxr-xr-x. root root system_u:object_r:usr_t:s0 opt dr-xr-xr-x. root root system_u:object_r:proc_t:s0 proc dr-xr-x---. root root system_u:object_r:admin_home_t:s0 root drwxr-xr-x. root root system_u:object_r:var_run_t:s0 run lrwxrwxrwx. root root system_u:object_r:bin_t:s0 sbin -> usr/sbin drwxr-xr-x. root root system_u:object_r:var_t:s0 srv dr-xr-xr-x. root root system_u:object_r:sysfs_t:s0 sys drwxrwxrwt. root root system_u:object_r:tmp_t:s0 tmp drwxr-xr-x. root root system_u:object_r:usr_t:s0 usr drwxr-xr-x. root root system_u:object_r:var_t:s0 var
2.2 创建HOME目录中的文件和目录,并对第11个位置的详细信息进行观察。
[root@DCGH ~]# touch DCGH [root@DCGH ~]# mkdir DCGH-DIR [root@DCGH ~]# ls -l 总用量 0 -rw-r--r--. 1 root root 0 3月 28 10:23 DCGH drwxr-xr-x. 2 root root 6 3月 28 10:24 DCGH-DIR
2.3 查看本机SELinux的状态,列出SELinux的基本情况。
[root@DCGH ~]# getenforce Enforcing [root@DCGH ~]# ls -lZ -rw-r--r--. root root unconfined_u:object_r:admin_home_t:s0 DCGH drwxr-xr-x. root root unconfined_u:object_r:admin_home_t:s0 DCGH-DIR
2.4 关闭SELinux,创建实验文件和目录,重新列出SELinux的基本情况。
[root@DCGH ~]# sed -i "s/SELINUX=enforcing/SELINUX=disabled/g" /etc/se<a style="color:#f60; text-decoration:underline;" href="https://www.php.cn/zt/15718.html" target="_blank">linux</a>/config [root@DCGH ~]# reboot [root@DCGH ~]# getenforce Disabled [root@DCGH ~]# ls -lZ -rw-r--r--. root root unconfined_u:object_r:admin_home_t:s0 DCGH drwxr-xr-x. root root unconfined_u:object_r:admin_home_t:s0 DCGH-DIR [root@DCGH ~]# touch DCGH-later [root@DCGH ~]# mkdir DCGH-later-dir [root@DCGH ~]# ls -lZ -rw-r--r--. root root unconfined_u:object_r:admin_home_t:s0 DCGH drwxr-xr-x. root root unconfined_u:object_r:admin_home_t:s0 DCGH-DIR -rw-r--r-- root root ? DCGH-later drwxr-xr-x root root ? DCGH-later-dir [root@DCGH ~]# ls -lZ / lrwxrwxrwx. root root system_u:object_r:bin_t:s0 bin -> usr/bin dr-xr-xr-x. root root system_u:object_r:boot_t:s0 boot drwxr-xr-x root root ? dev drwxr-xr-x. root root system_u:object_r:etc_t:s0 etc drwxr-xr-x. root root system_u:object_r:home_root_t:s0 home lrwxrwxrwx. root root system_u:object_r:lib_t:s0 lib -> usr/lib lrwxrwxrwx. root root system_u:object_r:lib_t:s0 lib64 -> usr/lib64 drwxr-xr-x. root root system_u:object_r:mnt_t:s0 media drwxr-xr-x. root root system_u:object_r:mnt_t:s0 mnt drwxr-xr-x. root root system_u:object_r:usr_t:s0 opt dr-xr-xr-x root root ? proc dr-xr-x---. root root system_u:object_r:admin_home_t:s0 root drwxr-xr-x root root ? run lrwxrwxrwx. root root system_u:object_r:bin_t:s0 sbin -> usr/sbin drwxr-xr-x. root root system_u:object_r:var_t:s0 srv dr-xr-xr-x root root ? sys drwxrwxrwt. root root system_u:object_r:tmp_t:s0 tmp drwxr-xr-x. root root system_u:object_r:usr_t:s0 usr drwxr-xr-x. root root system_u:object_r:var_t:s0 var
通过上面的例子,我们可以看到这一点(.)这不是无用的,而是巨大的,我们通常不太注意它。打开SELinux后创建的文件和目录将显示在权限列中。关闭SELinux后创建的文件和目录不会显示在权限列中,以前创建的文件或目录保持不变。
3.1 了解LinuxACL权限设置的朋友对这个加号并不陌生。但让我们通过实验来验证它。
[root@DCGH ~]# setfacl -m u:dcgh:rwx * [root@DCGH ~]# ls -lZ -rw-rwxr-- root root unconfined_u:object_r:admin_home_t:s0 DCGH drwxrwxr-x root root unconfined_u:object_r:admin_home_t:s0 DCGH-DIR drwxrwxr-x root root ? DCGH-DIR-later -rw-rwxr-- root root ? DCGH-later [root@DCGH ~]# setfacl -b * [root@DCGH ~]# ls -lZ -rw-r--r--. root root unconfined_u:object_r:admin_home_t:s0 DCGH drwxr-xr-x. root root unconfined_u:object_r:admin_home_t:s0 DCGH-DIR drwxr-xr-x root root ? DCGH-DIR-later -rw-r--r-- root root ? DCGH-DIR-later -rw-r--r-- root root ? DCGH-later
我们可以看到,在添加ACL权限控制后,以前具有SELinux属性的文件和目录权限列的最后一个位置都变成了加号( )。移除原ACL权限后,恢复原状。
4.1 Linux权限列的点并非无意义字符。当SELinux打开时,创建的目录和文件具有此点。权限列表示目录或文件,并设置了与SELinux相关的权限。禁用SELinux权限后,在之前打开SELinux权限时创建的文件或目录保持原权限不便,权限列的点仍显示。权限列中没有显示新创建的目录或文件。
4.2 如果权限列中的最后一个位置是加号,则表示此ACL权限相关内容已设置在目录或文件中。如果存在加号,则已有一个小目录或文件,点显示将被覆盖,但原始SELinux属性保持不变。
以上是Linux权限列中加号和点深度解读的详细内容。请多关注其他相关文章!
向日葵RDP功能:远程多开,画质卓越超越桌面控制!
Linux中权限列中的加号和点的深度解读-LINUX
元气桌面壁纸官网:焕新你的视觉世界!
Win11不能正常卸载更新怎么办?Windows系列
电脑桌面截图快捷键:Ctrl+Alt+A,轻松截!
如何设置Yuzu模拟器更流畅-Windows系列
远程登录端口,安全守护,畅通无阻的通道!
Win11不能正常卸载更新怎么办?Windows系列
如何设置Yuzu模拟器更流畅-Windows系列
如何查看电脑的NET版本-Windows系列
Yuzu模拟器安装金手指的方法-Windows系列
华为笔记本电脑进入BIOS-Windows系列
如何使用WPSeku找出WPSeku WordPress 安全问题?-LINUX
Win11如何查看显卡配置-Windows系列
Win10浏览器主页被2345篡改怎么办?Windows系列
宁德时代和LG新能源将为雷诺子公司Ampere提供磷酸铁锂电池-IT行业
6月份比亚迪销量超过34万辆,5款车型超过3万大关!-IT行业
任天堂宣布将客服官网域名更改为“nintendo.com”,此前 URL IT行业仍然有效
180 元起,2024 ChinaJoy BTOC 今天玩家票全面销售-IT行业