1,简介
1)Unix系统中,除了进程,一切皆是文件。Linux保持了这一特性。
2)Linux中增加了目录,目录是记录的其他文件名的文件。(所以不能创建与文件名相同的目录结构)
3)Linux将设备当做文件处理。
ls -lah /dev/input/event*表示输入设备
vim /proc/bus/input/devices查看event对应的设备类型
设备文件event,使用read字节流的方式,被读取。
2,Linux系统的目录结构
/ 根目录
├── bin 存放用户二进制文件
├── boot 存放内核引导配置文件
├── dev 存放设备文件
├── etc 存放系统配置文件
├── home 用户主目录
├── lib 动态共享库
├── lost+found 文件系统恢复时的恢复文件
├── media 可卸载存储介质挂载点
├── mnt 文件系统临时挂载点
├── opt 附加的应用程序包
├── proc 系统内存的映射目录,提供内核与进程信息
├── root root 用户主目录
├── sbin 存放系统二进制文件
├── srv 存放服务相关数据
├── sys sys 虚拟文件系统挂载点
├── tmp 存放临时文件
├── usr 存放用户应用程序
└── var 存放邮件、系统日志等变化文件
3,文件
1)文件分为用户数据(user data)和元数据(meta data),数据块存放真实的内容的地方,元数据是文件的附加信息(inode(索引节点)号,大小,创建时间,所有者等)。
image.png
2)文件名并不是元数据,linux通过inode号来识别文件,而非文件名。文件名只是inode号的别称。
3)文件移动前后,inode号不变。ls -i查看inode号。stat 命令查看inode信息。
4)打开一个文件的流程。
根据文件名找到inode号-->根据inode号查找inode信息-->根据inode信息找到文件所在的block,读出数据。
4,软连接与硬链接
1)一般情况下,文件名和inode号是一一对应的,Linux允许多个文件名指向同一个inode号。修改文件均生效,但删除一个文件名,不影响另一个文件名访问该文件。
2)ln 源文件 硬链接名。删除一个文件名,Links - 1,当Links = 0 时,回收inode号和对应的block区块。删除一个硬链接文件并不影响其他有相同 inode 号的文件。
image.png
3)软连接。与源文件inode号不同。
软连接中的内容是源文件的路径。这时,文件A就称为文件B的"软链接"(soft link)或者"符号链接(symbolic link)。
image.png
image.png
5,linux日志切割工具cronolog。可以用于tomcat日志分隔。
网友评论