#####################################################
磁盘管理

磁道:track
扇区:sector 每个扇区,512字节
磁头:head
柱面:cylinde
####################################################

• MBR/msdos 分区模式
– 1~4个主分区,或者 0~3个主分区+1个扩展分区(n个逻辑分区)
– 最大支持容量为 2.2TB 的磁盘
– 扩展分区不能格式化

识别硬盘 => 分区规划 => 格式化 => 挂载使用

毛坯楼层 => 打隔断 => 装修 => 入驻

###################################################
• 查看磁盘lsblk
[root@server0 ~]# lsblk

• 修改硬盘的分区表
– fdisk 硬盘设备

常用交互指令:
m 列出指令帮助
p 查看现有的分区表
n 新建分区
d 删除分区
q 放弃更改并退出
w 保存更改并退出

[root@server0 ~]# fdisk /dev/vdb
n 创建新的分区----->回车----->回车---->回车----->在last结束时 +2G
p 查看分区表
n 创建新的分区----->回车----->回车---->回车----->在last结束时 +2G
d 删除分区
w 保存并退出

[root@server0 ~]# ls /dev/vdb[1-2]
/dev/vdb1 /dev/vdb2
[root@server0 ~]# lsblk
###############################################
格式化文件系统
• mkfs 工具集
– mkfs.ext3 分区设备路径
– mkfs.ext4 分区设备路径
– mkfs.xfs 分区设备路径
– mkfs.vfat 分区设备路径

[root@server0 ~]# mkfs.xfs /dev/vdb1
[root@server0 ~]# mkfs.ext4 /dev/vdb2

查看分区文件系统
• blkid

[root@server0 ~]# blkid /dev/vdb1
[root@server0 ~]# blkid /dev/vdb2

#################################################
挂载使用

[root@server0 ~]# mkdir /part1
[root@server0 ~]# mkdir /part2
[root@server0 ~]# mount /dev/vdb1 /part1
[root@server0 ~]# mount /dev/vdb2 /part2

查看正在挂载使用的设备信息
[root@server0 ~]# df -h

####################################################
缓解根分区的压力

[root@server0 ~]# find -size 查找较大的目录有哪些

[root@server0 ~]# 还分新的分区 /dev/vdc1

[root@server0 ~]# mount /dev/vdc1 /mnt
[root@server0 ~]# cp -r /home/ /mnt
[root@server0 ~]# rm -rf /home/

[root@server0 ~]# umount /mnt
[root@server0 ~]# mount /dev/vdc1 /home

#################################################
将虚拟机server重起

[root@server0 ~]# reboot

###################################################
开机自动挂载,修改配置文件 /etc/fstab

• 配置文件 /etc/fstab 的记录格式
– 设备路径 挂载点 类型 参数 备份标记 检测顺序

[root@server0 ~]# tail -1 /etc/fstab
/dev/vdb1 /part1 xfs defaults 0 0

验证:
[root@server0 ~]# mount -a
检测/etc/fstab开机自动挂载配置文件,格式是否正确
检测/etc/fstab中,书写完成,但当前没有挂载的设备,进行挂载

[root@server0 ~]# df -h
#####################################################
综合分区练习
[root@server0 ~]# fdisk /dev/vdb
p 查看分区表
n 创建新的分区----->回车----->回车---->回车----->在last结束时 +2G
p 查看分区表
n 创建新的分区
----->回车---->起始回车----->结束回车 将所有空间给扩展分区
p 查看分区表
n 创建新的分区----->起始回车------>结束+2G
d 删除分区
w 保存并退出
[root@server0 ~]# partprobe #刷新分区表
[root@server0 ~]# ls /dev/vdb[1-5]
[root@server0 ~]# lsblk
######################################################
总结:

1.查看硬盘 lsblk
2.划分分区 fdisk
3.刷新分区表 partprobe
4.格式化文件系统 mkfs.xfs mkfs.ext4
5.挂载 mount
6.开机自动挂载 /etc/fstab

#######################################################
LVM逻辑卷的使用

1.整合分散的空间
2.实现分区的动态扩大与缩减

在“分区 --> 格式化”中间增加的一个逻辑层
– 零散空闲存储 ---- 整合的虚拟磁盘 ---- 虚拟的分区----- 格式化------ 挂载

砖--------->房子-------->打隔断-------->装修---------->入住

物理卷
Physical Volume
卷组
Volume Group
逻辑卷
Logical Volume

将众多的物理卷,组成卷组,再从卷组中划分逻辑卷

######################################################
图形添加全新的硬盘80G

[root@server0 ~]# lsblk

#####################################################
综合分区
将/dev/vdc划分6个分区,3个主分区,一个扩展分区,2个逻辑分区
[root@server0 ~]# fdisk /dev/vdc
n 创建新的分区----->回车----->回车---->回车----->在last结束时 +10G
n 创建新的分区----->回车----->回车---->回车----->在last结束时 +10G
n 创建新的分区----->回车----->回车---->回车----->在last结束时 +10G
p 查看分区表
n 创建新的分区
----->回车---->起始回车----->结束回车 将所有空间给扩展分区
p 查看分区表
n 创建新的分区----->起始回车------>结束+10G
n 创建新的分区----->起始回车------>结束+10G
w 保存并退出
[root@server0 ~]# partprobe #刷新分区表
[root@server0 ~]# ls /dev/vdc[1-6]
[root@server0 ~]# lsblk
[root@server0 ~]# ls /dev/vdc*

