主頁 > 知識庫 > 在Ubuntu系統(tǒng)上使用LVM調(diào)整硬盤分區(qū)的示例

在Ubuntu系統(tǒng)上使用LVM調(diào)整硬盤分區(qū)的示例

熱門標簽:銀川外呼系統(tǒng)一般多少錢 最近外呼系統(tǒng)被封號 ?? 長沙智能外呼電銷機器人供應(yīng)商 宣威地圖標注app 外呼系統(tǒng)架構(gòu)流程 直銷培訓電銷機器人哪家便宜 北京點撥外呼系統(tǒng)好用嗎 廣州400電話辦理推選易號網(wǎng)

LVM是Logical Volume Manager(邏輯卷管理器)的簡寫,又譯為邏輯卷宗管理器、邏輯扇區(qū)管理器、邏輯磁盤管理器。是Linux核心所提供的邏輯卷管理(Logical Volume Management)功能。它在硬盤的硬盤分區(qū)之上,又創(chuàng)建了一個邏輯層以方便系統(tǒng)管理硬盤分區(qū)系統(tǒng)。

最早由IBM開發(fā),在AIX系統(tǒng)上實現(xiàn),OS/2操作系統(tǒng)與HP-UX也支持這個功能;

在1998年,Heinz Mauelshagen根據(jù)HP-UX上的邏輯卷管理器,寫作出第一個Linux版本的邏輯卷管理器;并將其發(fā)布到Linux社區(qū)中,它允許用戶在Linux系統(tǒng)上用簡單的命令行管理一個完整的邏輯卷管理環(huán)境。

LVM的優(yōu)點:

它是建立在物理存儲設(shè)備之上的一個抽象層,允許用戶生成邏輯存儲卷,與直接使用物理存儲在管理上相比,提供了更好靈活性;

LVM將存儲虛擬化,使用邏輯卷,用戶不會受限于物理磁盤的大?。涣硗?,與硬件相關(guān)的存儲設(shè)置被器隱藏,用戶可以不用停止應(yīng)用或卸載文件系統(tǒng)來調(diào)整卷大小或數(shù)據(jù)遷移,可以減少操作成本。

LVM與直接使用物理存儲相比,有以下優(yōu)點:

1、  靈活的容量

當使用邏輯卷時,文件系統(tǒng)可以擴展到多個磁盤上,你可以聚合多個磁盤或磁盤分區(qū)成單一的邏輯卷.

2、  可伸縮的存儲池;

你可以使用簡單的命令來擴大或縮小邏輯卷大小,不用重新格式化或分區(qū)磁盤設(shè)備.

3、  在線的數(shù)據(jù)再分配

你可以在線移動數(shù)據(jù),數(shù)據(jù)可以在磁盤在線的情況下重新分配.比如,你可以在線更換可熱插拔的磁盤.

4、  方便的設(shè)備命名;

邏輯卷可以按你覺得方便的方式來起任何名稱.

5、  磁盤條塊化

你可以生成一個邏輯盤,它的數(shù)據(jù)可以被條塊化存儲在2個或更多的磁盤上.這樣可以明顯提升數(shù)據(jù)吞吐量.

6、  鏡像卷

邏輯卷提供方便的方法來鏡像你的數(shù)據(jù).

7、  卷快照

使用邏輯卷,你可以獲得設(shè)備快照用來一致性備份或者測試數(shù)據(jù)更新效果而不影響真實數(shù)據(jù).

2.版本:

LVM1 最初的LVM與1998年發(fā)布,只在Linux內(nèi)核2.4版本上可用,它提供最基本的邏輯卷管理。

LVM2 LVM-1的更新版本,在Linux內(nèi)核2.6中才可用,它在標準的LVM-1功能外還提供了額外的功能。

查看版本:

復(fù)制代碼
代碼如下:

[root@localhost ~]#uname -a

Linux localhost.localdomain2.6.32-504.el6.x86_64 #1 SMP Wed Oct 15 04:27:16 UTC 2014 x86_64 x86_64 x86_64GNU/Linux

復(fù)制代碼
代碼如下:

[root@localhost ~]#uname -r

2.6.32-504.el6.x86_64

復(fù)制代碼
代碼如下:

[root@localhost ~]#rpm -qa | grep lvm

mesa-private-llvm-3.4-3.el6.x86_64
lvm2-libs-2.02.111-2.el6.x86_64
lvm2-2.02.111-2.el6.x86_64

3.LVM基本術(shù)語:

物理存儲介質(zhì)(The Physical Media):

這里指系統(tǒng)的存儲設(shè)備,如:/dev/hda1、/dev/sda等等,是存儲系統(tǒng)最低層的存儲單元。

物理卷(PV,Physical Volume):

