☰
Linux磁盘挂载、扩容、删除
2026/10/14 1:45:25 网站建设 项目流程

磁盘挂载

  • 刷盘
    • 查看磁盘信息
    • 执行刷盘命令
    • 验证情况
  • 新建磁盘
    • <a id="create_pv">创建PV
    • 创建VG
    • 创建LV
    • 磁盘格式化
    • 不看详解,只看步骤
  • 扩容
    • 新建一个磁盘扩容
      • 创建pv
      • 扩容VG
      • <a id="expand_lv">扩容LV
      • 磁盘扩容
      • 不看详解,只看步骤
    • 在原磁盘上扩容
      • 调整物理卷大小
      • LV扩容
      • 扩容LV
  • 删除
    • 去掉挂载盘
    • 删除VG
    • 删除PV
    • vcenter上面删除硬盘

刚在vmcenter 添加了一块磁盘的时候是看不到磁盘信息的,lsblk查看之后原来的sda,没有新添加的磁盘

[root@localhost ~]# lsblkNAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda8:00100G0disk ├─sda18:10476M0part /boot ├─sda28:2052G0part │ ├─rootvg-syslv253:0018.6G0lvm / │ ├─rootvg-swap253:107.5G0lvm[SWAP]│ ├─rootvg-usr253:2018.6G0lvm /usr │ ├─rootvg-home253:301.9G0lvm /home │ └─rootvg-var253:405.4G0lvm /var └─sda38:3047.6G0part sr011:011024M0rom

刷盘

这时候需要执行刷盘操作,步骤如下

查看磁盘信息

查看原来的磁盘走的那个磁盘IO

[root@localhost ~]# ls -l /sys/blocktotal0lrwxrwxrwx1root root0Sep2909:34 dm-0 ->../devices/virtual/block/dm-0 lrwxrwxrwx1root root0Sep2909:34 dm-1 ->../devices/virtual/block/dm-1 lrwxrwxrwx1root root0Sep2909:34 dm-2 ->../devices/virtual/block/dm-2 lrwxrwxrwx1root root0Sep2909:34 dm-3 ->../devices/virtual/block/dm-3 lrwxrwxrwx1root root0Sep2909:34 dm-4 ->../devices/virtual/block/dm-4 lrwxrwxrwx1root root0Sep2909:34 dm-5 ->../devices/virtual/block/dm-5 lrwxrwxrwx1root root0Sep2909:34 loop0 ->../devices/virtual/block/loop0 lrwxrwxrwx1root root0Sep2909:34 loop1 ->../devices/virtual/block/loop1 lrwxrwxrwx1root root0Sep2909:34 sda ->../devices/pci0000:00/0000:00:10.0/host2/target2:0:0/2:0:0:0/block/sda

可以看到这个sda 走的是host2
sda -> …/devices/pci0000:00/0000:00:10.0/host2/target2:0:0/2:0:0:0/block/sda
看一下原来的磁盘走的是哪一个磁盘IO。如下面走的是host2

执行刷盘命令

echo"- - -">/sys/class/scsi_host/host2/scan

验证情况

再看一眼磁盘情况,可以看到有sdb出现了

[root@localhost block]# lltotal0lrwxrwxrwx1root root0Sep2909:34 dm-0 ->../devices/virtual/block/dm-0 lrwxrwxrwx1root root0Sep2909:34 dm-1 ->../devices/virtual/block/dm-1 lrwxrwxrwx1root root0Sep2909:34 dm-2 ->../devices/virtual/block/dm-2 lrwxrwxrwx1root root0Sep2909:34 dm-3 ->../devices/virtual/block/dm-3 lrwxrwxrwx1root root0Sep2909:34 dm-4 ->../devices/virtual/block/dm-4 lrwxrwxrwx1root root0Sep2909:34 dm-5 ->../devices/virtual/block/dm-5 lrwxrwxrwx1root root0Sep2909:34 loop0 ->../devices/virtual/block/loop0 lrwxrwxrwx1root root0Sep2909:34 loop1 ->../devices/virtual/block/loop1 lrwxrwxrwx1root root0Sep2909:34 sda ->../devices/pci0000:00/0000:00:10.0/host2/target2:0:0/2:0:0:0/block/sda lrwxrwxrwx1root root0Sep2914:57 sdb ->../devices/pci0000:00/0000:00:10.0/host2/target2:0:1/2:0:1:0/block/sdb lrwxrwxrwx1root root0Sep2909:34 sr0 ->../devices/pci0000:00/0000:00:07.1/ata2/host1/target1:0:0/1:0:0:0/block/sr0

