9-磁盘相关知识
mbr格式:分区工具fdisk(最多4个主分区,通常用于<2T的硬盘空间)
gpt格式:分区工具gdisk(最多126个主分区,通常用于>2T的硬盘空间)
一.fdisk分区
命令:
partprobe 刷新磁盘分区信息
m 查看帮助信息
q 退出
n 新建分区(p主分区,e扩展分区)
p
d 删除分区
w 保存
文件系统制作与挂载:
fdisk /dev/sdb:创建磁盘分区,n创建,默认1,first sector回车,last sector:+1G,w保存
mkfs.xfs /dev/sdb1 # mkfs.xfs /dev/sdb2
mkdir /a # mkdir /b
mount /dev/sdb1 /a # mount /dev/sdb2 /b 注:同一个磁盘分区可以挂载多个目录(mount /dev/sdb1 /a),目录文件下内容同步增删改。mount命令可查看
df # 查看磁盘分区
umount /a # umount /dev/sdb1 取消磁盘挂载
开机自动挂载:
lsdisk:查看磁盘分区挂载信息 # fdisk -l /dev/sdb
blkid:查看磁盘挂载具体uuid
vim /etc/fstab:配置开机自动挂载 # 按照格式,将磁盘的uuid写入文件保存退出
mount -a # /etc/fstab立即生效,效果类似开机重启
二.gdisk分区
lsdik:查看磁盘分区挂载信息 # gdisk -l /dev/sdc
gdisk /dev/sdc:创建磁盘分区
mkfs.xfs /dev/sdc1:创建文件系统
mount /dev/sdc1 /aa:挂载磁盘分区至/aa目录
制作交互分区:
free -m:查看磁盘空间信息
mkswap /dev/sdc3:将/dev/sdc3分区制作swap文件
swapon /dev/sdc3:挂载swap分区 # swapoff /dev/sdc3 取消swap分区挂载
开机自动挂载:
lsdisk:查看磁盘分区挂载信息 # gdisk -l /dev/sdb
blkid:查看磁盘挂载具体uuid
vim /etc/fstab:配置开机自动挂载 # 按照格式,将磁盘的uuid写入文件保存退出
mount -a # /etc/fstab立即生效,效果类似开机重启
三.修复文件系统
# 创建磁盘分区
fdisk /dev/sdb # 分一个1G的分区
mkfs.xfs /dev/sdb1
mount /dev/sdb1 /mnt
echo 111 > /mnt/1.txt
# 模拟损坏
dd if=/dev/zero of=/dev/sdb bs=500m count=1
umount /mnt
mount /dev/sdb1 /mnt #无法挂载
# 修复
先尝试命令:xfs_repair /dev/sdb1
如果失败,执行强制修复:xfs_repair -L /dev/sdb1
四.xfs文件系统增量备份与恢复
mount /dev/sdc5 /test3:将磁盘分区/dev/sdc5 挂载到/test3目录下
xfsdump -l 0 -L sdc5_bak -M "all bak" -f /sdc5_bak_all /test3:将/test3下的文件全量备份到/sdc5_bak_all文件下(-M后"描述信息",-f后”备份文件名“)
xfsdump -l 1 -L sdc5_bak -M "all bak" -f /sdc5_bak_add1 /test3:将/test3下的文件增量备份到/sdc5_bak_add1文件下(期间做了增删改操作,建议按照时间命名备份文件)
xfsrestore -f /sdc5_bak_all /test3:将/sdc5_bak_all的文件恢复至/test3文件夹下(先恢复全量,再恢复增量)
五.LVM的使用
yum install lvm2 -y
准备一个硬盘空间(分区,一整块盘)
1.
pvcreate /dev/sdd:将磁盘分区sdd创建为pv
pvcreate /dev/sde1:将磁盘分区sde1创建为pv
pvs:查看pv信息
2.
vgcreate vg1 /dev/sdd /dev/sde1:将pv的sdd,sde1创建为vg1
vgs:查看vg信息
3.
lvcreate -L 1G -n lv1_from_vg1 vg1:从vg1中创建lv1_from_vg1,大小为1G
lvcreate -L 2G -n lv2_from_vg1 vg1:从vg1中创建lv2_from_vg1,大小为2G
lvs:查看lv信息
4.
mkfs.xfs /dev/vg1/lv1_from_vg1:创建文件系统
mkfs.xfs /dev/vg1/lv2_from_vg1:
mkdir /test1:创建挂载目录
mkdir /test2
mount /dev/vg1/lv1_from_vg1 /test1:挂载lvm
mount /dev/vg1/lv2_from_vg1 /test2
5.动态扩容
pvcreate /dev/sdf:将新的磁盘/dev/sdf创建pv
vgs:查看vg信息
vgextend vg2 /dev/sdf:将新的pv增加到vg2
lvextend -L +10G /dev/vg2/lv1_from_vg2:将新的vg2增加到lv1_from_vg2中,大小为10G
df -h:查看磁盘信息
xfs_growfs /dev/vg2/lv1_from_vg2:动态扩容生效(刷新)
6.取消扩容挂载
umount /test5:取消分区挂载
lvremove /dev/vg2/lv1_from_vg2:移除lv
vgs:查看vg信息
vgremove vg2:移除vg
pvs:查看pv信息
pvremove /dev/sde2:移除pv
六.快照与数据恢复
lvcreate -L 1G -s -n lv1_from_vg1_snap /dev/vg1/lv1_from_vg1:创建快照文件lv1_from_vg1_snap
mount -o uuid /dev/vg1/lv1_from_vg1_snap /op/:将快照文件挂载至/opt目录下
umount /test3:必须保证取消磁盘挂载(期间做了很多增删改操作)
lvconvert --mergesnapshot /dev/vg1/lv1_from_vg1_snap:恢复快照
mount /dev/vg1/lv1_from_vg1 /test3:重新挂载磁盘