物理卷就是指磁盤,磁盤分區(qū)或從邏輯上與磁盤分區(qū)具有同樣功能的設(shè)備(如RAID),是LVM的基本存儲邏輯塊,但和基本的物理存儲介質(zhì)(如分區(qū)、磁盤等)比較,卻包含有與LVM相關(guān)的管理參數(shù)。當前LVM允許你在每個物理卷上保存這個物理卷的0至2份元數(shù)據(jù)拷貝。默認為1,保存在設(shè)備的開始處。為2時,在設(shè)備結(jié)束處保存第二份備份。

卷組(VG,Volume Group):

LVM卷組類似于非LVM系統(tǒng)中的物理硬盤,其由物理卷組成??梢栽诰斫M上創(chuàng)建一個或多個“LVM分區(qū)”(邏輯

卷),LVM卷組由一個或多個物理卷組成。

邏輯卷(LV,Logical Volume):

LVM的邏輯卷類似于非LVM系統(tǒng)中的硬盤分區(qū),在邏輯卷之上可以建立文件系統(tǒng)(比如/home或者/usr等)。

線性邏輯卷(Linear Volumes):

一個線性邏輯卷聚合多個物理卷成為一個邏輯卷.比如,如果你有兩個60GB硬盤,你可以生成120GB的邏輯卷.

條塊化的邏輯卷(Striped Logical Volumes)

當你寫數(shù)據(jù)到此邏輯卷中時,文件系統(tǒng)可以將數(shù)據(jù)放置到多個物理卷中.對于大量連接讀寫操作,它能改善數(shù)據(jù)I/O效率.

鏡像的邏輯卷(MirroredLogical Volumes)

鏡像在不同的設(shè)備上保存一致的數(shù)據(jù).數(shù)據(jù)同時被寫入原設(shè)備及鏡像設(shè)備.它提供設(shè)備之間的容錯。

快照卷(SnapshotVolumes)

快照卷提供在特定瞬間的一個設(shè)備虛擬映像,當快照開始時,它復(fù)制一份對當前數(shù)據(jù)區(qū)域的改變,由于它優(yōu)先執(zhí)行這些改變,所以它可以重構(gòu)當前設(shè)備的狀態(tài)。

PE(physical extent)

每一個物理卷被劃分為稱為PE(Physical Extents)的基本單元,具有唯一編號的PE是可以被LVM尋址的最小單元。PE的大小是可配置的,默認為4MB。

LE(logical extent)

邏輯卷也被劃分為被稱為LE(Logical Extents) 的可被尋址的基本單位。在同一個卷組中,LE的大小和PE是相同的,并且一一對應(yīng)。

和非LVM系統(tǒng)將包含分區(qū)信息的元數(shù)據(jù)保存在位于分區(qū)的起始位置的分區(qū)表中一樣,邏輯卷以及卷組相關(guān)的元數(shù)據(jù)也是保存在位于物理卷起始處的VGDA(卷組描述符區(qū)域)中。VGDA包括以下內(nèi)容: PV描述符、VG描述符、LV描述符、和一些PE描述符。系統(tǒng)啟動LVM時激活VG,并將VGDA加載至內(nèi)存,來識別LV的實際物理存儲位置。當系統(tǒng)進行I/O操作時,就會根據(jù)VGDA建立的映射機制來訪問實際的物理位置。

4.LVM模塊:

Physicalvolume (PV)、Volume group (VG)、Logicalvolume(LV)、 Physical extent (PE),下面我們用一個簡單

的圖來說明下物理卷、卷組、邏輯卷他們之間的關(guān)系:

邏輯卷的創(chuàng)建,就是將多塊硬盤創(chuàng)建物理卷,而將這些物理卷以邏輯的形式總成一個容器,然后從這個容器里面創(chuàng)建大小不同的分區(qū)文件,而這個容器就是所謂的卷組(VG),而從這個容器里創(chuàng)建大小不同的分區(qū)文件,這個分區(qū)文件就叫做邏輯卷。


LVM實現(xiàn)邏輯卷鏡像
LVM的鏡像功能,有點兒類似于Raid1,即多塊兒磁盤互相同步,確保資料不會丟失。

1、在此添加4塊物理硬盤,每塊2G空間

2、將sdb、sdc、sdd、sde 創(chuàng)建物理卷,將sdb、sdc、sdd 添加卷組到vmTest

復(fù)制代碼
代碼如下:

[root@node4 ~]# pvcreate /dev/sdb

  Physical volume "/dev/sdb" successfully created

復(fù)制代碼
代碼如下:

[root@node4 ~]# pvcreate /dev/sdc

  Physical volume "/dev/sdc" successfully created

復(fù)制代碼
代碼如下:

[root@node4 ~]# pvcreate /dev/sdd

  Physical volume "/dev/sdd" successfully created

復(fù)制代碼
代碼如下:

[root@node4 ~]# pvcreate /dev/sde

  Physical volume "/dev/sde" successfully created