lsblk也看一下~也有了sdb盘

[root@localhost block]# lsblkNAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda8:00100G0disk ├─sda18:10476M0part /boot ├─sda28:2052G0part │ ├─rootvg-syslv253:0018.6G0lvm / │ ├─rootvg-swap253:107.5G0lvm[SWAP]│ ├─rootvg-usr253:2018.6G0lvm /usr │ ├─rootvg-home253:301.9G0lvm /home │ └─rootvg-var253:405.4G0lvm /var └─sda38:3047.6G0part sdb8:160100G0disk sr011:011024M0rom loop07:00100G0loop └─docker-253:4-39301-pool253:50100G0dm loop17:102G0loop └─docker-253:4-39301-pool253:50100G0dm

新建磁盘

(主要步骤就是:pv—>vg—>lv—>磁盘格式化—>挂载)要理解PV-VG-LV的具体含义的,可以去百度一下~这里只仅仅写了如何操作

创建PV

我这边挂载的是/dev/sdb盘

[root@localhost block]# pvsPV VG Fmt Attr PSize PFree /dev/sda2 rootvg lvm2 a--51.98g0/dev/sda3 rootvg lvm2 a--<47.55g<47.55g##创建PVpvcreate /dev/sdb##查看结果[root@localhost ~]# pvsPV VG Fmt Attr PSize PFree /dev/sda2 rootvg lvm2 a--51.98g0/dev/sda3 rootvg lvm2 a--<47.55g<47.55g /dev/sdb lvm2 ---100.00g100.00g

创建VG

当前vg情况查看:vgs命令

[root@localhost ~]# vgsVG#PV #LV #SN Attr VSize VFreerootvg250wz--n-<99.53g<47.55g##创建新vgvgcreate Voolvg /dev/sdb

命令行解释:vgcreate Voolvg(自定义的vg名称)/dev/sdb(新添加的磁盘)

查看一下结果(这里使用的创建新VG哈)

[root@localhost ~]# vgsVG#PV #LV #SN Attr VSize VFreeVoolvg100wz--n-<100.00g<100.00g rootvg250wz--n-<99.53g<47.55g

创建LV

当前lv情况查看命令:lvs

[root@localhost ~]# lvsLV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert home rootvg -wi-ao----1.86g swap rootvg -wi-ao----7.45g syslv rootvg -wi-ao----<18.63g usr rootvg -wi-ao----<18.63g var rootvg -wi-ao----<5.41g##lvcreate-l100%VG-nVoolvg001 Voolvg

命令行解释:lvcreate -l(常用的就是两个-l和-L,-l 后面是添加百分比、-L 后面添加的大小;eg:-l 90%VG ; -L 50G)100%VG(把VG的余量全部给新创建的lv)-n Voolvg001(新的lv的名称)Voolvg(vg名称)

这里可以看到新增了一个voolvg001

[root@localhost ~]# lvsLV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert Voolvg001 Voolvg -wi-a-----<100.00g home rootvg -wi-ao----1.86g swap rootvg -wi-ao----7.45g syslv rootvg -wi-ao----<18.63g usr rootvg -wi-ao----<18.63g var rootvg -wi-ao----<5.41g

磁盘格式化

使用的是ext4格式进行格式化,后期可以进行缩容。之前使用的是默认的xfs,发现不能缩容。

[root@localhost ~]# lsblkNAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda8:00100G0disk ├─sda18:10476M0part /boot ├─sda28:2052G0part │ ├─rootvg-syslv253:0018.6G0lvm / │ ├─rootvg-swap253:107.5G0lvm[SWAP]│ ├─rootvg-usr253:2018.6G0lvm /usr │ ├─rootvg-home253:301.9G0lvm /home │ └─rootvg-var253:405.4G0lvm /var └─sda38:3047.6G0part sdb8:160100G0disk └─Voolvg-Voolvg001253:60100G0lvm[root@localhost ~]# fdisk -lDisk /dev/sdb:107.4GB,107374182400bytes,209715200sectors Units=sectors of1*512=512bytes Sector size(logical/physical):512bytes /512bytes I/O size(minimum/optimal):512bytes /512bytes Disk /dev/mapper/Voolvg-Voolvg001:107.4GB,107369988096bytes,209707008sectors Units=sectors of1*512=512bytes Sector size(logical/physical):512bytes /512bytes I/O size(minimum/optimal):512bytes /512bytes

