首頁 > 軟體

使用LVM拓展Linux邏輯卷大小

2020-06-16 17:09:53

操作步驟簡述:
1.檢視磁碟資訊

2.給硬碟/dev/sdc新增分割區/dev/sdc1

2.1.fdisk /dev/sdc

m 檢視幫助

n 新增新分割區

t 修改分割區型別為:8e  Linux LVM

p 檢視分割區

w 寫入分割區表並退出

q 不儲存分割區表並退出

 


3.擴充套件邏輯卷/dev/mapper/vg_RedHat-lv_root的大小

3.1進入LVM管理器

3.2將物理卷新增到現有卷組(也可直接將分割區新增到現有卷組)

3.3檢視所有邏輯卷

3.4擴充套件邏輯卷大小

 

實際操作過程:

[root@TEST ~]# df -hl

Filesystem                Size  Used Avail Use% Mounted on

/dev/mapper/vg_redhat-lv_root  45G  36G  6.7G  85% /

tmpfs                  7.8G  3.8G  4.1G  48% /dev/shm

/dev/sda1            485M  39M  421M  9% /boot

 


[root@TEST ~]# fdisk -l

Disk /dev/sda: 53.7 GB, 53687091200 bytes

64 heads, 32 sectors/track, 51200 cylinders

Units = cylinders of 2048 * 512 = 1048576 bytes

Sector size (logical/physical): 512 bytes / 512 bytes

I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk identifier: 0x000af440

 


  Device Boot      Start        End      Blocks  Id  System
/dev/sda1  *          2        501      512000  83  Linux
Partition 1 does not end on cylinder boundary.
/dev/sda2            502      51200    51915776  8e  Linux LVM
Partition 2 does not end on cylinder boundary.

 


Disk /dev/sdb: 17.2 GB, 17179869184 bytes

64 heads, 32 sectors/track, 16384 cylinders

Units = cylinders of 2048 * 512 = 1048576 bytes

Sector size (logical/physical): 512 bytes / 512 bytes

I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk identifier: 0x00000000

 

 

 

Disk /dev/sdc: 42.9 GB, 42949672960 bytes

64 heads, 32 sectors/track, 40960 cylinders

Units = cylinders of 2048 * 512 = 1048576 bytes

Sector size (logical/physical): 512 bytes / 512 bytes

I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk identifier: 0x00000000

 

 

 

Disk /dev/mapper/vg_redhat-lv_root: 49.0 GB, 48997859328 bytes

255 heads, 63 sectors/track, 5956 cylinders

Units = cylinders of 16065 * 512 = 8225280 bytes

Sector size (logical/physical): 512 bytes / 512 bytes

I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk identifier: 0x00000000

 

 

 

Disk /dev/mapper/vg_redhat-lv_swap: 4160 MB, 4160749568 bytes

255 heads, 63 sectors/track, 505 cylinders

Units = cylinders of 16065 * 512 = 8225280 bytes

Sector size (logical/physical): 512 bytes / 512 bytes

I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk identifier: 0x00000000

 

[root@TEST ~]# fdisk /dev/sdc

Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel

Building a new DOS disklabel with disk identifier 0x93ae6d58.

Changes will remain in memory only, until you decide to write them.

After that, of course, the previous content won't be recoverable.

 


Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)

 


WARNING: DOS-compatible mode is deprecated. It's strongly recommended to

        switch off the mode (command 'c') and change display units to

        sectors (command 'u').

 


Command (m for help): n

Command action

  e  extended

  p  primary partition (1-4)

p

Partition number (1-4): 1

First cylinder (1-40960, default 1):

Using default value 1

Last cylinder, +cylinders or +size{K,M,G} (1-40960, default 40960): +40G

Value out of range.

Last cylinder, +cylinders or +size{K,M,G} (1-40960, default 40960): +39G

 


Command (m for help): t

Selected partition 1

