一、系统的磁盘管理
1.本地存储设备的识别
fdisk -l # 查看硬盘上设备的真实存在的所有设备
cat /proc/partitions # 查看系统识别的设备
blkid # 查看系统可以使用的设备
df # 查看系统正在挂载的设备
df -h #查看到的设备大小更准确( 以2^n 计算 1M=1024K )
df -H #查看到的设备大小不准确( 以10^n 计算 1M=1000K)
注:从上到下,查看到的依次减少
(1)fdisk -l 查看系统真实存在的设备
(2)cat /proc/partitions 查看系统的可以识别的设备
(3)blkid 系统可使用的设备
(4)df 系统正在挂在的设备
(5)df -h 与 df -H 的区别
df -h (1M=1024K)
df - H (IM=1000K)
2、设备的挂载和卸载
/dev/sda1 # /dev=设备 s=sata,d=disk,a表示第一块硬盘,1表示第一块磁盘的第一块
(1)设备名称
/dev/xdxn # 例如: /dev/sda /dev/vda /dev/hd0
x:硬盘类型(s:sata硬盘 h:串口硬盘 v:虚拟硬盘)
x:a..z,硬盘所在个数
n:1..16,分区所在个数
/dev/mapper/* 系统中的虚拟设备
/dev/vdb1 1代表第一个分区
(2)设备的挂载与卸载相关命令
mount 设备 挂载点
mount /dev/sdb1 /mnt # 挂载/dev/sdb1设备到/mnt下
mount -o ro /dev/sdb1 /mnt # 只读挂载,ro表示只读
mount -o remount,rw /dev/sdb1 # 重新读写挂载,这个命令可以不用卸载之前的挂载
umoutn /mnt
umoutn /dev/sdb1 # 卸载,卸载的时候可以卸载设备,也可以卸载挂载点
mount # 查看挂载信息
做此实验可以将自己的u盘插入电脑(在真机里做)
df查看u 盘的挂载点
mount /dev/sdb1 /mnt 挂载sdb1到mnt
umount /mnt 或umoun /dev/sdb1 卸载,卸载的时候可以卸载设备,也可以卸载挂载点
mount -o ro /dev/sdb1 /mnt 只读挂载
mount 查看挂载信息
显示ro,则证明是只读挂载
测试:进入/mnt(u盘挂载点),不能建立文件(只读挂载)
从只读挂载到读写挂载的转换有两种
方法一: 先卸载刚才挂载的(umount)如果卸载不了,看下方(3)解决设备正忙的情况
mount -o rw /dev/sdb1 /mnt(只读挂载)
方法二: 不想解挂的时候,使用remount,rw改为读写模式
测试:进入/mnt(u盘挂载点),可以建立文件(读写挂载)
(3)解决设备正忙的情况
方法一:
发现进程:fuser -vm /dev/sdb1
终止进程:fuser -kvm /dev/sdb1
卸载成功
方法二:
发现进程:lsof /dev/sdb1
终止进程:kill -9 pid
卸载成功
有时卸载时显示设备正忙的原因:是因为你就在挂载目录下,此时退出挂载目录,就可以正常卸载了
二、系统的分区管理
1、磁盘分区信息
硬盘0和磁道1扇区的512个字节中记录的信息如下:
512 =446 +64+2
(1)446 ——> mbr主引导记录
(2)64 ——>mpt主分区表
最多有4个主分区,一个分区用16个字节记录
主分区:用主分区表记录的分区
扩展分区:专门用来存储更多的分区(相当于一个容器)
逻辑分区:扩展分区里的分
(3)2 ——>硬盘的有效性标识“55aa”
2.分区的划分及管理
主分区的创建及管理
实现一个分区设备的创建使用,一般经过如下动作:
划分创建一个分区、格式化、挂载
(1)创建分区
首先可以先查看一下系统真实存在的设备,选择合适的分区设备
开始创建分区(这里我们选的设备是/dev/vdb)
m 可以查看参数帮助列表:
新建分区参数选择设置如下:
查看分区列表
如果分区没有显示,则可以使用partprobe命令(同步分区表)
(2)格式化 mkfs.xfs /dev/vdb1
blkid 显示系统可用的设备
(3)挂载设备
实现永久挂载
编辑挂载策略文件 /etc/fstab
/dev/vdb5 /mnt xfs defaults 0 0
设备 挂载点 文件系统 挂载参数 是否备份 是否检测
**设备(重新读取该文件,使其挂载)
测试
先解挂
重新**设备(重新读取该文件,使其挂载)
实现永久挂载成功
拓展分区的创建及管理
(1)创建拓展分区
当系统已经有三个主分区时
再创建分区时,默认提示就由p(主分区)——> e(拓展分区)
填e,后续可以一路选择默认,把剩余所有空间分给扩展分区,最后保存
a.再次添加分区,方式如同添加主分区一样,这次添加的分区就是逻辑分区(拓展分区里的分区)
这里不再截图描述
b.同步分区列表,查看分区列表信息
3.swap分区的管理
(1)创建swap分区
新建一个分区
t 表示修改分区id (默认情况下,此分区是Linux类,要该为swap类型)
L 表示列出所以id类型代码
找到关于swap分区类型的代码——>82
输入82,把/dev/vdb6的分区类型修改为swap
同步分区列表
将/dev/vdb6格式化为swap格式,否则设备不可用
mkswap /dev/vdb6
**swap设备,使系统利用此设备
swapon -a /dev/vdb6
实现永久挂载
编辑挂载策略文件 /etc/fstab
注意:swap分区不需要挂载
(2)删除swap分区
编辑挂载策略文件 /etc/fstab ,删除相应内容
swapoff 设备
fdisk /dev/vdb 删除第6个分区
同步分区列表,显示已经删除
注:删除分区时,要先停止设备,不能先删除分区
三、磁盘配额
注意:磁盘配额针对设备,而非用户
(1)创建一个设备
新建一个目录
新建一个分区
同步分区列表
格式化
挂载 (usrquota——>用户配额)
(2)**配置参数
打开配置文件
设置student用户最大额度为20M(20480k=20M)
赋予权限,方便测试
编辑挂载策略文件
测试:
20M没有超过最大设置额度,可以正常截取
21M超过最大设置额度提示,提示“超过配额限制”,则其真实截取大小还是为20M