可以看到新增了一个DISK盘:/dev/mapper/Voolvg-Voolvg001
格式化磁盘

mkfs.ext4 /dev/mapper/Voolvg-Voolvg001

磁盘挂载尝试一下

##需要先创建要挂载的磁盘[root@localhost ~]# mkdir -p /application##磁盘挂载[root@localhost ~]# mount /dev/mapper/Voolvg-Voolvg001 /application##查看一下结果,多出了一个/application/的挂载点[root@localhost ~]# df -ThFilesystem Type Size Used Avail Use% Mounted on devtmpfs devtmpfs 974M0974M0% /dev tmpfs tmpfs 991M0991M0% /dev/shm tmpfs tmpfs 991M 106M 885M11% /run tmpfs tmpfs 991M0991M0% /sys/fs/cgroup /dev/mapper/rootvg-syslv xfs 19G1.5G 18G8% / /dev/mapper/rootvg-usr xfs 19G6.6G 13G36% /usr /dev/sda1 xfs 473M 285M 188M61% /boot /dev/mapper/rootvg-var xfs5.4G1.7G3.8G31% /var /dev/mapper/rootvg-home xfs1.9G 33M1.9G2% /home tmpfs tmpfs 199M0199M0% /run/user/0 /dev/mapper/Voolvg-Voolvg001 ext4 99G 61M 94G1% /application

现在把它放在/etc/fstab文件中,这样重启主机也会自动挂载(添加了之后一行)

[root@wj-infra-prd-9355717a ~]# cat /etc/fstab/dev/mapper/rootvg-syslv / xfs defaults00UUID=3c672b5d-7e46-4f25-9b90-2b69ac4e86a3 /boot xfs defaults00/dev/mapper/rootvg-home /home xfs defaults00/dev/mapper/rootvg-usr /usr xfs defaults00/dev/mapper/rootvg-var /var xfs defaults00/dev/mapper/rootvg-swap swap swap defaults00/dev/mapper/Voolvg-Voolvg001 /application ext4 defaults00

就此创建新磁盘结束了~

不看详解,只看步骤

所有的步骤整理如下如下

pvcreate /dev/sdb vgcreate Voolvg /dev/sdb lvcreate-l100%VG-nVoolvg001 Voolvg mkfs.ext4 /dev/mapper/Voolvg-Voolvg001echo"/dev/mapper/Voolvg-Voolvg001 /application ext4 defaults 0 0">>/etc/fstabmkdir-p/applicationmount-a

扩容

(主要步骤就是:pv—>vg—>lv—>磁盘扩容)

本次要扩容data目录的空间,先查看具体情况

[root@wj-opsp-dev-web2 ~]# df -ThFilesystem Type Size Used Avail Use% Mounted on devtmpfs devtmpfs7.9G07.9G0% /dev /dev/mapper/rootvg-syslv xfs 19G 292M 19G2% / /dev/mapper/rootvg-usr xfs 19G6.7G 12G36% /usr /dev/sda1 xfs 473M 244M 230M52% /boot /dev/mapper/rootvg-var xfs5.4G4.5G 954M83% /var /dev/mapper/voolvg-data xfs 100G 100G 12K100% /data

可以看出来要扩容的磁盘的vg为voolvglv为data

新建一个磁盘扩容

创建pv

参考新建磁盘的步骤

扩容VG

此处我要把/dev/sdb 的空间 扩容给 voolvg

