1、文件系统
1)、文件和目录被组织成一个单根倒置树结构; 2)、文件系统从根目录下开始,用“/” 表示;3)、 根文件系统(rootfs) :root filesystem; 4)、Linux的文件系统是大小写敏感;5)、以. 开头的文件为隐藏文件; 6)、路径分隔 符号 /; 7)、文件有两类数据:元数据metadata和数据data; 8)、文件系统分层结构:LSB Linux Standard Base; 9)、FHS: (Filesystem Hierarchy Standard);
2、文件命名规则
1)、包括路径在内文件名称最长4095 个字节,用/ 分隔的路径不能超过255 个字节;2)、Linux文件类型标示:蓝色--> 目录,绿色--> 可执行文件,红色--> 压缩文件,浅蓝色--> 链接文件,灰色--> 其他文件;3)、除了斜杠和NUL, 所有字符都有效,但使用特殊字符的目录名和文件不推荐使用,有些字符需要用引号来引用它们;4)、标准Linux 文件系统(如ext4 ),文件名称大小写敏感。例如:MAIL, Mail, mail, mAiL。
3、文件系统结构
/boot :引导文件存放目录,内核文件(vmlinuz) 、引导加载器(bootloader, grub) 都存放于此目录 /bin :供所有用户使用的基本命令;不能关联至独立分区,OS 启动即会用到的程序 /sbin :管理类的基本命令;不能关联至独立分区,OS 启动即会用到的程序 /lib :启动时程序依赖的基本共享库文件以及内核模块文件(/lib/modules) /lib64 :专用于x86_64 系统上的辅助共享库文件存放位置/etc :配置文件目录 /home/ USERNAME:普通用户家目录 /root :管理员的家目录 /media :便携式移动设备挂载点
/mnt :临时文件系统挂载点 /dev :设备文件及特殊文件存储位置
b: block device ,随机访问
c: character device ,线性访问 /opt :第三方应用程序的安装位置 /srv :系统上运行的服务用到的数据 /tmp:临时文件存储位置
/usr: universal shared, read-only data bin: 保证系统拥有完整功能而提供的应用程序 sbin: lib :32 位使用 lib64 :只存在64 位系统 include : C 程序的头文件(header files) share :结构化独立的数据,例如doc, man等等 local :第三方应用程序的安装位置,比如:bin, sbin, lib, lib64, etc, share
/var: variable data files cache: 应用程序缓存数据目录 lib: 应用程序状态信息数据 local:专用于为/usr/local 下的应用程序存储可变数据; lock: 锁文件 log: 日志目录及文件 opt: 专用于为/opt 下的应用程序存储可变数据; run: 运行中的进程相关数据;通常用于存储进程pid 文件 spool: 应用程序数据池 tmp: 保存系统两次重启之间产生的临时数据
/proc: 用于输出内核与进程信息相关的虚拟文件系统 /sys :用于输出当前系统上硬件设备相关信息的虚拟文件系统 /selinux: security enhanced Linux ,selinux 相关的安全策略等信息的存储位置
4、Linux上应用程序的组成部分
二进制程序:/bin, /sbin, /usr/bin, /usr/sbin,/usr/local/bin, /usr/local/sbin库文件:/lib, /lib64, /usr/lib, /usr/lib64,/usr/local/lib, /usr/local/lib64配置文件:/etc, /etc/DIRECTORY, /usr/local/etc帮助文件:/usr/share/man, /usr/share/doc,/usr/local/share/man, /usr/local/share/doc
5、Linux下的文件类型
- :普通文件 d: 目录文件 b: 块设备 c: 字符设备 l: 符号链接文件 p: 管道文件pipe s: 套接字文件socket
6、文件通配符
* 匹配零个或多个字符 ? 匹配任何单个字符 ~ 当前用户家目录 ~username 用户家目录 [0-9] 匹配一个数字范围 [wxc] 匹配列表中的任何的一个字符 [^wxc] 匹配列表中的所有字符以外的字符预定义的字符类:(#man 7 glob可以查看相关帮助信息页内容) [:digit:] :任意数字,相当于0-9 [:lower:]:任意小写字母 [:upper:] : 任意大写字母 [:alpha:] : 任意大小写字母 [:alnum:] :任意数字或字母 [:space:] :空格 [:punct:] :标点符号
7、配置文件编辑后生效问题
编辑配置给出的新配置不会立即生效;bash 进程重新读取配置文件:source /path/to/config_file
. /path/to/config_file