[CentOS 7系列]LVM磁盘管理

前端之家收集整理的这篇文章主要介绍了[CentOS 7系列]LVM磁盘管理前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

LVM是 Logical Volume Manager(逻辑卷管理)的简写,它由Heinz Mauelshagen在Linux 2.4内核上实现。LVM将一个或多个硬盘的分区在逻辑上集合,相当于一个大硬盘来使用,当硬盘的空间不够使用的时候,可以继续将其它的硬盘的分区加入其中,这样可以实现磁盘空间的动态管理,相对于普通的磁盘分区有很大的灵活性。

与传统的磁盘与分区相比,LVM为计算机提供了更高层次的磁盘存储。它使系统管理员可以更方便的为应用与用户分配存储空间。在LVM管理下的存储卷可以按需要随时改变大小与移除(可能需对文件系统工具进行升级)。LVM也允许按用户组对存储卷进行管理,允许管理员用更直观的名称(如"sales'、 'development')代替物理磁盘名(如'sda'、'sdb')来标识存储卷。


1、创建LVM磁盘

  1. [root@server02~]#fdisk/dev/sdb
  2. 欢迎使用fdisk(util-linux2.23.2)。
  3.  
  4. 更改将停留在内存中,直到您决定将更改写入磁盘。
  5. 使用写入命令前请三思。
  6.  
  7.  
  8. 命令(输入m获取帮助):n
  9. Partitiontype:
  10. pprimary(0primary,0extended,4free)
  11. eextended
  12. Select(defaultp):p
  13. 分区号(1-4,默认1):
  14. 起始扇区(2048-41943039,默认为2048):
  15. 将使用默认值2048
  16. Last扇区,+扇区or+size{K,M,G}(2048-41943039,默认为41943039):+1G
  17. 分区1已设置为Linux类型,大小设为1GiB
  18.  
  19. 命令(输入m获取帮助):p
  20.  
  21. 磁盘/dev/sdb21.5GB,21474836480字节,41943040个扇区
  22. Units=扇区of1*512=512bytes
  23. 扇区大小(逻辑/物理):512字节/512字节
  24. I/O大小(最小/最佳):512字节/512字节
  25. 磁盘标签类型:dos
  26. 磁盘标识符:0xa71b8f53
  27.  
  28. 设备BootStartEndBlocksIdSystem
  29. /dev/sdb120482099199104857683Linux
  30.  
  31. 命令(输入m获取帮助):t
  32. 已选择分区1
  33. Hex代码(输入L列出所有代码):8e//LVM的分区类型为8e
  34. 已将分区“Linux”的类型更改为“LinuxLVM
  35.  
  36. 命令(输入m获取帮助):p
  37.  
  38. 磁盘/dev/sdb21.5GB,21474836480字节,41943040个扇区
  39. Units=扇区of1*512=512bytes
  40. 扇区大小(逻辑/物理):512字节/512字节
  41. I/O大小(最小/最佳):512字节/512字节
  42. 磁盘标签类型:dos
  43. 磁盘标识符:0xa71b8f53
  44.  
  45. 设备BootStartEndBlocksIdSystem
  46. /dev/sdb12048209919910485768eLinuxLVM
  47.  
  48. 命令(输入m获取帮助):n
  49. Partitiontype:
  50. pprimary(1primary,3free)
  51. eextended
  52. Select(defaultp):p
  53. 分区号(2-4,默认2):
  54. 起始扇区(2099200-41943039,默认为2099200):
  55. 将使用默认值2099200
  56. Last扇区,G}(2099200-41943039,默认为41943039):+1G
  57. 分区2已设置为Linux类型,大小设为1GiB
  58.  
  59. 命令(输入m获取帮助):n
  60. Partitiontype:
  61. pprimary(2primary,2free)
  62. eextended
  63. Select(defaultp):p
  64. 分区号(3,4,默认3):
  65. 起始扇区(4196352-41943039,默认为4196352):
  66. 将使用默认值4196352
  67. Last扇区,G}(4196352-41943039,默认为41943039):+1G
  68. 分区3已设置为Linux类型,大小设为1GiB
  69.  
  70. 命令(输入m获取帮助):p
  71.  
  72. 磁盘/dev/sdb21.5GB,21474836480字节,41943040个扇区
  73. Units=扇区of1*512=512bytes
  74. 扇区大小(逻辑/物理):512字节/512字节
  75. I/O大小(最小/最佳):512字节/512字节
  76. 磁盘标签类型:dos
  77. 磁盘标识符:0xa71b8f53
  78.  
  79. 设备BootStartEndBlocksIdSystem
  80. /dev/sdb12048209919910485768eLinuxLVM
  81. /dev/sdb220992004196351104857683Linux
  82. /dev/sdb341963526293503104857683Linux
  83.  
  84. 命令(输入m获取帮助):t
  85. 分区号(1-3,默认3):2
  86. Hex代码(输入L列出所有代码):8e
  87. 已将分区“Linux”的类型更改为“LinuxLVM
  88.  
  89. 命令(输入m获取帮助):t
  90. 分区号(1-3,默认3):3
  91. Hex代码(输入L列出所有代码):8e
  92. 已将分区“Linux”的类型更改为“LinuxLVM
  93.  
  94. 命令(输入m获取帮助):p
  95.  
  96. 磁盘/dev/sdb21.5GB,21474836480字节,41943040个扇区
  97. Units=扇区of1*512=512bytes
  98. 扇区大小(逻辑/物理):512字节/512字节
  99. I/O大小(最小/最佳):512字节/512字节
  100. 磁盘标签类型:dos
  101. 磁盘标识符:0xa71b8f53
  102.  
  103. 设备BootStartEndBlocksIdSystem
  104. /dev/sdb12048209919910485768eLinuxLVM
  105. /dev/sdb22099200419635110485768eLinuxLVM
  106. /dev/sdb34196352629350310485768eLinuxLVM
  107.  
  108. 命令(输入m获取帮助):w
  109. Thepartitiontablehasbeenaltered!
  110.  
  111. Callingioctl()tore-readpartitiontable.
  112. 正在同步磁盘。
  113. [root@server02~]#pvcreate/dev/sdb1//使用pvcreate转换
  114. WARNING:xfssignaturedetectedon/dev/sdb1atoffset0.Wipeit?[y/n]:y
  115. Wipingxfssignatureon/dev/sdb1.
  116. Physicalvolume"/dev/sdb1"successfullycreated.
  117. [root@server02~]#pvcreate/dev/sdb2
  118. WARNING:xfs_external_logsignaturedetectedon/dev/sdb2atoffset18432.Wipeit?[y/n]:y
  119. Wipingxfs_external_logsignatureon/dev/sdb2.
  120. Physicalvolume"/dev/sdb2"successfullycreated.
  121. [root@server02~]#pvcreate/dev/sdb3
  122. WARNING:dossignaturedetectedon/dev/sdb3atoffset510.Wipeit?[y/n]:y
  123. Wipingdossignatureon/dev/sdb3.
  124. Physicalvolume"/dev/sdb3"successfullycreated.
  125. [root@server02~]#fdisk-l/dev/sdb
  126.  
  127. 磁盘/dev/sdb21.5GB,21474836480字节,41943040个扇区
  128. Units=扇区of1*512=512bytes
  129. 扇区大小(逻辑/物理):512字节/512字节
  130. I/O大小(最小/最佳):512字节/512字节
  131. 磁盘标签类型:dos
  132. 磁盘标识符:0xa71b8f53
  133.  
  134. 设备BootStartEndBlocksIdSystem
  135. /dev/sdb12048209919910485768eLinuxLVM
  136. /dev/sdb22099200419635110485768eLinuxLVM
  137. /dev/sdb34196352629350310485768eLinuxLVM
  138. [root@server02~]#partprobe//使分区表生效
  139. [root@server02~]#ls/dev/sdb1
  140. /dev/sdb1
  141. [root@server02~]#ls/dev/sdb2
  142. /dev/sdb2
  143. [root@server02~]#ls/dev/sdb3
  144. /dev/sdb3
  145. [root@server02~]#pvdisplay//查看已经存在的pv
  146. "/dev/sdb3"isanewphysicalvolumeof"1.00GiB"
  147. ---NEWPhysicalvolume---
  148. PVName/dev/sdb3
  149. VGName
  150. PVSize1.00GiB
  151. AllocatableNO
  152. PESize0
  153. TotalPE0
  154. FreePE0
  155. AllocatedPE0
  156. PVUUIDN7T8n5-Gc1a-bdO6-yFJy-PVTF-3HJM-Cy3gFD
  157.  
  158. "/dev/sdb2"isanewphysicalvolumeof"1.00GiB"
  159. ---NEWPhysicalvolume---
  160. PVName/dev/sdb2
  161. VGName
  162. PVSize1.00GiB
  163. AllocatableNO
  164. PESize0
  165. TotalPE0
  166. FreePE0
  167. AllocatedPE0
  168. PVUUID0Y7myL-dyWh-iKbN-G82H-U5je-lsGD-03i7UL
  169.  
  170. "/dev/sdb1"isanewphysicalvolumeof"1.00GiB"
  171. ---NEWPhysicalvolume---
  172. PVName/dev/sdb1
  173. VGName
  174. PVSize1.00GiB
  175. AllocatableNO
  176. PESize0
  177. TotalPE0
  178. FreePE0
  179. AllocatedPE0
  180. PVUUIDuWSpFE-KDDS-99nq-5jlc-NBAv-1JBi-PZgxC0
  181.  
  182. [root@server02~]#pvs
  183. PVVGFmtAttrPSizePFree
  184. /dev/sdb1lvm2---1.00g1.00g
  185. /dev/sdb2lvm2---1.00g1.00g
  186. /dev/sdb3lvm2---1.00g1.00g
  187. [root@server02~]#vgcreatevg1/dev/sdb1/dev/sdb2//创建VG,同一VG下的一组PV构成一个VG
  188. Volumegroup"vg1"successfullycreated
  189. [root@server02~]#vgs
  190. VG#PV#LV#SNAttrVSizeVFree
  191. vg1200wz--n-1.99g1.99g
  192. [root@server02~]#lvcreate-L100M-nlv1vg1
  193. Logicalvolume"lv1"created.
  194. [root@server02~]#mkfs.ext4/dev/vg1/lv1
  195. mke2fs1.42.9(28-Dec-2013)
  196. 文件系统标签=
  197. OStype:Linux
  198. 块大小=1024(log=0)
  199. 分块大小=1024(log=0)
  200. Stride=0blocks,Stripewidth=0blocks
  201. 25688inodes,102400blocks
  202. 5120blocks(5.00%)reservedforthesuperuser
  203. 第一个数据块=1
  204. Maximumfilesystemblocks=33685504
  205. 13blockgroups
  206. 8192blockspergroup,8192fragmentspergroup
  207. 1976inodespergroup
  208. Superblockbackupsstoredonblocks:
  209. 8193,24577,40961,57345,73729
  210.  
  211. Allocatinggrouptables:完成
  212. 正在写入inode表:完成
  213. Creatingjournal(4096blocks):完成
  214. Writingsuperblocksandfilesystemaccountinginformation:完成
  215. [root@server02~]#mount/dev/vg1/lv1/mnt/
  216. [root@server02~]#mkdir/mnt/123
  217. [root@server02~]#touch/mnt/1.txt
  218. [root@server02~]#echo"1234">/mnt/1.txt
  219. [root@server02~]#df-h
  220. 文件系统容量已用可用已用%挂载点
  221. /dev/sda328G1.1G27G4%/
  222. devtmpfs483M0483M0%/dev
  223. tmpfs493M0493M0%/dev/shm
  224. tmpfs493M6.8M486M2%/run
  225. tmpfs493M0493M0%/sys/fs/cgroup
  226. /dev/sda1197M109M88M56%/boot
  227. tmpfs99M099M0%/run/user/0
  228. /dev/mapper/vg1-lv193M1.6M85M2%/mnt
  229. [root@server02~]#cat/mnt/1.txt
  230. 1234