##查看当前VG情况[root@localhost ~]# vgsFile descriptor3(socket:[495732500])leaked on vgs invocation. Parent PID6689:-bashVG#PV #LV #SN Attr VSize VFreerootvg250wz--n-<99.53g<47.55g voolvg110wz--n-<100.00g0##将sdb的空间扩容给vg:voolvg里面[root@localhost ~]# vgextend voolvg /dev/sdbFile descriptor3(socket:[495732500])leaked on vgextend invocation. Parent PID6689:-bashVolume group"voolvg"successfully extended##再查看一下vg的空间,可以看到总计是300G了。[root@localhost ~]# vgsFile descriptor3(socket:[495732500])leaked on vgs invocation. Parent PID6689:-bashVG#PV #LV #SN Attr VSize VFreerootvg250wz--n-<99.53g<47.55g voolvg210wz--n-299.99g<200.00g

扩容LV

##查看一下lv的情况[root@localhost ~]# lvsFile descriptor3(socket:[495732500])leaked on lvs invocation. Parent PID6689:-bashLV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert home rootvg -wi-ao----1.86g data voolvg -wi-ao----<100.00g##将vg多余的空间都给到lv-data[root@localhost ~]# lvextend -l +100%FREE /dev/voolvg/dataFile descriptor3(socket:[495732500])leaked on lvextend invocation. Parent PID6689:-bashSize of logical volume voolvg/data changed from<100.00GiB(25599extents)to299.99GiB(76798extents). Logical volume voolvg/data successfully resized.##再查看一下lv的情况,可以看到data已经为300G了[root@localhost ~]# lvsFile descriptor3(socket:[495732500])leaked on lvs invocation. Parent PID6689:-bashLV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert home rootvg -wi-ao----1.86g swap rootvg -wi-ao----7.45g syslv rootvg -wi-ao----<18.63g usr rootvg -wi-ao----<18.63g var rootvg -wi-ao----<5.41g data voolvg -wi-ao----299.99g

磁盘扩容

查看一下要扩容的目录的磁盘格式化格式。

[root@localhost ~]# df -ThFilesystem Type Size Used Avail Use% Mounted on devtmpfs devtmpfs7.9G07.9G0% /dev /dev/mapper/rootvg-syslv xfs 19G 292M 19G2% / /dev/mapper/rootvg-usr xfs 19G6.7G 12G36% /usr /dev/sda1 xfs 473M 244M 230M52% /boot /dev/mapper/rootvg-var xfs5.4G4.5G 954M83% /var /dev/mapper/voolvg-data xfs 100G 100G 12K100% /data /dev/mapper/rootvg-home xfs1.9G 41M1.9G3% /home

可以看到此处要扩容的data的文件类型为 xfs

[root@localhost ~]# xfs_growfs /datameta-data=/dev/mapper/voolvg-dataisize=512agcount=4,agsize=6553344blks=sectsz=512attr=2,projid32bit=1=crc=1finobt=0spinodes=0data=bsize=4096blocks=26213376,imaxpct=25=sunit=0swidth=0blks naming=version2bsize=4096ascii-ci=0ftype=1log=internalbsize=4096blocks=12799,version=2=sectsz=512sunit=0blks, lazy-count=1realtime=noneextsz=4096blocks=0,rtextents=0data blocks changed from26213376to78641152##扩容完看一下,/data目录更改为了300G[root@localhost ~]# df -ThFilesystem Type Size Used Avail Use% Mounted on devtmpfs devtmpfs7.9G07.9G0% /dev /dev/mapper/rootvg-syslv xfs 19G 292M 19G2% / /dev/mapper/rootvg-usr xfs 19G6.7G 12G36% /usr /dev/sda1 xfs 473M 244M 230M52% /boot /dev/mapper/rootvg-var xfs5.4G4.5G 954M83% /var /dev/mapper/voolvg-data xfs 300G 100G 200G34% /data /dev/mapper/rootvg-home xfs1.9G 41M1.9G3% /home

不看详解,只看步骤

pvcreate /dev/sdb vgextend voolvg /dev/sdb lvextend-l+100%FREE /dev/voolvg/data xfs_growfs /data

在原磁盘上扩容

(主要步骤就是:pv—>lv—>磁盘扩容)

调整物理卷大小

此处调整的是/dev/sdc

