2023-09-03Linux命令:ll查询结果的详细分析
目录
1 文件类型
2 文件属性
3 目录/链接个数
3.1 目录概述
3.2 Linux下各个目录说明
3.2.1 /root
3.2.2 /bin
3.2.3 /etc
3.2.4 /dev
3.2.5 /home
3.2.6 /tmp
3.2.7 /usr
3.2.8 /usr/local
3.2.9 /opt
3.2.10 /media
3.2.11 /boot
3.2.12 /lost+found
3.2.13 /mnt
3.2.14 /proc
3.2.15 /sbin
3.2.16 /var
4 所有者及组
5 文件大小
6 修改日期
7 文件名称
8 字体颜色
首先给出一张典型的显示结果:
![](https://img.haomeiwen.com/i18952518/ddf43040ec4b79df.png)
下面对其中的每一列进行详细的分析:
1 文件类型
![](https://img.haomeiwen.com/i18952518/4d7f09f753fb818d.png)
表示该文件的类型:
“-”表示普通文件;
“d”表示目录;
“l”表示链接文件;
“p”表示管理文件;
“b”表示块设备文件;
“c”表示字符设备文件;
“s”表示套接字文件;
2 文件属性
![](https://img.haomeiwen.com/i18952518/e820c1ee766bab00.jpg)
这里写图片描述
以back_init文件为例,其属性可分为三段:[rwx][rwx][r-x],其中:
第一段表示文件创建者/所有者对该文件所具有的权限,第二段表示创建者/所有者所在的组的其他用户所具有的权限,第三段表示其他组的其他用户所具有的权限。
r(Read,读取权限):对文件而言,具有读取文件内容的权限;对目录来说,具有浏览目录的权限。
w(Write,写入权限):对文件而言,具有新增、修改文件内容的权限;对目录来说,具有删除、移动目录内文件的权限。
x(eXecute,执行权限):对文件而言,具有执行文件的权限;对目录来说,该用户具有进入目录的权限。
另外,这里还有3个很特殊的属性,平时不怎么常见,这里也顺带解释一下:
s或S(SUID,Set UID):可执行的文件搭配这个权限,便能得到特权,任意存取该文件的所有者能使用的全部系统资源。请注意具备SUID权限的文件,黑客经常利用这种权限,以SUID配上root帐号拥有者,无声无息地在系统中开扇后门,供日后进出使用。
增加权限u+s,移除权限u-s,也可以使用数字形式表示,0表示去除suid权限,4表示添加suid权限,而且是在原权限的数字表达形式开头加0或4,如:0755移除suid权限,4755添加suid权限。
sgid:权限作用于属组上
增加权限g+s,移除权限g-s,sgid权限也可以使用数字形式表示,0表示去除sgid权限,2表示添加sgid权限,而且是在原权限的数字表达形式开头加0或2,如:0755移除sgid权限,2755添加sgid权限
t或T(Sticky):权限作用于other其他上,sticky权限一般针对目录来设置,作用是只允该目录下的文件的创建者删除自己的创建的文件,不允许其他人删除文件。(root用户除外,因为root用户是超级管理员),而且sticky权限只能设置在other位置上
增加权限o+t,移除权限o-t;sticky权限也可以使用数字形式表示,0表示去除权限,1表示添加权限,而且是在原权限的数字表达形式开头加0或1,如下:如:0755移除sticky权限,1755添加sticky权限
比如:/tmp和 /var/tmp目录供所有用户暂时存取文件,亦即每位用户皆拥有完整的权限进入该目录,去浏览、删除和移动文件。
综合起来可得,对于back_init文件,其创建者/所有者具有可读可写可执行的权限,其创建者/所有者所在的组的其他用户具有可读可写可执行的权限,其他组的其他用户则具有可读可执行但不可写的权限。
3 目录/链接个数
3.1 目录概述
![](https://img.haomeiwen.com/i18952518/4021f2cbd3df49c6.jpg)
这里写图片描述
对于目录文件,表示它的第一级子目录的个数。注意此处看到的值要减2才等于该目录下的子目录的实际个数。
比如这里的include目录下,其实是没有子目录的,所以应该是0,但是它这里却显示2,这是因为要加上.目录和..目录。在linux下,.目录表示当前目录,..目录表示上一级目录。
这也可以解释上图中第一行的.目录下的3和第二行..目录下的26。因为当前目录下有一个include目录,所以加上.目录和..目录这2个目录就等于3,所以第一行会显示3。而上一级目录共有24个目录,加上上一级目录的.目录和..目录这2个目录,所以这里的第二行显示的是26。
3.2 Linux下各个目录说明
3.2.1 /root
这是系统管理员(root user)的目录。对于系统来说,系统管理员就好比是上帝,它能对系统做任何事情,甚至包括删除你的文件。因此,请小心使用root帐号。
3.2.2 /bin
这里存放了标准的(或者说是缺省的)linux的工具,比如像“ls”、“vi”还有“more”等等。通常来说,这个目录已经包含在你的“path”系 统变量里面了。什么意思呢?就是:当你在终端里输入ls,系统就会去/bin目录下面查找是不是有ls这个程序。系统所需要的那些命令位于此目录
3.2.3 /etc
这里主要存放了系统配置方面的文件。举个例子:你安装了samba这个套件,当你想要修改samba配置文件的时候,你会发现它们(配置文件)就在/etc/samba目录下。
3.2.4 /dev
这里主要存放与设备(包括外设)有关的文件(unix和linux系统均把设备当成文件)。想连线打印机吗?系统就是从这个目录开始工作的。另外还有一些包括磁盘驱动、USB驱动等都放在这个目录。
3.2.5 /home
这里主要存放个人数据。具体每个用户的设置文件,用户的桌面文件夹,还有用户的数据都放在这里。每个用户都有自己的用户目录,位置为:/home/用户名。当然,root用户除外。
3.2.6 /tmp
这是临时目录。对于某些程序来说,有些文件被用了一次两次之后,就不会再被用到,像这样的文件就放在这里。有些linux系统会定期自动对这个目录进行清理,因此,千万不要把重要的数据放在这里。
3.2.7 /usr
在这个目录下,你可以找到那些不适合放在/bin或/etc目录下的额外的工具。比如像游戏,一些打印工具拉等等。/usr目录包含了许多子目录: /usr/bin目录用于存放程序;/usr/share用于存放一些共享的数据,比如音乐文件或者图标等等;/usr/lib目录用于存放那些不能直接 运行的,但却是许多程序运行所必需的一些函数库文件。你的软件包管理器会自动帮你管理好/usr目录的。
当我们安装一个Linux发行版官方提供的软件包时,大多安装在这里。 如果有涉及服务器配置文件的,会把配置文件安装在/etc目录中。/usr目录下包括涉及字体目录/usr/share/fonts ,帮助目录 /usr/share/man或/usr/share/doc,普通用户可执行文件目录/usr/bin 或/usr/local/bin 或/usr/X11R6/bin ,超级权限用户root的可执行命令存放目录,比如 /usr/sbin 或/usr/X11R6/sbin 或/usr/local/sbin 等;还有程序的头文件存放目录/usr/include。
3.2.8 /usr/local
这里主要存放那些手动安装的软件,即不是通过“新立得”或apt-get安装的软件。它和/usr目录具有相类似的目录结构。让软件包管理器来管理/usr目录,而把自定义的脚本(scripts)放到/usr/local目录下面
/usr/local 这个目录一般是用来存放用户自编译安装软件的存放目录;一般是通过源码包安装的软件,如果没有特别指定安装目录的话,一般是安装在这个目录中。这个目录下面有子目录
/usr/share 系统共用的东西存放地,比如 /usr/share/fonts 是字体目录,/usr/share/doc和/usr/share/man帮助文件。
3.2.9 /opt
这里主要存放那些可选的程序。你想尝试最新的firefox测试版吗?那就装到/opt目录下吧,这样,当你尝试完,想删掉firefox的时候,你就可以直接删除它,而不影响系统其他任何设置。安装到/opt目录下的程序,它所有的数据、库文件等等都是放在同个目录下面。
举个例子:刚才装的测试版firefox,就可以装到/opt/firefox_beta目录下,/opt/firefox_beta目录下面就包含了运 行firefox所需要的所有文件、库、数据等等。要删除firefox的时候,你只需删除/opt/firefox_beta目录即可,非常简单
通过源码包安装的软件,可以通过 ./configure --prefix=/opt/目录
3.2.10 /media
有些linux的发行版使用这个目录来挂载那些usb接口的移动硬盘(包括U盘)、CD/DVD驱动器等等。
3.2.11 /boot
Linux的内核及引导系统程序所需要的文件目录,比如 vmlinuz initrd.img 文件都位于这个目录中。在一般情况下,GRUB或LILO系统引导管理器也位于这个目录。
3.2.12 /lost+found
在ext2或ext3文件系统中,当系统意外崩溃或机器意外关机,而产生一些文件碎片放在这里。当系统启动的过程中fsck工具会检查这里,并修复已经损 坏的文件系统。 有时系统发生问题,有很多的文件被移到这个目录中,可能会用手工的方式来修复,或移到文件到原来的位置上。
3.2.13 /mnt
这个目录一般是用于存放挂载储存设备的挂载目录的,比如有cdrom 等目录。可以参看/etc/fstab的定义。有时我们可以把让系统开机自动挂载文件系统,把挂载点放在这里也是可以的。主要看/etc/fstab中怎 么定义了;比如光驱可以挂载到/mnt/cdrom 。
3.2.14 /proc
操作系统运行时,进程信息及内核信息(比如cpu、硬盘分区、内存信息等)存放在这里。/proc目录伪装的文件系统proc的挂载目录,proc并不是真正的文件系统,它的定义可以参见 /etc/fstab 。
3.2.15 /sbin
大多是涉及系统管理的命令的存放,是超级权限用户root的可执行命令存放地,普通用户无权限执行这个目录下的命令,这个目录和/usr/sbin; /usr/X11R6/sbin或/usr/local/sbin目录是相似的;我们记住就行了,凡是目录sbin中包含的都是root权限才能执行的。
3.2.16 /var
这个目录的内容是经常变动的,看名字就知道,我们可以理解为vary的缩写,/var下有/var/log 这是用来存放系统日志的目录。/var/www目录是定义Apache服务器站点存放目录;/var/lib 用来存放一些库文件,比如MySQL的,以及MySQL数据库的的存放地;
/var/log 系统日志存放,分析日志要看这个目录的东西;
/var/spool 打印机、邮件、代理服务器等假脱机目录;
4 所有者及组
![](https://img.haomeiwen.com/i18952518/33951d2edaab8038.jpg)
这里写图片描述
表示该文件的所有者/创建者(owner)及其所在的组(group)。
5 文件大小
![](https://img.haomeiwen.com/i18952518/b5d02962b399bb08.jpg)
这里写图片描述
如果是文件,则表示该文件的大小,单位为字节。
如果是目录,则表示该目录符所占的大小,并不表示该目录下所有文件的大小。
6 修改日期
![](https://img.haomeiwen.com/i18952518/874cd5877e97697d.jpg)
这里写图片描述
该文件最后修改的日期时间。
7 文件名称
![](https://img.haomeiwen.com/i18952518/da5b437f2e108287.jpg)
这里写图片描述
文件名,无需多说
8 字体颜色
![](https://img.haomeiwen.com/i18952518/2c6863b465428391.png)
在大多数的linux shell窗口中,还能用颜色来区分不同文件的属性:
灰白色表示普通文件;
亮绿色表示可执行文件;
亮红色表示压缩文件;
灰蓝色表示目录;
亮蓝色表示链接文件;
亮黄色表示设备文件;
当然,这里需要使用系统缺省的配色方案。如果你自定义了shell的配色方案,则有可能与上面的定义不一致。
————————————————
版权声明:本文为CSDN博主「爱吃牛肉的大老虎」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/u012060033/article/details/88044472