######################################################
新建逻辑卷

1.新建卷组
命令格式:vgcreate 卷组名称 分区路径

[root@server0 ~]# vgcreate myvg /dev/vdc1 /dev/vdc2
[root@server0 ~]# vgs
[root@server0 ~]# pvs/

2.创建逻辑卷
命令格式:lvcreate -n 逻辑卷名称 -L 大小 基于卷组

[root@server0 ~]# lvcreate -n mylv -L 16G myvg
[root@server0 ~]# lvs

3.使用LVM逻辑卷
[root@server0 ~]# mkfs.ext4 /dev/myvg/mylv
[root@server0 ~]# mkdir /lvm
[root@server0 ~]# tail -1 /etc/fstab
/dev/myvg/mylv /lvm ext4 defaults 0 0

[root@server0 ~]# mount -a
[root@server0 ~]# df -h

#####################################################
LVM逻辑卷的扩展

一、卷组有足够的剩余空间
1.直接扩展逻辑卷的空间
[root@server0 ~]# vgs
[root@server0 ~]# lvextend -L 19G /dev/myvg/mylv

[root@server0 ~]# lvs
[root@server0 ~]# vgs

2.扩展文件系统的大小
扩展ext4文件系统: resize2fs
扩展xfs文件系统: xfs_growfs

[root@server0 ~]# df -h | tail -1
[root@server0 ~]# blkid /dev/myvg/mylv
[root@server0 ~]# resize2fs /dev/myvg/mylv
[root@server0 ~]# df -h | tail -1

二、卷组没有足够的剩余空间

1.扩展卷组空间
[root@server0 ~]# vgextend myvg /dev/vdc3
[root@server0 ~]# vgs

2.直接扩展逻辑卷的空间
[root@server0 ~]# vgs
[root@server0 ~]# lvextend -L 25G /dev/myvg/mylv

[root@server0 ~]# lvs
[root@server0 ~]# vgs

3.扩展文件系统的大小

[root@server0 ~]# df -h | tail -1
[root@server0 ~]# resize2fs /dev/myvg/mylv
[root@server0 ~]# df -h | tail -1
######################################################
了解:
缩减:不要做, 先缩减文件系统的大小,在缩减空间大小

[root@server0 ~]# resize2fs /dev/myvg/mylv 10G
[root@server0 ~]# umount /lvm
[root@server0 ~]# resize2fs /dev/myvg/mylv 10G
resize2fs 1.42.9 (28-Dec-2013)
请先运行 'e2fsck -f /dev/myvg/mylv'.

[root@server0 ~]# e2fsck -f /dev/myvg/mylv
[root@server0 ~]# resize2fs /dev/myvg/mylv 10G
[root@server0 ~]# lvreduce -L 10G /dev/myvg/mylv

[root@server0 ~]# lvreduce -L 10G /dev/myvg/mylv
WARNING: Reducing active logical volume to 10.00 GiB
THIS MAY DESTROY YOUR DATA (filesystem etc.)
Do you really want to reduce mylv? [y/n]: y

#####################################################
• 创建卷组的时候设置PE大小
– vgcreate -s PE大小 卷组名 空闲分区...
– vgchange -s PE大小 卷组名

PE:卷组划分空间的单位 4M

[root@server0 ~]# vgdisplay myvg
[root@server0 ~]# vgchange -s 2M myvg
[root@server0 ~]# vgdisplay myvg

• 创建逻辑卷的时候指定PE个数
– lvcreate -l PE个数 -n 逻辑卷名 卷组名

[root@server0 ~]# lvcreate -l 102 -n lvtest02 myvg
Logical volume "lvtest02" created
[root@server0 ~]# lvs

#####################################################
交换分区(虚拟内存)

• 相当于虚拟内存,
– 当物理内存不够用时,使用磁盘空间来模拟内存
– 在一定程度上缓解内存不足的问题

[root@server0 ~]# swapon -s #查看交换空间,组成 成员信息

[root@server0 ~]# mkswap /dev/vdc5 #格式化,交换文件系统
[root@server0 ~]# swapon /dev/vdc5 #启用交换分区
[root@server0 ~]# swapon -s

[root@server0 ~]# mkswap /dev/vdc6 #格式化,交换文件系统
[root@server0 ~]# swapon /dev/vdc6 #启用交换分区
[root@server0 ~]# swapon -s

#####################################################

开机自动启用交换分区 /etc/fstab

[root@server0 ~]# vim /etc/fstab
[root@server0 ~]# tail -2 /etc/fstab
/dev/vdc5 swap swap defaults 0 0
/dev/vdc6 swap swap defaults 0 0

[root@server0 ~]# swapoff /dev/vdc[5-6] #停用交换分区

[root@server0 ~]# swapon -s
[root@server0 ~]# swapon -a #检测/etc/fstab交换分区
[root@server0 ~]# swapon -s

#####################################################