不卡AV在线|网页在线观看无码高清|亚洲国产亚洲国产|国产伦精品一区二区三区免费视频

學(xué)習(xí)啦>學(xué)習(xí)電腦>操作系統(tǒng)>Linux教程>

Linux怎么創(chuàng)建LVM

時(shí)間: 春健736 分享

  LVM是Linux下對磁盤分區(qū)管理的一種機(jī)制,相信不少人想要知道Linux如何創(chuàng)建LVM的方法,因此學(xué)習(xí)啦小編將針對LVM的創(chuàng)建和使用做個(gè)詳細(xì)介紹,一起來學(xué)習(xí)下吧。

  Linux怎么創(chuàng)建LVM

  PV: 實(shí)體分割區(qū)(Partition)/dev/had...

  VG: 虛擬硬盤 /dev/vg_name

  LV: 虛擬分割區(qū) /dev/vg_name/lv_name

  LVM創(chuàng)建過程:

  如有三個(gè)硬盤hda2(3G)/hdb2(3G)/hdc2(3G)/hdd2(3G)+hda1(100M boot分區(qū))

  1、創(chuàng)建分區(qū):

  fdisk /dev/hda(..hdb..hdc..hdd) -----p---n--t--8e---p--w--- reboot

  (分出hda2/hdb2/hdc2/hdd2各3G的分區(qū),分區(qū)格式為8e(lvm分區(qū))

  2、創(chuàng)建物理卷(PV):

  pvcreate [-v] /dev/hda2 /dev/hdb2 /dev/hdc2 /dev/hdd2

  ***創(chuàng)建物理卷(PV)之前可以通過pvscan 查看是否有物理卷及其信息,如pvscan查看到現(xiàn)有PV(如/dev/hdb1、/dev/hdc1)屬于VG (如VG0),則可以通過

  pvdisplay /dev/hdb1查看現(xiàn)有LVM的情況。

  ****-v顯示創(chuàng)建的全部過程,可以省略

  3、創(chuàng)建卷組(VG):

  vgcreate [-v] [-s 8M]vg01 /dev/hda2 /dev/hdb2 /dev/hdc2 /dev/hdd2

  ***創(chuàng)建卷組((VG)之前可以通過vgdisplay查看現(xiàn)有卷組信息;

  *** -s 創(chuàng)建的VG的PE大小(如8M),默認(rèn)省略不寫為4M,必須是4的整數(shù)倍;

  ***VG創(chuàng)建好后,自動就Active起來,若沒有自動Active則可以通過 vgchange -a y vg01激活 VG;也可以通過vgchange -a n vg01 關(guān)閉Actice 的VG為Deactive;

  ***只有對Deactive 的VG才能進(jìn)行更改、刪除;VG的重命名不需要Deactive,如 vgrename old_vg_name new_vg_name;

  ***vgremove 刪除現(xiàn)有VG :vgremove vg_name;必須是Deactive VG.

  ***若在創(chuàng)建了LVM后發(fā)現(xiàn)硬盤空間不夠,則可以創(chuàng)建一個(gè)LVM分區(qū),通過pvcreate激活此分區(qū),再通過vgextend加入到現(xiàn)有VG中以擴(kuò)充空間。

  pvcreate /dev/hde2 ; vgextend -v vg01 /dev/hde2 將hde2加入到現(xiàn)有vg01中以擴(kuò)充空間。

  ***若要刪除VG中的PV,必須先確認(rèn)此PV沒有被VG所使用:如/dev/hdd2,先查看pvdisplay /dev/hdd2 中的PV Status,若為Not Availiable則可以刪除;

  vgreduce -v vg01 /dev/hdd2

  4、創(chuàng)建邏輯卷(LVM):

  命令lvcreate的常用方法:

  lvcreate [options] -n 邏輯卷名 卷組名

  其中的常用可選項(xiàng)有:

  "-i Stripes :采用交錯(striped)方式創(chuàng)建LV,其中Stripes指卷組中PV的數(shù)量。

  "-I Stripe_size :采用交錯方式時(shí)采用的塊大小(單位為KB),Stripe_size必須為2的指數(shù):2N ,N=2,3...9。

  "-l LEs :指定LV的邏輯塊數(shù)。

  "-L size :指定LV的大小,其后可以用K、M、G表示KB、MB、GB。

  "-s :創(chuàng)建一已存在LV的snapshot卷。

  "-n name :為LV指定名稱。

  創(chuàng)建普通LV:

  lvcreate -L 5G -n lv01 vg01 創(chuàng)建一個(gè)名為lv01的5G 虛擬分區(qū)在虛擬硬盤vg01上 /dev/vg01/lv01

  lvcreate -i 4 -I 8 -L 4G -n lv02 vg01 [-i 是VG中組成PV的分區(qū)個(gè)數(shù),-I 塊大小,-L LV的大小]

  創(chuàng)建快照LV:

  lvcreate -s -i 4 -I 16 -L 2G -n lv03_snapshot vg01

  5、創(chuàng)建文件系統(tǒng):

  mke2fs -j /dev/vg01/lv01 (mkfs.ext3 /dev/vg01/lv02; mkfs.ext3 /dev/vg01/lv_snapshot)

  6、掛載:

  mkdir /mnt/lv01 ;

  mount -t ext3 /dev/vg01/lv01 /mnt/lv01;

  7、增、減LV大?。?/p>

  umount /lv01;

  e2fsadm -L+100M(-100M) /dev/vg01/lv01

  ****

  總結(jié)

  1) fdisk /dev/hd?--8e (/dev/hda2;/dev/hdb2;/dev/hdc2/;dev/hdd2)

  2) pvcreate /dev/hda2 /dev/hdb2 /dev/hdc2

  3)vgcreate vg01 /dev/hd2 /dev/hdb2 /dev/hdc2

  4)lvcreate [-s] [-i pv_pation_count] [-I n*2k] -L 分區(qū)大小 [-n lv_name] vg01

  5)mke2fs [-j] /vg01/lv_name

  6) mkdir /mnt/mnt_point; mount -t ext3 /dev/vg01/lv_name /mnt/mnt_point;

  增加硬盤已擴(kuò)充分區(qū)容量:

  1) pvcreate /dev/hdd2;

  2) vgextend vg01 /dev/hdd2;

  3)lvextend -L+100M /dev/vg01/lv_name; (在線擴(kuò)充分區(qū)大小) lvreduce -L -100M /dev/vg01/lv_name (在線擴(kuò)充分區(qū)大小)

  若VG中有容量未分配可以通過以下方法增加(或減少)分區(qū)容量:

  1) umount /mnt/mnt_point;

  2) e2fsadm -L+100M /dev/vg01/lv_name

  **以上擴(kuò)充必須是LV中最后一個(gè)LV(如/dev/vg01/lv01;/dev/vg01/lv02; /dev/vg01/lv03)

  只能正常、正確擴(kuò)充最后一個(gè)LV :lv03;若擴(kuò)充lv01、lv02可能會有問題發(fā)生。

  創(chuàng)建實(shí)例:

  磁盤-》分區(qū)-》ID修改8e-》保存。

  我用來一個(gè)磁盤通過分區(qū)來做的。還可以每個(gè)磁盤分一個(gè)區(qū)來做。

  Device Boot Start End Blocks Id System

  /dev/sdb1 1 1306 10490413+ 8e Linux LVM

  /dev/sdb2 1307 2612 10490445 8e Linux LVM

  /dev/sdb3 2613 3918 10490445 8e Linux LVM

  3)創(chuàng)建物理卷:通過pvcreate命令。

  pvcreate /dev/sdb1

  pvcreate /dev/sdb2

  pvcreate /dev/sdb3

  [root@station106 ~]# pvs(查看創(chuàng)建的物理卷)。

  PV VG Fmt Attr PSize PFree

  /dev/sda2 vg0 lvm2 a-- 59.99g 7.99g

  /dev/sdb1 lvm2 a-- 10.00g 10.00g

  /dev/sdb2 lvm2 a-- 10.00g 10.00g

  /dev/sdb3 lvm2 a-- 10.00g 10.00g

  pvdisplay 查看更加詳細(xì)的內(nèi)容。

  [root@station106 ~]# pvdisplay

  --- Physical volume ---

  PV Name /dev/sdb1

  VG Name myvg

  PV Size 10.00 GiB / not usable 4.54 MiB

  Allocatable yes

  PE Size 4.00 MiB

  Total PE 2560

  Free PE 2560

  Allocated PE 0

  PV UUID XP8QfA-WQDd-1v9p-QKxk-AztZ-Nr9e-QbN6Gu

  --- Physical volume ---

  PV Name /dev/sdb2

  VG Name myvg

  PV Size 10.00 GiB / not usable 4.58 MiB

  Allocatable yes

  PE Size 4.00 MiB

  Total PE 2560

  Free PE 2560

  Allocated PE 0

  PV UUID f8Dtdd-fV9e-1yB7-1B8P-21mU-CU2f-fQDAxe

  --- Physical volume ---

  PV Name /dev/sdb3

  VG Name myvg

  PV Size 10.00 GiB / not usable 4.58 MiB

  Allocatable yes

  PE Size 4.00 MiB

  Total PE 2560

  Free PE 2560

  Allocated PE 0

  PV UUID rKNL0x-WXq2-gHYD-T27r-Gf05-a4y3-f4zqzt

  4)創(chuàng)建邏輯卷:通過vgcreate。

  [root@station106 ~]# vgcreate myvg /dev/sdb{1,2,3}

  Volume group “myvg” successfully created

  [root@station106 ~]# vgs

  VG #PV #LV #SN Attr VSize VFree

  myvg 3 0 0 wz--n- 30.00g 30.00g

  5)創(chuàng)建邏輯卷,lvcreate。

  [root@station106 ~]# lvcreate -L 10G -n test myvg

  Logical volume “test” created

  -L:空間大小。

  -n:邏輯卷名稱。

  [root@station106 ~]# lvdisplay /dev/myvg/test

  --- Logical volume ---

  LV Path /dev/myvg/test

  LV Name test

  VG Name myvg

  LV UUID wY1YUF-f0o6-jzu1-mtTL-64p0-qvfC-3QfF8y

  LV Write Access read/write

  LV Creation host, time station106.magelinux.com, 2014-02-10 11:18:43 +0800

  LV Status available

  # open 0

  LV Size 10.00 GiB

  Current LE 2560

  Segments 1

  Allocation inherit

  Read ahead sectors auto

  - currently set to 256

  Block device 253:4

  6)掛載使用創(chuàng)建好的邏輯卷。

  mke2fs -t ext4 /dev/myvg/test 格式化。

  mount /dev/myvg/test /mnt/掛載使用。

  7)假如有一天邏輯卷不夠用了。怎么從卷組擴(kuò)展呢?如下分析。

  邏輯卷擴(kuò)展的大致步驟:

  1,先確定擴(kuò)展的大小,并確保所屬的卷組有足夠的剩余空間。

  我現(xiàn)在要擴(kuò)展5G,本身是10G的大小。命令如下:

  [root@station106 ~]# lvextend -L +5G /dev/myvg/test

  Extending logical volume test to 15.00 GiB

  Logical volume test successfully resized

  2,擴(kuò)展物理邊界。物理邊界指的是本身的物理邊緣大小。

  [root@station106 ~]# lvdisplay /dev/myvg/test

  --- Logical volume ---

  LV Path /dev/myvg/test

  LV Name test

  VG Name myvg

  LV UUID wY1YUF-f0o6-jzu1-mtTL-64p0-qvfC-3QfF8y

  LV Write Access read/write

  LV Creation host, time station106.magelinux.com, 2014-02-10 11:18:43 +0800

  LV Status available

  # open 1

  LV Size 15.00 GiB

  Current LE 3840

  Segments 2

  Allocation inherit

  Read ahead sectors auto

  - currently set to 256

  Block device 253:4

  當(dāng)擴(kuò)展完物理邊界后你會發(fā)現(xiàn),掛載中的邏輯卷還是本身的大小。

  [root@station106 ~]# df -hT

  Filesystem Type Size Used Avail Use% Mounted on

  /dev/mapper/vg0-root

  ext4 20G 387M 19G 3% /

  tmpfs tmpfs 242M 0 242M 0% /dev/shm

  /dev/sda1 ext4 194M 29M 156M 16% /boot

  /dev/mapper/vg0-usr

  ext4 9.9G 1.9G 7.6G 20% /usr

  /dev/mapper/vg0-var

  ext4 20G 288M 19G 2% /var

  /dev/mapper/myvg-test

  ext4 9.9G 151M 9.2G 2% /mnt

  擴(kuò)展邏輯邊界,邏輯邊界指的是掛載后,在使用中的邏輯卷也直接識別了。

  [root@station106 ~]# resize2fs /dev/myvg/test

  resize2fs 1.41.12 (17-May-2010)

  Filesystem at /dev/myvg/test is mounted on /mnt; on-line resizing required

  old desc_blocks = 1, new_desc_blocks = 1

  Performing an on-line resize of /dev/myvg/test to 3932160 (4k) blocks.

  The filesystem on /dev/myvg/test is now 3932160 blocks long.

  [root@station106 ~]# df -hT

  Filesystem Type Size Used Avail Use% Mounted on

  /dev/mapper/vg0-root

  ext4 20G 387M 19G 3% /

  tmpfs tmpfs 242M 0 242M 0% /dev/shm

  /dev/sda1 ext4 194M 29M 156M 16% /boot

  /dev/mapper/vg0-usr

  ext4 9.9G 1.9G 7.6G 20% /usr

  /dev/mapper/vg0-var

  ext4 20G 288M 19G 2% /var

  /dev/mapper/myvg-test

  ext4 15G 153M 14G 2% /mnt

  上述就是擴(kuò)展邏輯卷部分。

  實(shí)例演示:縮小邏輯卷。首先為了測試我去原先掛載的錄下創(chuàng)建一些文件,測試一下縮小后會不會導(dǎo)致文件消失。

  縮小邏輯卷的步驟如下:

  1)先卸載之前的掛載,并執(zhí)行強(qiáng)制檢測。

  [root@station106 ~]# umount /mnt/

  [root@station106 ~]# e2fsck -f /dev/myvg/test

  e2fsck 1.41.12 (17-May-2010)

  Pass 1: Checking inodes, blocks, and sizes

  Pass 2: Checking directory structure

  Pass 3: Checking directory connectivity

  Pass 4: Checking reference counts

  Pass 5: Checking group summary information

  /dev/myvg/test: 13/983040 files (0.0% non-contiguous), 100864/3932160 blocks

  2)縮減邏輯邊界。

  [root@station106 ~]# resize2fs /dev/myvg/test 10G

  resize2fs 1.41.12 (17-May-2010)

  Resizing the filesystem on /dev/myvg/test to 2621440 (4k) blocks.

  The filesystem on /dev/myvg/test is now 2621440 blocks long.

  3)縮減物理邊界。

  [root@station106 ~]# lvreduce -L 10G /dev/myvg/test

  WARNING: Reducing active logical volume to 10.00 GiB

  THIS MAY DESTROY YOUR DATA (filesystem etc.)

  Do you really want to reduce test? [y/n]: y

  Reducing logical volume test to 10.00 GiB

  Logical volume test successfully resized

  縮減后查看:

  [root@station106 ~]# lvdisplay /dev/myvg/test

  --- Logical volume ---

  LV Path /dev/myvg/test

  LV Name test

  VG Name myvg

  LV UUID wY1YUF-f0o6-jzu1-mtTL-64p0-qvfC-3QfF8y

  LV Write Access read/write

  LV Creation host, time station106.magelinux.com, 2014-02-10 11:18:43 +0800

  LV Status available

  # open 0

  LV Size 10.00 GiB-》這里又變成了10G。

  Current LE 2560

  Segments 1

  Allocation inherit

  Read ahead sectors auto

  - currently set to 256

  Block device 253:4

  掛載繼續(xù)使用并且查看文件是否存在。

  [root@station106 ~]# mount /dev/myvg/test /mnt/

  [root@station106 ~]# cd /mnt/

  [root@station106 mnt]# ls

  accp benet lost+found--》查看還是存在。未丟失。

  [root@station106 mnt]# df -hT

  Filesystem Type Size Used Avail Use% Mounted on

  /dev/mapper/vg0-root

  ext4 20G 387M 19G 3% /

  tmpfs tmpfs 242M 0 242M 0% /dev/shm

  /dev/sda1 ext4 194M 29M 156M 16% /boot

  /dev/mapper/vg0-usr

  ext4 9.9G 1.9G 7.6G 20% /usr

  /dev/mapper/vg0-var

  ext4 20G 288M 19G 2% /var

  /dev/mapper/myvg-test

  ext4 9.9G 151M 9.2G 2% /mnt

  假設(shè)VG卷組有一天,被邏輯卷用完了,怎么繼續(xù)擴(kuò)展卷組?

  1)創(chuàng)建一個(gè)物理卷。

  [root@station106 mnt]# pvcreate /dev/sdb5

  Physical volume “/dev/sdb5” successfully created

  2)把新的物理機(jī)加入到卷組中。

  [root@station106 mnt]# vgextend myvg /dev/sdb5

  Volume group “myvg” successfully extended

  查看增加到的卷組。

  [root@station106 mnt]# vgextend myvg /dev/sdb5

  Volume group “myvg” successfully extended

  [root@station106 mnt]# vgdisplay myvg

  --- Volume group ---

  VG Name myvg

  System ID

  Format lvm2

  Metadata Areas 4

  Metadata Sequence No 5

  VG Access read/write

  VG Status resizable

  MAX LV 0

  Cur LV 1

  Open LV 1

  Max PV 0

  Cur PV 4

  Act PV 4

  VG Size 40.00 GiB--》從30G到40G了。

  PE Size 4.00 MiB

  Total PE 10240

  Alloc PE / Size 2560 / 10.00 GiB

  Free PE / Size 7680 / 30.00 GiB

  VG UUID KyFWJg-BU15-KrOA-uef4-Cckf-eoTz-oM38nu

  有擴(kuò)展卷組,就必須有縮減??s減過程如下。

  [root@station106 mnt]# vgreduce myvg /dev/sdb5

  Removed “/dev/sdb5” from volume group “myvg”

  [root@station106 mnt]# vgdisplay myvg

  --- Volume group ---

  VG Name myvg

  System ID

  Format lvm2

  Metadata Areas 3

  Metadata Sequence No 6

  VG Access read/write

  VG Status resizable

  MAX LV 0

  Cur LV 1

  Open LV 1

  Max PV 0

  Cur PV 3

  Act PV 3

  VG Size 30.00 GiB

  PE Size 4.00 MiB

  Total PE 7680

  Alloc PE / Size 2560 / 10.00 GiB

  Free PE / Size 5120 / 20.00 GiB

  VG UUID KyFWJg-BU15-KrOA-uef4

  -Cckf-eoTz-oM38nu

  LVM做快照。

  快照是一種邏輯卷,通常為只讀。通俗化說:“快照大小決定于備份的大小”

  作用,能保持快照之前的操作,如后續(xù)操作有了影響,可以恢復(fù)之前的一些操作,也相當(dāng)于快照之前做了備份,創(chuàng)建快照后,后續(xù)的操作隊(duì)快照之前的無任何影響。

  [root@station106 mnt]# lvcreate -s -L 50M -n snap -p r /dev/myvg/test

  Rounding up size to full physical extent 52.00 Mi

  創(chuàng)建的快照名稱snap。

  -L 設(shè)置大小。

  -p:permission,設(shè)置生成快照的讀寫權(quán)限,默認(rèn)為RW;r為只讀。

  -s:指定lvcreate生成的是一個(gè)快照。

  -n:指定快照名稱

  掛載快照:下面是備份的內(nèi)容。

  mount /dev/myvg/snap /me

  [root@station106 me]# ls

  accp benet lost+found

  然后備份處快照中文件即可,備份后及時(shí)刪除快照。

  [root@station106 ~]# lvremove /dev/myvg/snap

  Do you really want to remove active logical volume snap? [y/n]: y

  Logical volume “snap” successfully removed

  上面就是LVM的創(chuàng)建和使用的介紹了,本文通過幾個(gè)實(shí)例詳細(xì)介紹了LVM的創(chuàng)建,包括邏輯卷的創(chuàng)建、掛載和擴(kuò)展,希望對你有所幫助。

647905