Linux 命令学习之 文件目录结构
文件系统及目录结构

在Linux系统中,目录被组织成一个:单根倒置树结构,文件系统从根目录开始,用/来表示。文件名称区分大小写( 大小写敏感还需要看具体的文件系统格式 ),以.开头的为隐藏文件,路径用/来进行分割(windows中使用\来分割),文件有两个种类:元数据与数据本身.在操作linux系统时,通常会遵循以下的分层结构规则:
LSB (Linux Standard Base) / FHS(Filesystem Hierarchy Standard)
解释:
/:根目录,位于Linux文件系统目录结构的顶层,一般根目录下只存放目录,不要存放文件,/etc、/bin、/dev、/lib、/sbin应该和根目录放置在一个分区中。
bin : 提供用户使用的基本命令, 存放二进制命令,不允许关联到独立分区,OS启动会用到里面的程序。
boot :用于存放引导文件,内核文件,引导加载器.
dev : 设备(device)文件目录,存放linux系统下的设备文件,访问该目录下某个文件,相当于访问某个设备,存放连接到计算机上的设备(终端、磁盘驱动器、光驱及网卡等)的对应文件 (b 随机访问,c 线性访问)
etc: 系统配置文件存放的目录,该目录存放系统的大部分配置文件和子目录,不建议在此目录下存放可执行文件 。
home : 普通用户主目录,当新建账户时,都会分配在此,建议单独分区,并分配额外空间用于存储数据。
root : 系统管理员root的宿主目录,系统第一个启动的分区为/,所以最好将/root和/放置在一个分区下。
/sbin:管理类的基本命令,不能关联到独立分区,OS启动时会用到的程序(重要的命令通常处于bin,不重要的则安装在sbin)。
/tmp:存储临时文件, 任何人都可以访问,重要数据一定不要放在此目录下。
/usr: 应用程序存放目录,/usr/bin 存放保证系统拥有完整功能而提供的应用程序, /usr/share 存放共享数据,/usr/lib 存放不能直接运行的,却是许多程序运行所必需的一些函数库文件,_/usr/local 存放软件升级包,第三方应用程序的安装位置,/usr/share/doc _系统说明文件存放目录。
/var :放置系统中经常要发生变化的文件,如日志文件。/var/log 日志目录及文件./var/tmp:保存系统两次重启之间产生的临时数据.
/proc: 用于输出内核与进程信息相关的虚拟文件系统,目录中的数据都在内存中,如系统核心,外部设备,网络状态,由于数据都存放于内存中,所以不占用磁盘空间
/sys : 用于输出当前系统上硬件设备相关的虚拟文件系统.
/selinux:存放selinux相关的信息安全策略等信息.
/opt:第三方应用程序的安装位置.
/media:便携式移动设备挂载点目录.
/mnt:临时文件系统挂载点.
具体如图所示:

文件系统
- 文件和目录被组织成一个单根倒置树结构
- 文件系统从根目录下开始,用 " / " 表示
- 根文件系统(rootfs): root filesystem
- 文件名称区分大小写
- 以. 开头的文件为隐藏文件
- 路径分隔的 /
- 文件有两类数据:
元数据: metadata
数据: data
- 文件系统分层结构: LSB Linux Standard Base
- FHS: (Filesystem Hierarchy Standard) : http://www.pathname.com/fhs/pub/fhs-2.3.html
文件名规则
- 文件名最长255个字符。不然会报 File name too long的异常。
- 包括路径在内文件名称最长2095个字节
- 蓝色 ---> 目录 ,绿色 --> 可执行文件 , 红色 --- > 压缩文件 , 浅蓝色 ---> 链接文件 , 灰色 --> 其他文件
- 除了斜杠和NULL,所有字符都有效。但使用特殊字符的目录名和文件不推荐使用,有些字符需要引号来引用它们
- 标准Linux文件系统(如ext4),文件名称大小写敏感。例如 MAIL 、Mail 、mail 、 mAiL
创建文件的命令 touch a.txt

浙公网安备 33010602011771号