Linux 文件系统
Linux的基本思想之一,一切皆文件
Linux文件结构类似一个树形结构,而树根就是 / 目录,即根目录或者用root表示
首先,需要了解FHS(Filesystem Hierarchy Standard) 文件系统层级标准
关于FHS的介绍 https://en.wikipedia.org/wiki/Filesystem_Hierarchy_Standard
根目录下的子目录介绍:
/dev: 设备文件目录
每一个设备都需要有对应的设备文件才可以被访问
设备文件:
在Linux中设备按照存取方式不同分为块设备和字符设备
块设备:随机访问设备,数据随机存取
字符设备:线性访问设备,按字符为单位
/etc:配置文件主要存放处
/home:用户的家目录,每次添加一个用户多会在/home下新建一个用户目录 /home/USER NAME
/root:管理员用户文件夹,不在/home目录下
/lib:库文件
库文件没有执行入口,无法单独执行,只能被调用
动态库:.dll(Windows) .so(Linux)
静态库:.a
动态编译:动态编译后的文件中只是包含动态库中的一个链接
静态编译:静态编译后的程序文件直接将库包含了
/lib/modules:内核模块文件
/media:挂载点目录,用于用移动设备
挂载:将某个设备与文件树中的某个节点建立联系
/mnt:杂项
/opt:可选目录,第三方程序的安装目录
/proc:伪文件系统,内核映射文件,在系统启动之后才有
/sys:伪文件系统跟硬件设备相关的属性映射文件
/tmp:临时文件,/var/tmp
/var:可变化文件
/bin:二进制文件,可执行文件
/sbin:管理文件
/usr:只读文件
/usr/bin
/usr/sbin
/usr/lib
/usr/local:第三方程序文件
文件类型:
1.普通的文件
2.目录文件
3.字符设备文件
4.符号链接文件
5.命令管道文件
6.套接字文件
可通过file命令查询文件类型
Linux文件命名规则:
1.名称长度不超过255个字符
2.不能使用敏感字符 /
3.名称严格区分大小写
目录:目录也是文件的一种,是一类类似于引用文件的特殊文件
在Linux下,并不像Windows一样,使用文件后缀名区分文件类型,和该文件是否可执行,
在Linux中,文件是否可执行与文件属性有关。
但一般在创建文件时也会加上后缀,用于提示文件内容信息,方便查看。