2、磁盘扩容

  1. [root@server02~]#umount/mnt/
  2. [root@server02~]#lvresize-L300M/dev/vg1/lv1
  3. Sizeoflogicalvolumevg1/lv1changedfrom100.00MiB(25extents)to300.00MiB(75extents).
  4. Logicalvolumevg1/lv1successfullyresized.
  5. [root@server02~]#e2fsck-f/dev/vg1/lv1
  6. e2fsck1.42.9(28-Dec-2013)
  7. 第一步:检查inode,块,和大小
  8. 第二步:检查目录结构
  9. 3步:检查目录连接性
  10. Pass4:Checkingreferencecounts
  11. 5步:检查簇概要信息
  12. /dev/vg1/lv1:13/25688files(7.7%non-contiguous),8899/102400blocks
  13. [root@server02~]#mount/dev/vg1/lv1/mnt/
  14. [root@server02~]#resize2fs/dev/vg1/lv1
  15. resize2fs1.42.9(28-Dec-2013)
  16. Filesystemat/dev/vg1/lv1ismountedon/mnt;on-lineresizingrequired
  17. old_desc_blocks=1,new_desc_blocks=3
  18. Thefilesystemon/dev/vg1/lv1isnow307200blockslong.
  19.  
  20. [root@server02~]#df-h
  21. 文件系统容量已用可用已用%挂载点
  22. /dev/sda328G1.1G27G4%/
  23. devtmpfs483M0483M0%/dev
  24. tmpfs493M0493M0%/dev/shm
  25. tmpfs493M6.8M486M2%/run
  26. tmpfs493M0493M0%/sys/fs/cgroup
  27. /dev/sda1197M109M88M56%/boot
  28. tmpfs99M099M0%/run/user/0
  29. /dev/mapper/vg1-lv1287M2.1M270M1%/mnt

