5.文件系统与存储管理
1. 磁盘配额管理
1.1 配额概念与类型
配额类型说明
- 硬限制(Hard Limit):用户绝对不能超过的磁盘空间限制
- 软限制(Soft Limit):允许用户暂时超过的限制,系统会发出警告
- 宽限期(Grace Period):超过软限制后允许保留的时间(默认7天)
1.2 配额实施完整步骤
-
修改fstab文件:
1
2# 在/etc/fstab中添加usrquota和/或grpquota选项
/dev/sda1 /home ext4 defaults,usrquota,grpquota 0 2 -
重新挂载文件系统:
1
2umount /home
mount -o remount /home -
创建配额文件:
1
2touch /home/aquota.user /home/aquota.group
chmod 600 /home/aquota.* -
初始化配额数据库:
1
quotacheck -cugm /home
-
启用配额系统:
1
quotaon -avug
-
为用户设置配额:
1
edquota username
1.3 配额管理命令详解
quota - 显示配额信息
1 | quota -u username # 显示用户配额 |
quotacheck - 检查配额
1 | quotacheck -avug # 检查所有文件系统配额 |
quotaon/quotaoff - 启用/禁用配额
1 | quotaon -avug # 启用所有配额 |
edquota - 编辑配额
1 | edquota -u username # 编辑用户配额 |
repquota - 报告配额状态
1 | repquota -a # 报告所有文件系统配额状态 |
2. 文件系统层次标准(FHS)
2.1 核心目录结构
目录 | 完整描述 | 典型内容 |
---|---|---|
/bin |
基础命令二进制文件 | ls, cp, mv等基本命令 |
/sbin |
系统管理二进制文件 | fdisk, fsck, ifconfig等 |
/etc |
系统配置文件 | passwd, fstab, network等配置文件 |
/dev |
设备文件 | sda, tty, null等设备节点 |
/lib |
系统库文件 | 系统运行所需共享库 |
/mnt |
临时挂载点 | 临时挂载文件系统的目录 |
/opt |
可选应用软件包 | 第三方应用程序 |
/proc |
进程和内核信息 | 虚拟文件系统,提供系统信息 |
/root |
root用户主目录 | root用户的个人文件和配置 |
/boot |
启动加载文件 | vmlinuz, initramfs, grub等 |
/home |
用户主目录 | 普通用户的个人目录 |
/tmp |
临时文件 | 系统重启后通常清空 |
/var |
可变数据文件 | 日志、邮件、数据库等 |
/usr |
用户程序资源 | 应用程序、文档、库文件等 |
3. 分区与文件系统管理
3.1 分区管理
fdisk 完整操作流程
1 | fdisk /dev/sdb |
交互命令列表:
n
:创建新分区d
:删除分区p
:显示分区表t
:更改分区类型a
:切换启动标志w
:写入并退出q
:不保存退出m
:显示帮助菜单
3.2 文件系统创建与管理
mkfs 命令集
1 | mkfs -t ext4 /dev/sdb1 # 创建ext4文件系统 |
交换空间管理
1 | mkswap /dev/sdb4 # 创建交换分区 |
3.3 文件系统检查与维护
fsck 系列命令
1 | fsck /dev/sdb1 # 基本文件系统检查 |
tune2fs 调整参数
1 | tune2fs -c 30 /dev/sdb1 # 设置每30次挂载后检查 |
3.4 空间监控命令
df 详细用法
1 | df -h # 人类可读格式 |
du 详细用法
1 | du -sh /var/log # 显示目录总大小 |
4. 文件搜索命令
4.1 find 命令完整用法
基本语法
1 | find [路径] [选项] [操作] |
常用示例
1 | find / -name "*.conf" # 按名称查找 |
4.2 locate/updatedb 系统
1 | locate passwd # 快速查找文件 |
4.3 which/whereis/type
1 | which ls # 查找命令路径 |
5. 挂载管理
5.1 挂载选项详解
选项 | 完整描述 |
---|---|
async/sync |
异步/同步写入 |
auto/noauto |
是否允许mount -a自动挂载 |
exec/noexec |
是否允许执行二进制文件 |
ro/rw |
只读/读写模式 |
suid/nosuid |
是否允许SUID/SGID |
user/nouser |
是否允许普通用户挂载 |
defaults |
默认选项(rw,suid,dev,exec,auto,nouser,async) |
5.2 mount/umount 完整用法
1 | mount /dev/sdb1 /mnt/data # 基本挂载 |
5.3 /etc/fstab 文件格式
1 | # 设备文件/挂载点/文件系统类型/选项/备份标记/检查顺序 |
6. 逻辑卷管理(LVM)
6.1 LVM 基本概念
- PV(Physical Volume):物理卷,实际存储设备
- VG(Volume Group):卷组,由PV组成的存储池
- LV(Logical Volume):逻辑卷,从VG划分的可挂载空间
- PE(Physical Extent):物理块,LVM最小分配单元(默认4MB)
- LE(Logical Extent):逻辑块,与PE一一对应
6.2 LVM 完整操作流程
物理卷(PV)管理
1 | pvcreate /dev/sdb /dev/sdc # 创建PV |
卷组(VG)管理
1 | vgcreate vg_data /dev/sdb /dev/sdc # 创建VG |
逻辑卷(LV)管理
1 | lvcreate -L 50G -n lv_home vg_data # 创建50G逻辑卷 |
文件系统扩展
1 | # 对于ext2/3/4文件系统 |
6.3 LVM 快照功能
1 | lvcreate -L 10G -s -n snap_home /dev/vg_data/lv_home # 创建快照 |
6.4 LVM 信息查看命令
1 | pvs # 简要PV信息 |