Linux 基础
参考资料
Linux
一切都是文件
dev/sd [a-z] 表示不同的 sata/usb 存储硬件
dev/sda [1-4] 是 MBR 分区表的主要分区或拓展分区 (最多一个)
[5-] 是逻辑分区, 是拓展分区指引的分区
/ 根目录, 文件系统起点
/bin 基础用户命令(单用户模式可用)
/boot 内核与引导加载器文件
/dev 设备节点
/dev/null 黑洞, 写即丢, 读即 EOF
/dev/zero 零源, 无限 0 流
/etc 系统配置
/etc/hosts 静态主机映射
/etc/resolv.conf DNS 服务器列表
/etc/passwd 用户账号数据库
/etc/group 用户组数据库
/home 普通用户家目录
/lib 基础共享库与内核模块
/media 自动挂载点(U 盘, 光驱等)
/mnt 手动临时挂载点
/opt 第三方大型软件包
/proc 运行时内核与进程视图
cat /proc/[pid]/status 进程状态快照
ls -l /proc/[pid]/fd 已打开文件列表
cat /proc/[pid]/fdinfo/[fd] 文件描述符详情
cat /proc/cpuinfo CPU 硬件信息
cat /proc/meminfo 内存使用统计
/root 超级用户家目录
/sbin 系统管理命令
/srv 本机对外提供的服务数据
/sys 内核设备模型接口
/sys/class 按功能分类的设备
/sys/block 块设备
/sys/char 字符设备
/sys/devices 物理设备树
/sys/fs 文件系统参数
/sys/kernel 内核可调参数
/sys/module 已加载模块列表
/tmp 临时文件(重启清空)
/usr 只读用户程序与数据
/var 可变数据(日志, 缓存, 队列)
lost+found 每个路径下都有, 恢复文件系统错误
/run 运行时系统信息
GPT 分区表
- 由 LBA1 (兼容 MBR 的启动, 但不记录分区表, 所以还是启动不了, 保护作用), LBA2-33 组成, 每个可以记录四组分区
文件信息
[d, -, l, b, c, s, p] 目录, 文件, 链接文件, 区块设备, 字符设备, 数据接口文件, FIFO 管道文件 (解决多线程冲突)
[rwx]*3, 读 写 修改
- 对于目录来说, r 是读有啥文件, w 是操纵目录结构 (不包括里面的文件内容), x 是能否进入目录工作
隐藏属性
- SUID (Set User ID) 文件在执行时以文件所有者的权限运行
- SGID (Set Group ID) 文件在执行时以文件所属组的权限运行
- SBIT (Sticky Bit) 只有文件的所有者和 root 用户可以删除该文件
- 4+2+1 表示文件的隐藏属性
xfs 系统
- 实时分配 inode, 除了数据区域之外, 还有两个区域分别是记录文件系统的变化以及缓冲新建立的文件 (分配好再放)
- ext 文件系统只能针对整个文件系统配额, XFS 可以用 project 模式来设计不同目录的磁盘配额
~~快捷方式~~
- 硬链接是建立两个不同的文件名, 指向同一个 inode, 但是不能链接目录, 也不能跨文件系统
- 软链接是一个文件, 当你操作的时候会导向实际的目录
用户
- 一个用户可以在多个用户组, 所以要区分有效用户组与初始用户组, 对已有文件, 该用户的权限是所有加入用户组, 新建文件归属有效用户组
- UID/GID 才是用户本体