如果是xfs格式时,不需要卸载,但需要执行xfs_growfs /dev/vg1/lv1命令。


3、磁盘缩减

  1. [root@server02~]#umount/mnt/
  2. [root@server02~]#e2fsck-f/dev/vg1/lv1
  3. e2fsck1.42.9(28-Dec-2013)
  4. 第一步:检查inode,和大小
  5. 第二步:检查目录结构
  6. 3步:检查目录连接性
  7. Pass4:Checkingreferencecounts
  8. 5步:检查簇概要信息
  9. /dev/vg1/lv1:13/75088files(7.7%non-contiguous),15640/307200blocks
  10. [root@server02~]#resize2fs/dev/vg1/lv1100M
  11. resize2fs1.42.9(28-Dec-2013)
  12. Resizingthefilesystemon/dev/vg1/lv1to102400(1k)blocks.
  13. Thefilesystemon/dev/vg1/lv1isnow102400blockslong.
  14.  
  15. [root@server02~]#lvresize-L100M/dev/vg1/lv1
  16. WARNING:Reducingactivelogicalvolumeto100.00MiB.
  17. THISMAYDESTROYYOURDATA(filesystemetc.)
  18. Doyoureallywanttoreducevg1/lv1?[y/n]:y
  19. Sizeoflogicalvolumevg1/lv1changedfrom300.00MiB(75extents)to100.00MiB(25extents).
  20. Logicalvolumevg1/lv1successfullyresized.
  21. [root@server02~]#mount/dev/vg1/lv1/mnt/
  22. [root@server02~]#df-h
  23. 文件系统容量已用可用已用%挂载点
  24. /dev/sda328G1.1G27G4%/
  25. devtmpfs483M0483M0%/dev
  26. tmpfs493M0493M0%/dev/shm
  27. tmpfs493M6.8M486M2%/run
  28. tmpfs493M0493M0%/sys/fs/cgroup
  29. /dev/sda1197M109M88M56%/boot
  30. tmpfs99M099M0%/run/user/0
  31. /dev/mapper/vg1-lv193M1.6M86M2%/mnt

磁盘缩减是一个很危险的操作,在操作过程中,需要注意每一步的提示信息是否正常。以防缩减导致的数据缺损和丢失的问题。强烈建议做磁盘缩减前,做一次数据完整备份,并且每一步操作在实验虚拟机上模拟一遍。

注意:xfs格式不支持缩减。


4、扩展卷组

  1. [root@server02~]#pvs
  2. PVVGFmtAttrPSizePFree
  3. /dev/sdb1vg1lvm2a--1020.00m920.00m
  4. /dev/sdb2vg1lvm2a--1020.00m1020.00m
  5. /dev/sdb3lvm2---1.00g1.00g
  6. [root@server02~]#vgextendvg1/dev/sdb3
  7. Volumegroup"vg1"successfullyextended
  8. [root@server02~]#lvresize-L100M/dev/vg1/lv1
  9. Newsize(25extents)matchesexistingsize(25extents).
  10. [root@server02~]#pvs
  11. PVVGFmtAttrPSizePFree
  12. /dev/sdb1vg1lvm2a--1020.00m920.00m
  13. /dev/sdb2vg1lvm2a--1020.00m1020.00m
  14. /dev/sdb3vg1lvm2a--1020.00m1020.00m

猜你在找的CentOS相关文章