##可以看到当前/app的大小是150[root@wj-infra-prd-9355717a ~]# lsblkNAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda8:00100G0disk ├─sda18:10476M0part /boot ├─sda28:2052G0part │ ├─rootvg-syslv253:0018.6G0lvm / └─sda38:3047.6G0part sdb8:160100G0disk └─Voolvg-Voolvg001253:60100G0lvm /application sdc8:320150G0disk └─VolGroup-VolGroup01253:50150G0lvm /app sr011:011024M0rom##当前是150G[root@localhost ~]# vgsVG#PV #LV #SN Attr VSize VFreeVolGroup110wz--n-<150.00g0rootvg250wz--n-<99.53g<47.55g##重新变更一下磁盘空间[root@localhost ~]# pvresize /dev/sdcPhysical volume"/dev/sdc"changed1physical volume(s)resized or updated /0physical volume(s)not resized

再看一下VG的情况

[root@localhost ~]# vgsVG#PV #LV #SN Attr VSize VFreeVolGroup110wz--n-<200.00g50.00g Voolvg110wz--n-<100.00g0rootvg250wz--n-<99.53g<47.55g

可以看到多出了50G

LV扩容

扩容LV

参考扩容中–新建一个磁盘扩容—扩容 步骤

删除

(主要步骤跟新建倒过来:去掉挂载盘—删除vg—删除pv—vcenter上面删除硬盘)
我想要删除/app 这个目录。 lsblk看一下,是在/dev/sdc 这个硬盘上

[root@localhost ~]# lsblkNAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda8:00100G0disk ├─sda18:10476M0part /boot ├─sda28:2052G0part │ ├─rootvg-syslv253:0018.6G0lvm / │ ├─rootvg-swap253:107.5G0lvm[SWAP]│ ├─rootvg-usr253:2018.6G0lvm /usr │ ├─rootvg-home253:301.9G0lvm /home │ └─rootvg-var253:405.4G0lvm /var └─sda38:3047.6G0part sdb8:160100G0disk └─Voolvg-Voolvg001253:60100G0lvm /application sdc8:320200G0disk └─VolGroup-VolGroup01253:50200G0lvm /app sr011:011024M0rom

去掉挂载盘

umount/app

删除/etc/fstab 文件中挂载/app的那一部分。此处是标黄色的部分
/dev/mapper/Voolvg-Voolvg001 /application ext4 defaults 0 0
/dev/mapper/VolGroup-VolGroup01 /app ext4 defaults 0 0

删除VG

/app 挂载的是 vg是VolGroup。删除vg

[root@localhost ~]# vgremove VolGroupDo you really want to remove volume group"VolGroup"containing1logical volumes?[y/n]: y Do you really want to remove active logical volume VolGroup/VolGroup01?[y/n]: y Logical volume"VolGroup01"successfully removed Volume group"VolGroup"successfully removed##查看一下[root@localhost ~]# vgsVG#PV #LV #SN Attr VSize VFreeVoolvg110wz--n-<100.00g0rootvg250wz--n-<99.53g<47.55g

删除PV

删除/dev/sdc 这一个pv

[root@localhost ~]# pvremove /dev/sdcLabels on physical volume"/dev/sdc"successfully wiped.##看一下没有这个pv了[root@localhost ~]# pvsPV VG Fmt Attr PSize PFree /dev/sda2 rootvg lvm2 a--51.98g0/dev/sda3 rootvg lvm2 a--<47.55g<47.55g /dev/sdb Voolvg lvm2 a--<100.00g0

vcenter上面删除硬盘

查看一下硬盘挂载的SCSI是几.可以看出是 host2/target2:0:2挂载的是0:2

[root@localhost ~]# ls -l /sys/block/lrwxrwxrwx1root root0Nov2814:25 sdc ->../devices/pci0000:00/0000:00:10.0/host2/target2:0:2/2:0:2:0/block/sdc

登录vcenter 查看0:2的是哪一个。可以看出来是硬盘3。删除这个硬盘3,重启主机。

再登录主机看一下,是没有sdc硬盘的了

[root@localhost ~]# lsblkNAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda8:00100G0disk ├─sda18:10476M0part /boot ├─sda28:2052G0part │ ├─rootvg-syslv253:0018.6G0lvm / │ ├─rootvg-swap253:107.5G0lvm[SWAP]│ ├─rootvg-usr253:2018.6G0lvm /usr │ ├─rootvg-home253:301.9G0lvm /home │ └─rootvg-var253:405.4G0lvm /var └─sda38:3047.6G0part sdb8:160100G0disk └─Voolvg-Voolvg001253:50100G0lvm /application sr011:011024M0rom

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询