復(fù)制代碼
代碼如下:

[root@node4 ~]# vgcreate vgTest /dev/sdb /dev/sdc /dev/sdd

  Volume group "vgTest" successfully created

復(fù)制代碼
代碼如下:

[root@node4 ~]#

3、創(chuàng)建邏輯卷

復(fù)制代碼
代碼如下:

[root@node4 ~]# lvcreate -L 1G -m1 -n lvTest vgTest /dev/sdb /dev/sdc /dev/sdd

  Logical volume "lvTest" created

查看lvs信息

復(fù)制代碼
代碼如下:

[root@node4 ~]# lvs -a -o +devices

  LV                VG      Attr      LSize  Pool Origin Data%  Move Log        Cpy%Sync Convert Devices                             
  lv_root          VolGroup -wi-ao----  8.54g                                                      /dev/sda2(0)                       
  lv_swap          VolGroup -wi-ao---- 992.00m                                                      /dev/sda2(2186)                     
  lvTest            vgTest  mwi-a-m---  1.00g                        lvTest_mlog  100.00        lvTest_mimage_0(0),lvTest_mimage_1(0)
  [lvTest_mimage_0] vgTest  iwi-aom---  1.00g                                                      /dev/sdb(0)                         
  [lvTest_mimage_1] vgTest  iwi-aom---  1.00g                                                      /dev/sdc(0)                         
  [lvTest_mlog]    vgTest  lwi-aom---  4.00m                                                      /dev/sdd(0)

LVM鏡像需要用到-m1參數(shù),從上面可以看出,/dev/sdb和/dev/sdc互為鏡像,而/dev/sdd作為日志存儲使用

4、格式化分區(qū),在邏輯卷上創(chuàng)建一個文件。對/dev/sdc進行破壞。

復(fù)制代碼
代碼如下:

[root@node4 ~]# mkfs.ext4 /dev/vgTest/lvTest

mke2fs 1.41.12 (17-May-2010)
文件系統(tǒng)標簽=
操作系統(tǒng):Linux
塊大小=4096 (log=2)
分塊大小=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
65536 inodes, 262144 blocks
13107 blocks (5.00%) reserved for the super user
第一個數(shù)據(jù)塊=0
Maximum filesystem blocks=268435456
8 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
        32768, 98304, 163840, 229376
 
正在寫入inode表: 完成                           
Creating journal (8192 blocks): 完成
Writing superblocks and filesystem accounting information: 完成
 
This filesystem will be automatically checked every 31 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.

復(fù)制代碼
代碼如下:

[root@node4 ~]# dd if=/dev/zero of=/dev/sdc count=10 bs=20M

記錄了10+0 的讀入
記錄了10+0 的寫出
209715200字節(jié)(210 MB)已復(fù)制,2.08666 秒,101 MB/秒

復(fù)制代碼
代碼如下:

[root@node4 ~]# lvs -a -o +devices

  Couldn't find device with uuid zecO8D-2Suc-rnmK-a2Z7-6613-Zy1X-whVS0X.
  LV                VG      Attr      LSize  Pool Origin Data%  Move Log        Cpy%Sync Convert Devices                             
  lv_root          VolGroup -wi-ao----  8.54g                                                      /dev/sda2(0)                       
  lv_swap          VolGroup -wi-ao---- 992.00m                                                      /dev/sda2(2186)                     
  lvTest            vgTest  mwi-a-m-p-  1.00g                        lvTest_mlog  100.00        lvTest_mimage_0(0),lvTest_mimage_1(0)
  [lvTest_mimage_0] vgTest  iwi-aom---  1.00g                                                      /dev/sdb(0)                         
  [lvTest_mimage_1] vgTest  iwi-aom-p-  1.00g                                                      unknown device(0)                   
  [lvTest_mlog]    vgTest  lwi-aom---  4.00m                                                      /dev/sdd(0) 

復(fù)制代碼
代碼如下:

[root@node4 ~]# lvscan

  Couldn't find device with uuid zecO8D-2Suc-rnmK-a2Z7-6613-Zy1X-whVS0X.
  ACTIVE            '/dev/vgTest/lvTest' [1.00 GiB] inherit
  ACTIVE            '/dev/VolGroup/lv_root' [8.54 GiB] inherit
  ACTIVE            '/dev/VolGroup/lv_swap' [992.00 MiB] inherit

復(fù)制代碼
代碼如下:

[root@node4 ~]#

重新掛載邏輯卷,確認文件可以正常讀取

復(fù)制代碼
代碼如下:

[root@node4 ~]# mkdir /lvmTest
[root@node4 ~]# mount /dev/vgTest/lvTest /lvmTest/
[root@node4 ~]# cd /lvmTest/
[root@node4 lvmTest]# ls

lost+found

復(fù)制代碼
代碼如下:

