磁盘管理
一、磁盘分区的规则
要新添加磁盘,必须关闭虚拟机再添加
在linux里 磁盘有三类分区:主分区(primary)、扩展分区(extended)和逻辑分区(logical)
主分区不能超过3块,扩展分区不能超过1块,逻辑分区是建立在扩展分区上的
1、fdisk(lsblk) 查看/创建磁盘分区
fdisk -l 或者 lsblk
查看磁盘分区列表
fdisk + [磁盘设备]
创建磁盘分区
2、在创建磁盘分区列表里面
* m: 查看操作指令的帮助信息(man)
* p: 列表查看分区信息(partition)
* n: 新建分区(new)
* d: 删除分区(delete)
* t: 变更分区类型(type)
* w: 保存设置并退出(write)
* q: 不保存并退出(quit)
一般分区格式
n
默认回车
+10G
t
8e(类型)
w
3、mkfs 创建文件系统
硬盘分区后,要建立文件系统
相当于Windows的格式化
mkfs + 参数 + 文件系统类型 + 分区设备
例:
[root@localhost /]# mkfs -t ext4 /dev/sdb1
或者
mkfs.文件系统类型 分区设备 来创建文件系统
例:
[root@localhost /]# mkfs.ext4 /dev/sdb1
4、mkfs 常用的参数 和 文件系统类型
参数:
* -t 创建的文件系统类型
* -c 建立文件系统前首先检查坏块
* -V 输出建立文件系统详细信息
类型:
ext2、ext3、ext4(可扩容可缩容)、xfs(可扩容不可缩容)、iso9660(镜像文件类型)、nfs、swap等等
常用ext4、xfs 这两种类型
5、df -TH 磁盘使用空间
[root@localhost /]# df -Th
Filesystem Type Size Used Avail Use% Mounted on
/dev/mapper/rhel-root xfs 17G 3.2G 14G 19% /
devtmpfs devtmpfs 897M 0 897M 0% /dev
tmpfs tmpfs 912M 144K 912M 1% /dev/shm
tmpfs tmpfs 912M 9.0M 903M 1% /run
tmpfs tmpfs 912M 0 912M 0% /sys/fs/cgroup
/dev/sda1 xfs 1014M 173M 842M 18% /boot
tmpfs tmpfs 183M 12K 183M 1% /run/user/0
/dev/sr0 iso9660 3.6G 3.6G 0 100% /run/media/root/RHEL-7.3 Server.x86_64
[root@localhost /]#
二、LVM 逻辑卷管理器
1、部署逻辑卷
部署LVM,需要逐个配置物理卷、卷组和逻辑卷
步骤:
PV VG LV 格式化 挂载使用文件系统
(1)物理卷{PV} 整个硬盘,或用 fdisk 建立的普通分区
pvcreate 设备名
例:
[root@localhost ~]# pvcreate /dev/sdb1 /dev/sdc1 设备名添加也可以分开写
[root@localhost ~]# pvdisplay 查看物理卷信息
(2)卷组(VG) 一个或多个物理卷组合而成的整体
vgcreate 卷组名 物理卷1 物理卷2
例:
[root@localhost ~]# vgcreate mail_store /dev/sdb1 /dev/sdc1 把 /dev/sdb1 和/dev/sdc1添加到 mail_store 这个卷组名里面
[root@localhost ~]# vgdisplay 查看卷组信息
(3)逻辑卷(lV) 从卷组中分割出的空间,也是实际的内存大小
lvcreate -L 大小 -n 逻辑卷名 卷组名
例:
[root@localhost ~]# lvcreate -L 60G -n mail mail_store
[root@localhost ~]# lvdisplay 查看逻辑卷信息
2、对逻辑卷格式化
还是使用mkfs的命令来格式化
[root@localhost ~]# mkfs.ext4 /dev/mail_store/mail
[root@localhost ~]# partprobe /dev/sdb /dev/sdc 对分区强刷(建议强刷)
3、挂载目录即可
取消挂载后, 之前挂载LVM的目录文件会消失
重新挂载后, 文件又会回来
临时挂载:
[root@localhost ~]# mount /dev/mail_store/mail/media 挂载到/media这个文件里
[root@localhost ~]# df -Th 可以来查看挂载情况
永久挂载:
[root@localhost ~]# vim /etc/fstab
/dev/mail_store/mail /media ext4 default 0 0
[root@localhost ~]# mount -a 挂载/etc/fstab 下所有的挂载点
4、扩容 LVM
扩容是在线的,不用取消挂载
用lsblk查看,如果容量不够,从物理卷(pv)开始新增
如果容量足够,直接lvextend扩容
(1)新增物理卷
[root@localhost ~]# pvcreate/dev/sdd
(2)扩卷组
[root@localhost ~]# vgextend mail_store /dev/sdd
(2)扩逻辑卷
[root@localhost ~]# lvextend -L +10G /dev/mail_store/mail
(lvextend -r -L +10G /dev/mail_store/mail)
#刷新系统 和扩容
4、重置硬盘容量
[root@localhost ~]# e2fsck -f /dev/mail_store/mail 检查硬盘完整性
[root@localhost ~]# resize2fs /dev/mail_store/mail
这是对文件系统类型为ext4的重置
[root@localhost ~]# xfs_growfs /media
这是对文件系统类型是xfs的重置,后面跟上逻辑卷的挂载点
5、缩小 LVM
缩容会丢失数据,要提前备份
缩容必须得卸载挂载点
建议能不缩容就不缩容
[root@localhost ~]# umount /media 卸载挂载点
[root@localhost ~]# lvreduce -L -5G /dev/mail_store/mail 给逻辑卷缩小5G
[root@localhost ~]# resize2fs /dev/mail_store/mail 重置硬盘容量
[root@localhost ~]# e2fsck -f /dev/mail_store/mail 检查硬盘完整性
[root@localhost ~]# mount /dev/mail_store/mail /media 挂载到/media这个文件里
[root@localhost ~]# df -Th 查看系统状态
6、删除 LVM
依次删除逻辑卷、卷组、物理卷设备 不可颠倒
[root@localhost ~]# umount /media 卸载挂载点
[root@localhost ~]# lvmove /dev/mail_store/mail 删除逻辑卷,得写绝对路径
[root@localhost ~]# vgmove mail_store 删除卷组,写卷组名称即可
[root@localhost ~]# pvmove /dev/sdb1 /dev/sdc1 删除物理卷