目录
①Linux上常见的文件类型:
>>>文件的结构和解释,完全取决于文件如何被软件解释
>>>各组件或设备在Linux下面都是一个文件
1.普通文件-regular file(-)
2.目录文件-directory(d)
3.符号链接文件-symbolic link(l):即软连接文件
4.管道文件-named pipe(p):用于不同进程之间的通信,用“fifo”标识,先进先出队列
5.套接字文件-socket(s):网络应用程序通过socket编程接口来和内核空间的网络协议栈通信
6.设备文件-device file
块设备文件(b)-block special file
字符设备文件(c)-character special file
②链接文件
>>>链接文件分为硬链接文件和软链接文件(符号链接文件)
为什么要链接:
>>>为了解决Linux中文件的共享使用问题,隐藏文件的路径,增加权限安全和节省空间的好处
硬链接
如何创建硬链接:
>>>ln file1 file2 :创建了一个硬链接file2 指向了源文件file1
>>>系统给硬链接file2创建了一个指向,指向了源文件file1的inode
硬链接特性:
>>>硬链接的两个文件具有相同的inode、data block、属性和权限
>>>不能交叉文件系统(分区)创建硬链接 (缺点)
>>>创建硬链接,源文件必须存在
>>>目录不能创建硬链接
>>>通过硬链接去读写,与通过源文件读写一样
>>>删除硬链接,是删除硬链接对源文件的inode指向,源文件没有任何变化
>>>硬链接文件和源文件是相互的,如果删除源文件,是删除源文件对inode的指向,对硬链接没有影响
软链接
如何创建软链接:
>>>ln -s file1 file2 :创建源文件file1的一个软链接file2 (不可以随便移动源文件)
-s, --symbolic
make symbolic links instead of hard links
软链接特性:
>>>软链接文件和源文件的inode和data block不一样,具有单独的属性和权限
>>>软链接可以交叉文件系统(分区)创建 (需要用绝对路径)
>>>可以对不存在的文件或目录创建软链接(此时的软链接为一个broken symbolic link)
>>>软链接symbolic_link.txt的权限是777,软链接的内存空间就是源文件的内存空间
>>>对软连接读写,是通过软链接递归查找到源文件的inode,然后再对源文件进行读写
>>>删除软链接,是删除软链接与源文件的关联,对源文件没有任何影响
③文件系统层级结构之根下目录
>>>man hier :查看根下目录的说明
>>>以下的目录都是系统自我运行必须用到的目录,除了boot和home目录外,
其他都不能独立分区的,必须在根上,不能关联到其他独立分区上
根下目录
目录名称 |
目录作用 |
/boot |
存放引导文件 |
/bin |
供所有用户使用的基本命令 |
/sbin |
管理类的基本命令 |
/lib |
基本共享库文件、内核模块文件 |
/lib64 |
专门存放x86_64系统的辅助共享库文件 |
/etc |
配置文件目录,是纯文本文件 |
/home |
普通用户家目录 |
/root |
超级管理员家目录 |
/media |
便携式移动设备挂载点 |
/mnt |
临时文件系统挂载点 |
/dev |
设备文件和特殊文件存储位置 |
/opt |
第三方应用程序的安装位置 |
/srv |
存放系统运行的服务所用到的数据 |
/tmp |
存放临时文件 |
非根下目录
/usr |
是可共享的只读数据目录 例:man手册在/usr/share/man 一般存放与用户相关的文件,例如安装和卸载软件 一般在一个独立的分区 |
/var |
该分区通常会划分到一个独立的分区 存放经常发生变化的目录文件 /var/log :日志目录与日志文件 |
/proc |
用于输出内核与进程信息相关的虚拟文件系统 |
/sys |
输出与当前系统上硬件设备相关信息的虚拟文件系统 |
/selinux |
security enhance linux |
④linux上应用程序的组成部分
>>>二进制程序
>>>库文件
>>>配置文件
>>>帮助文件
说明:
>>>以上内容是本人学习的总结
>>>如还有错误,请留言,指正
>>>亦可分享自己的想法,互相学习