[root@node4 lvmTest]# echo "ac" > ac
[root@node4 lvmTest]# cat ac

ac

復(fù)制代碼
代碼如下:

[root@node4 lvmTest]#

將卷組中壞掉的物理卷(/dev/sdc)移除:

復(fù)制代碼
代碼如下:

[root@node4 lvmTest]# vgdisplay

  Couldn't find device with uuid zecO8D-2Suc-rnmK-a2Z7-6613-Zy1X-whVS0X.
  --- Volume group ---
  VG Name              vgTest
  System ID           
  Format                lvm2
  Metadata Areas        2
  Metadata Sequence No  3
  VG Access            read/write
  VG Status            resizable
  MAX LV                0
  Cur LV                1
  Open LV              1
  Max PV                0
  Cur PV                3
  Act PV                2
  VG Size              5.99 GiB
  PE Size              4.00 MiB
  Total PE              1533
  Alloc PE / Size      513 / 2.00 GiB
  Free  PE / Size      1020 / 3.98 GiB
  VG UUID              1qzO3A-Tjvi-by9l-Oq49-byz3-tIkx-rfSqex

復(fù)制代碼
代碼如下:

[root@node4 lvmTest]# vgreduce --removemissing --force vgTest

  Couldn't find device with uuid zecO8D-2Suc-rnmK-a2Z7-6613-Zy1X-whVS0X.
  Wrote out consistent volume group vgTest

復(fù)制代碼
代碼如下:

[root@node4 lvmTest]#

5、向卷組中加入新的物理卷(/dev/sde):

復(fù)制代碼
代碼如下:

[root@node4 lvmTest]# vgextend vgTest /dev/sde

  Volume group "vgTest" successfully extended

復(fù)制代碼
代碼如下:

[root@node4 lvmTest]#

6、進行數(shù)據(jù)恢復(fù)(過程中無須解除邏輯卷的掛載)

復(fù)制代碼
代碼如下:

[root@node4 lvmTest]# lvconvert -m1 /dev/vgTest/lvTest /dev/sdb /dev/sdd /dev/sde

  vgTest/lvTest: Converted: 0.0%
  vgTest/lvTest: Converted: 100.0%

復(fù)制代碼
代碼如下:

[root@node4 lvmTest]# lvs -a -o +devices

  LV                VG      Attr      LSize  Pool Origin Data%  Move Log        Cpy%Sync Convert Devices                             
  lv_root          VolGroup -wi-ao----  8.54g                                                      /dev/sda2(0)                       
  lv_swap          VolGroup -wi-ao---- 992.00m                                                      /dev/sda2(2186)                     
  lvTest            vgTest  mwi-aom---  1.00g                        lvTest_mlog  100.00        lvTest_mimage_0(0),lvTest_mimage_1(0)
  [lvTest_mimage_0] vgTest  iwi-aom---  1.00g                                                      /dev/sdb(0)                         
  [lvTest_mimage_1] vgTest  iwi-aom---  1.00g                                                      /dev/sdd(0)                         
  [lvTest_mlog]    vgTest  lwi-aom---  4.00m                                                      /dev/sde(0)

7、核實原數(shù)據(jù)

復(fù)制代碼
代碼如下:

[root@node4 lvmTest]# cat ac

ac

復(fù)制代碼
代碼如下:

[root@node4 lvmTest]# echo "abcde" >> ac
[root@node4 lvmTest]# cat ac

ac
abcde

復(fù)制代碼
代碼如下:

[root@node4 lvmTest]#/p> p>[root@node4 lvmTest]# lvdisplay

  --- Logical volume ---
  LV Path                /dev/vgTest/lvTest
  LV Name                lvTest
  VG Name                vgTest
  LV UUID                a8kDmI-R3ls-SfKJ-qx3d-1Tbb-wPAd-TJcQfn
  LV Write Access        read/write
  LV Creation host, time node4.lansgg.com, 2015-09-10 20:50:41 +0800
  LV Status              available
  # open                1
  LV Size                1.00 GiB
  Current LE            256
  Mirrored volumes      2
  Segments              1
  Allocation            inherit
  Read ahead sectors    auto
  - currently set to    256
  Block device          253:5

標簽:濟寧 濰坊 保山 梅州 揭陽 邵陽 呼和浩特 吐魯番

巨人網(wǎng)絡(luò)通訊聲明:本文標題《在Ubuntu系統(tǒng)上使用LVM調(diào)整硬盤分區(qū)的示例》,本文關(guān)鍵詞  在,Ubuntu,系統(tǒng),上,使用,LVM,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《在Ubuntu系統(tǒng)上使用LVM調(diào)整硬盤分區(qū)的示例》相關(guān)的同類信息!
  • 本頁收集關(guān)于在Ubuntu系統(tǒng)上使用LVM調(diào)整硬盤分區(qū)的示例的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章