Hex code (type L to list codes): L

 


 0  Empty          24  NEC DOS        81  Minix / old Lin bf  Solaris       

 1  FAT12          39  Plan 9          82  Linux swap / So c1  DRDOS/sec (FAT-

 2  XENIX root      3c  PartitionMagic  83  Linux          c4  DRDOS/sec (FAT-

 3  XENIX usr      40  Venix 80286    84  OS/2 hidden C:  c6  DRDOS/sec (FAT-

 4  FAT16 <32M      41  PPC PReP Boot  85  Linux extended  c7  Syrinx         

 5  Extended        42  SFS            86  NTFS volume set da  Non-FS data   

 6  FAT16          4d  QNX4.x          87  NTFS volume set db  CP/M / CTOS / .

 7  HPFS/NTFS      4e  QNX4.x 2nd part 88  Linux plaintext de  Dell Utility   

 8  AIX            4f  QNX4.x 3rd part 8e  Linux LVM      df  BootIt         

 9  AIX bootable    50  OnTrack DM      93  Amoeba          e1  DOS access     

 a  OS/2 Boot Manag 51  OnTrack DM6 Aux 94  Amoeba BBT      e3  DOS R/O       

 b  W95 FAT32      52  CP/M            9f  BSD/OS          e4  SpeedStor     

 c  W95 FAT32 (LBA) 53  OnTrack DM6 Aux a0  IBM Thinkpad hi eb  BeOS fs       

 e  W95 FAT16 (LBA) 54  OnTrackDM6      a5  FreeBSD        ee  GPT           

 f  W95 Ext'd (LBA) 55  EZ-Drive        a6  OpenBSD        ef  EFI (FAT-12/16/

10  OPUS            56  Golden Bow      a7  NeXTSTEP        f0  Linux/PA-RISC b

11  Hidden FAT12    5c  Priam Edisk    a8  Darwin UFS      f1  SpeedStor     

12  Compaq diagnost 61  SpeedStor      a9  NetBSD          f4  SpeedStor     

14  Hidden FAT16 <3 63  GNU HURD or Sys ab  Darwin boot    f2  DOS secondary 

16  Hidden FAT16    64  Novell Netware  af  HFS / HFS+      fb  VMware VMFS   

17  Hidden HPFS/NTF 65  Novell Netware  b7  BSDI fs        fc  VMware VMKCORE

18  AST SmartSleep  70  DiskSecure Mult b8  BSDI swap      fd  Linux raid auto

1b  Hidden W95 FAT3 75  PC/IX          bb  Boot Wizard hid fe  LANstep       

1c  Hidden W95 FAT3 80  Old Minix      be  Solaris boot    ff  BBT           

1e  Hidden W95 FAT1

Hex code (type L to list codes): 8e

Changed system type of partition 1 to 8e (Linux LVM)

 


Command (m for help): p

 


Disk /dev/sdc: 42.9 GB, 42949672960 bytes

64 heads, 32 sectors/track, 40960 cylinders

Units = cylinders of 2048 * 512 = 1048576 bytes

Sector size (logical/physical): 512 bytes / 512 bytes

I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk identifier: 0x93ae6d58

 


  Device Boot      Start        End      Blocks  Id  System

/dev/sdc1              1      39937    40895472  8e  Linux LVM

 


Command (m for help): w

The partition table has been altered!

 


Calling ioctl() to re-read partition table.

Syncing disks.

 


[root@TEST ~]# fdisk -l

 


Disk /dev/sda: 53.7 GB, 53687091200 bytes

64 heads, 32 sectors/track, 51200 cylinders

Units = cylinders of 2048 * 512 = 1048576 bytes

Sector size (logical/physical): 512 bytes / 512 bytes

I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk identifier: 0x000af440

 


  Device Boot      Start        End      Blocks  Id  System

/dev/sda1  *          2        501      512000  83  Linux

Partition 1 does not end on cylinder boundary.

/dev/sda2            502      51200    51915776  8e  Linux LVM

Partition 2 does not end on cylinder boundary.

 


Disk /dev/sdb: 17.2 GB, 17179869184 bytes

64 heads, 32 sectors/track, 16384 cylinders

Units = cylinders of 2048 * 512 = 1048576 bytes

Sector size (logical/physical): 512 bytes / 512 bytes

I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk identifier: 0x00000000

 

 

 

Disk /dev/sdc: 42.9 GB, 42949672960 bytes

64 heads, 32 sectors/track, 40960 cylinders

Units = cylinders of 2048 * 512 = 1048576 bytes

Sector size (logical/physical): 512 bytes / 512 bytes

I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk identifier: 0x93ae6d58

 


  Device Boot      Start        End      Blocks  Id  System

/dev/sdc1              1      39937    40895472  8e  Linux LVM

 


Disk /dev/mapper/vg_redhat-lv_root: 49.0 GB, 48997859328 bytes

255 heads, 63 sectors/track, 5956 cylinders

Units = cylinders of 16065 * 512 = 8225280 bytes

Sector size (logical/physical): 512 bytes / 512 bytes

I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk identifier: 0x00000000

 

 

 

Disk /dev/mapper/vg_redhat-lv_swap: 4160 MB, 4160749568 bytes

255 heads, 63 sectors/track, 505 cylinders

Units = cylinders of 16065 * 512 = 8225280 bytes

Sector size (logical/physical): 512 bytes / 512 bytes

I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk identifier: 0x00000000

 

 

 

 


[root@TEST ~]# lvm

lvm> pvcreate /dev/sdc1

  Physical volume "/dev/sdc1" successfully created

lvm> pvremove /dev/sdc1

  Labels on physical volume "/dev/sdc1" successfully wiped

lvm> vgextend vg_redhat /dev/sdc1    【不知道vg名字可以在root下執行vgdisplay檢視】

  No physical volume label read from /dev/sdc1

  Physical volume /dev/sdc1 not found

  Physical volume "/dev/sdc1" successfully created

  Volume group "vg_redhat" successfully extended

lvm> lvextend -L +39G /dev/mapper/vg_redhat-lv_root

  Extending logical volume lv_root to 84.63 GiB

  Insufficient free space: 9984 extents needed, but only 9983 available

lvm> lvextend -L +38.99G /dev/mapper/vg_redhat-lv_root

 


  Rounding size to boundary between physical extents: 38.99 GiB

  Extending logical volume lv_root to 84.62 GiB

  Logical volume lv_root successfully resized

lvm> pvdisplay

  --- Physical volume ---

  PV Name              /dev/sda2

  VG Name              vg_redhat

  PV Size              49.51 GiB / not usable 3.00 MiB

  Allocatable          yes (but full)

  PE Size              4.00 MiB

  Total PE              12674

  Free PE              0

  Allocated PE          12674

  PV UUID              ILOutm-u1Gf-chRB-rhn4-RGVg-hcEb-mN02Fm

 


  --- Physical volume ---

  PV Name              /dev/sdc1

  VG Name              vg_redhat

  PV Size              39.00 GiB / not usable 4.98 MiB

  Allocatable          yes

  PE Size              4.00 MiB

  Total PE              9983

  Free PE              9983

  Allocated PE          0

  PV UUID              nrqQ7M-PCVI-cDAy-ufew-WYYv-8HPF-dRyraa

 


lvm> quit

  Exiting.

 

[root@TEST ~]# resize2fs /dev/mapper/vg_redhat-lv_root

resize2fs 1.41.12 (17-May-2010)

Filesystem at /dev/mapper/vg_redhat-lv_root is mounted on /; on-line resizing required

old desc_blocks = 3, new_desc_blocks = 6

Performing an on-line resize of /dev/mapper/vg_redhat-lv_root to 22183936 (4k) blocks.

The filesystem on /dev/mapper/vg_redhat-lv_root is now 22183936 blocks long.


這時,可以手工計算一下多了多少空間。
現在的大小為22183936 blocks,即22183936*4*1024bytes,拓展之前大小可以在fdisk -l命令下看到,為48997859328 bytes,由此可以計算增加的大小為:
(22183936*4*1024-48997859328)/1024^3=38.99G

本文永久更新連結地址http://www.linuxidc.com/Linux/2017-07/145986.htm


IT145.com E-mail:sddin#qq.com