Linux目录结构
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1、Linux目录结构
1、树状目录结构图
逻辑上所有的目录只有一个顶点/(根),所有目录的起点。根下面类似一个倒挂的树一样的层次结构。
2、/目录
3、/etc/目录
特定主机系统范围内的配置文件。
4、/usr/目录
默认软件都会存在于该目录下。用于存储只读用户数据的第二层次;包含绝大多数的用户工
5、/var/目录
/var包括系统一般运行时要改变的数据。每个系统是特定的,即不通过网络与其他计算机共
6、/proc目录
虚拟文件系统,将内核与进程状态归档为文本文件(系统信息都存放这目录下)。
例如:uptime、network。在Linux中,对应Procfs格式挂载。该目录下文件只能看不能改(包括
7、/dev/目录
设备文件分为两种:块设备文件(b)和字符设备文件(c) 设备文件一般存放在/dev/目录下,
8、重要的子目录说明
PATH全局环境变量
默认系统下root用户的PATH全局环境变量:
2、Linux中的文件类型
在linux系统中,可以说一切皆文件。文件类型包括含有普通文件、目录、字符设备文件、块设备文件、符号链接文件等等.当执行ls–l 或ls–al命令时。
第一列第2-10个字符(比如rw-r—r--)是用来描述文件权限的。而第一列中的第一个字符就是描述文件类型的,比如上面结果中就有-,d,l等类型。
1、普通文件
第一个属性为”-”,按照文件内容,又大略可以分为:
1、纯文本文件(ascll)
文件内容可以直接读到数据,例如:字母、数字等。可以用cat命令读出文件内容。
2、二进制文件(binary)
Linux当中可执行文件(命令)就是属于这种格式。例如cat这个执行文件就是一个二进制文件。
3、数据格式文件(data)
有些程序在运行的过程中会读取某些特定格式的文件,那些特定格式的文件可以被称为数据文件。例如:Linux在用户登录时,都会将登录的数据记录在/var/log/wtmp那个文件内,文件是一个数据文件。通过last命令读出来。Cat命令会读出乱码。因为他属于一种特殊格式的文件。
2、目录文件
第一个属性为d的文件就表示目录
3、字符设备及块设备文件
第一个属性c的文件就表示字符设备文件。字符设备就是串行端口的接口设备,如猫等串口设备。
第一个属性b的文件就表示块设备,块设备就是存储数据供系统及程序访问的接口
设备,如硬盘,光驱等都属于块设备;
创建一个字符设备及块设备
Jh是设备的名字、c指字符设备、5是指设备在major.h中定义的标记、1第一个子设备。
4、套接字文件
文件的第一个属性是s表示套接字文件。当我们启动Mysq服务时,会产生一个mysql.sock文件。这个文件的属性的第一个字符是s。
.sock 文件也是一类特殊的文件,这类文件通常用在网络之间进行数据连接,如我们可以启动一个程序来监听客户端的请求,客户端可以通过套接字来进行数据通信。
5、符号链接文件
当我们查看文件属性时,会看到有类似lrwxrwxrwx,注意第一个字符l,这类文件表示链接文件。(软链接)
6、管道文件(FIFO,pipe)
FIFO也是一个特殊的文件类型,主要是解决多个程序同时访问一个文件所造成的,第一个字符为p。
3、Linux中的扩展名
在linux中,虽然扩展名没什么实际意义,但是为了兼容windows,同时,便于我们大多数习惯了windows的用户区分文件的不同,所以我们还是习惯扩展名来表示不同的文件类型。
1).tar、.tar.gz、.tgz、.zip、.tar.bz创建命令一般为tar,gzip,unzip等
2).sh表示shell脚本文件,通过shell语言开发的程序。
3).pl表示perl语言文件,通过perl语言开发的程序。
4).py表示python语言文件,通过python语言开发的程序。
5).html、.htm、.php、.jsp、.do 表示网页语言的文件。
6).conf表示系统服务的配置文件。
7).rpm 表示rpm安装包文件。
运维开发语言:Shell/python/perl/php四者之一。
4、索引节点inode
1、inode概述
硬盘要分区,然后格式化,创建文件系统。
inode,index,node索引节点。在每个Linux存储设备或存储设备的分区(存储设备可以是硬盘、软盘、U盘…)被格式化为ext4文件系统后,一般有两部分:
第一部分是inode(很多个)
第二部分是block(很多个)
Block是用来存储这些数据属性信息的(也就是ls–l 的结果),inode包含的属性信息包括文件的大小、属主、归属的用户组、读写权限、文件类型、修改时间,还包括指向文件实体的指针的功能(inode节点-block的对应关系)等,但是,inode唯独不包括文件名。
使用ls–li 查看文件的inode节点。
2、Inode与block
inode除了记录文件属性的信息外,还会为每个文件进行信息索引,所以就有了innode的数值,操作系统根据指令,即可通过inode的值最快的找到相对应的文件实体。文件,inode、block之间的关系如下:
以书为例,存储设备或分区就相当于这本书,block相当于书中的每一页内容,而inode 就相当于这本书前面的目录,一本书有很多内容,一个知识点可能有多页,如果想查找某部分或某知识点的内容,我们一般先查书的目录,通过目录能更快的找到我们想要看的知识点的内容。
3、inode的大小
因为inode要存放文件的属性信息,所以inode是有大小的,Centos5 inode的默认大小为128字节,而Centos6 inode的默认大小是256字节,inode的大小在文件系统被格式化之后就无法更改了,格式化前可以指定inode大小。
Dumpe2fs –显示ext2/ext3/ext4文件系统信息。
/dev/sda1挂载在/boot引导分区,/boot分区默认128字节。
4、有关inode的小结:
1、磁盘分区格式化ext4文件系统后会生成一定数量的inode与block。
2、inode是索引节点,作用是存放文件的属性信息以及作为文件的索引(指向文件的实体)。
3、ext3/etx4文件系统的block存放的是文件的实际内容。
4、inode是一块存储空间,CentOS6非启动分区inode默认大小256字节,CentOS5是128
字节。
5、inode是一串数字,不同的文件对应的inode在文件系统中是唯一的
6、inode相同的文件,互为硬链接文件(文件有一个入口)。
7、一个文件被创建后至少要占用一个inode和一个block。
8、block的大小一般有1K,2K,4K几种。其中引导分区等为1K,其他普通分区为4K(CentOS6)
9、如果一个文件很大,可能占多个block,如果文件很小,至少占一个,并且剩余空间不能被其他的文件使用。
10、inode总量和大小查看
Inode count 也就代表能建多少个文件。
11、查看inode的总量和使用量命令df–i
df–i查看挂载的磁盘的inode情况: