成人69视频/性欧美网站/九色中文字幕/日本三a级

 

服務(wù)器系統(tǒng)集成及數(shù)據(jù)服務(wù)中心

 

一級欄目
一級欄目
一級欄目
一級欄目
一級欄目
一級欄目
一級欄目
一級欄目
袌(chng)(dng)B(ti)…………………………………………………………………………………………>>>

linux磁盤管理系列之LVM的使用1

linux磁盤管理系列三:LVM的使用

磁盤管理系列

linux磁盤管理系列一:磁盤配額管理   http://www.cnblogs.com/zhaojiedi1992/p/zhaojiedi_linux_040_quota.html

linux磁盤管理系列二:軟RAID的實(shí)現(xiàn)  http://www.cnblogs.com/zhaojiedi1992/p/zhaojiedi_linux_041_raid.html

linux磁盤管理系列三:LVM的使用        http://www.cnblogs.com/zhaojiedi1992/p/zhaojiedi_linux_042_lvm.html

LVM是什么

LVM是Linux操作系統(tǒng)的邏輯卷管理器。 現(xiàn)在有兩個(gè)Linux版本的LVM,分別是 LVM1,LVM2。LVM1是一種已經(jīng)被認(rèn)為穩(wěn)定了幾年的成熟產(chǎn)品,LVM2 是最新最好的LVM版本。 LVM2幾乎完全向后兼容使用LVM1創(chuàng)建的卷。此例外是快照(在升級到LVM 2之前,必須刪除快照卷)。

LVM簡介

邏輯卷管理提供了比傳統(tǒng)的磁盤和分區(qū)視圖更高級別的計(jì)算機(jī)系統(tǒng)上磁盤存儲的視圖。 這使得系統(tǒng)管理員可以更靈活地將存儲分配給應(yīng)用程序和用戶。

在邏輯卷管理器的控制下創(chuàng)建的存儲卷可以隨意調(diào)整大小和移動(dòng),盡管這可能需要對文件系統(tǒng)工具進(jìn)行一些升級。

邏輯卷管理器還允許管理用戶定義組中的存儲卷,允許系統(tǒng)管理員處理明顯命名的卷組(如“development”和“sales”),而不是物理磁盤名稱,例如“sda”和“sdb”

LVM基本術(shù)語

volume group (VG) 

卷組是LVM中使用的最高級別的抽象。 它將邏輯卷和物理卷集合在一起成為一個(gè)管理單元。

physical volume (PV)

一個(gè)物理卷通常是一個(gè)硬盤,雖然它可能只是一個(gè)看起來像一個(gè)硬盤(如軟件RAID設(shè)備)的設(shè)備。

logical volume (LV)

相當(dāng)于非LVM系統(tǒng)中的磁盤分區(qū)。 LV作為標(biāo)準(zhǔn)塊設(shè)備可見 因此LV可以包含文件系統(tǒng)(例如/ home)。

physical extent (PE) 

每個(gè)物理卷都被劃分為數(shù)據(jù)塊(稱為物理擴(kuò)展盤區(qū)),這些擴(kuò)展盤區(qū)與卷組的邏輯盤區(qū)具有相同的大小。

logical extent (LE)

每個(gè)邏輯卷都被分割成數(shù)據(jù)塊,稱為邏輯盤區(qū)。 卷組中的所有邏輯卷的區(qū)段大小都是相同的。

幾個(gè)概念的關(guān)系

一個(gè)具體的例子將有助于:

假設(shè)我們有一個(gè)名為VG1的卷組,這個(gè)卷組的物理盤區(qū)大小為4MB。 在這個(gè)卷組中,我們引入了2個(gè)硬盤分區(qū)/dev/hda1和/dev/hdb1。 
這些分區(qū)將成為物理卷PV1和PV2(管理員可以自行決定是否提供更有意義的名稱)。
PV被分成4MB塊,因?yàn)檫@是卷組的大小。磁盤大小不同,我們在PV1中獲得99個(gè)擴(kuò)展盤區(qū),在PV2中獲得248個(gè)擴(kuò)展盤區(qū)。 
我們現(xiàn)在可以創(chuàng)建自己的邏輯卷,它可以是1到347(248 + 99)范圍之間的任何大小。 
當(dāng)創(chuàng)建邏輯卷時(shí),在邏輯盤區(qū)和物理盤區(qū)之間定義映射,例如, 邏輯盤區(qū)1可以映射到PV1的物理盤區(qū)51上,寫入邏輯盤的第一個(gè)4MB的數(shù)據(jù)實(shí)際上被寫入到PV1的第51盤區(qū)。

映射模式

線性映射 : 將分配一定范圍的PE到LV的一個(gè)區(qū)域,例如LE 1 - 99映射到PV1,LE 100 - 347映射到PV2。

分條映射 : 將跨多個(gè)物理卷交織邏輯盤區(qū)的塊,這個(gè)方式一定程度上提高了性能,具體如下

  1st chunk of LE[1] -> PV1[1], #第一個(gè)邏輯塊在PV1設(shè)備上, 第二個(gè)在PV2設(shè)備上,等等。
  2nd chunk of LE[1] -> PV2[1],
  3rd chunk of LE[1] -> PV3[1],
  4th chunk of LE[1] -> PV1[2],

Snapshots(快照):

這是LVM提供的一個(gè)非常棒的功能就是快照了,他允許管理員創(chuàng)建一個(gè)新的塊設(shè)備來呈現(xiàn)一個(gè)邏輯卷的的精確副本,在某個(gè)時(shí)間凍結(jié),管理員可以及時(shí)備份指定一致狀態(tài)下的數(shù)據(jù),備份完畢就可以刪除設(shè)備了。

快照最初包含有關(guān)快照的一些元數(shù)據(jù),但沒有來自源邏輯卷的實(shí)際數(shù)據(jù)。快照使用寫時(shí)復(fù)制(copy on write)技術(shù)來檢測數(shù)據(jù)在原始數(shù)據(jù)塊中何時(shí)更改。它將拍攝快照時(shí)保存的值復(fù)制到快照卷中的塊中,然后允許將新數(shù)據(jù)存儲在源塊中。

隨著更多塊從源邏輯卷上的原始值發(fā)生更改,快照大小也會增加。如果快照卷變滿,它將被丟棄,所以分配足夠的空間是非常重要的,具體取決于你數(shù)據(jù)的變換情況,如果快照大小和原始數(shù)據(jù)一樣大,它將永遠(yuǎn)不會溢出的。

安裝LVM

[root@centos7 ~]$ rpm -q lvm2                           # 查看lvm2是否安裝了, 我使用的centos7,這是安裝的了    
lvm2-2.02.171-8.el7.x86_64    
[root@centos7 ~]$ # yum -y install lvm2                 # 沒有安裝的話使用yum安裝

常用命令簡介

復(fù)制代碼
[root@centos7 ~]$ pv                                                   # 使用tab按鍵獲取pv相關(guān)命令    
pvchange   pvck       pvcreate   pvdisplay  pvmove     pvremove   pvresize   pvs        pvscan    
[root@centos7 ~]$ vg                                                   # 使用tabl按鍵獲取vg相關(guān)的命令    
vgcfgbackup    vgck           vgdisplay      vgimport       vgmknodes      vgrename       vgsplit    
vgcfgrestore   vgconvert      vgexport       vgimportclone  vgreduce       vgs                
vgchange       vgcreate       vgextend       vgmerge        vgremove       vgscan             
[root@centos7 ~]$ lv                                                   # 使用tabl按鍵獲取lv先關(guān)的命令    
lvchange     lvdisplay    lvmconf      lvmdump      lvmsadc      lvremove     lvs              
lvconvert    lvextend     lvmconfig    lvmetad      lvmsar       lvrename     lvscan           
lvcreate     lvm          lvmdiskscan  lvmpolld     lvreduce     lvresize   
復(fù)制代碼

上面的命令比較多,簡單介紹幾個(gè)常用的命令。

  • pv打頭的:代表pv相關(guān)的命令
  • vg帶頭的:代表vg相關(guān)的命令
  • lv帶頭的: 代表lv相關(guān)的命令
  • create:創(chuàng)建相關(guān)
  • remove:移除相關(guān)
  • display:顯示相關(guān)
  • import:導(dǎo)入 相關(guān)
  • export:導(dǎo)出相關(guān)
  • rename:重命名
  • vgchange:改變狀態(tài)相關(guān)
  • extend:擴(kuò)展相關(guān)
  • reduce:縮進(jìn)相關(guān)

使用LVM

pv創(chuàng)建

pv作用:初始化磁盤和磁盤分區(qū)

在將磁盤或者磁盤分區(qū)用作物理卷(PV)之前,你需要對其進(jìn)行初始化工作。

[root@centos7 ~]$ pvcreate /dev/sdb1

注意:

  1. 不建議對整個(gè)磁盤做PV初始化工作。因?yàn)槠渌僮飨到y(tǒng)不能識別LVM元數(shù)據(jù),導(dǎo)致我們認(rèn)為磁盤是空閑的,重新設(shè)置分區(qū)覆蓋原有數(shù)據(jù)
  2.  如果是分區(qū)需要調(diào)整分區(qū)的類型為LVM(代碼為8e)

分區(qū)并設(shè)置分區(qū)類型

復(fù)制代碼
[root@centos7 ~]$ fdisk -l    

Disk /dev/sda: 214.7 GB, 214748364800 bytes, 419430400 sectors    
Units = sectors of 1 * 512 = 512 bytes    
Sector size (logical/physical): 512 bytes / 512 bytes    
I/O size (minimum/optimal): 512 bytes / 512 bytes    
Disk label type: dos    
Disk identifier: 0x000b0b8a    

   Device Boot      Start         End      Blocks   Id  System    
/dev/sda1   *        2048     2099199     1048576   83  Linux    
/dev/sda2         2099200   270534655   134217728   83  Linux    
/dev/sda3       270534656   372934655    51200000   83  Linux    
/dev/sda4       372934656   419430399    23247872    5  Extended    
/dev/sda5       372938752   413898751    20480000   83  Linux    

Disk /dev/sdb: 107.4 GB, 107374182400 bytes, 209715200 sectors    
Units = sectors of 1 * 512 = 512 bytes    
Sector size (logical/physical): 512 bytes / 512 bytes    
I/O size (minimum/optimal): 512 bytes / 512 bytes    
Disk label type: dos    
Disk identifier: 0x93d380cf    

   Device Boot      Start         End      Blocks   Id  System    
/dev/sdb1            2048     2099199     1048576   8e  Linux LVM    
/dev/sdb2         2099200     4196351     1048576   8e  Linux LVM    

Disk /dev/sde: 21.5 GB, 21474836480 bytes, 41943040 sectors    
Units = sectors of 1 * 512 = 512 bytes    
Sector size (logical/physical): 512 bytes / 512 bytes    
I/O size (minimum/optimal): 512 bytes / 512 bytes    
Disk label type: dos    
Disk identifier: 0x73afb36f    

   Device Boot      Start         End      Blocks   Id  System    
/dev/sde1            2048     2099199     1048576   8e  Linux LVM    
/dev/sde2         2099200     6293503     2097152   8e  Linux LVM    

Disk /dev/sdd: 21.5 GB, 21474836480 bytes, 41943040 sectors    
Units = sectors of 1 * 512 = 512 bytes    
Sector size (logical/physical): 512 bytes / 512 bytes    
I/O size (minimum/optimal): 512 bytes / 512 bytes    
Disk label type: dos    
Disk identifier: 0x7e0900d8    

   Device Boot      Start         End      Blocks   Id  System    
/dev/sdd1            2048     2099199     1048576   8e  Linux LVM    
/dev/sdd2         2099200    12584959     5242880   8e  Linux LVM    

Disk /dev/sdc: 21.5 GB, 21474836480 bytes, 41943040 sectors    
Units = sectors of 1 * 512 = 512 bytes    
Sector size (logical/physical): 512 bytes / 512 bytes    
I/O size (minimum/optimal): 512 bytes / 512 bytes    
Disk label type: dos    
Disk identifier: 0xc56b90d8    

   Device Boot      Start         End      Blocks   Id  System    
/dev/sdc1            2048     2099199     1048576   8e  Linux LVM    
/dev/sdc2         2099200     4196351     1048576   8e  Linux LVM    

Disk /dev/sdf: 21.5 GB, 21474836480 bytes, 41943040 sectors    
Units = sectors of 1 * 512 = 512 bytes    
Sector size (logical/physical): 512 bytes / 512 bytes    
I/O size (minimum/optimal): 512 bytes / 512 bytes    

[root@centos7 ~]$ partprobe     
Warning: Unable to open /dev/sr0 read-write (Read-only file system).  /dev/sr0 has been opened read-only.    
[root@centos7 ~]$ lsblk    
NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT    
sda      8:0    0  200G  0 disk     
├─sda1   8:1    0    1G  0 part /boot    
├─sda2   8:2    0  128G  0 part     
├─sda3   8:3    0 48.8G  0 part /    
├─sda4   8:4    0  512B  0 part     
└─sda5   8:5    0 19.5G  0 part /app    
sdb      8:16   0  100G  0 disk     
├─sdb1   8:17   0    1G  0 part     
└─sdb2   8:18   0    1G  0 part     
sdc      8:32   0   20G  0 disk     
├─sdc1   8:33   0    1G  0 part     
└─sdc2   8:34   0    1G  0 part     
sdd      8:48   0   20G  0 disk     
├─sdd1   8:49   0    1G  0 part     
└─sdd2   8:50   0    5G  0 part     
sde      8:64   0   20G  0 disk     
├─sde1   8:65   0    1G  0 part     
└─sde2   8:66   0    2G  0 part     
sdf      8:80   0   20G  0 disk     
sr0     11:0    1  8.1G  0 rom  /run/media/root/CentOS 7 x86_64
復(fù)制代碼

上面我們在/dev/sd{b,c,d,e}這4個(gè)盤每個(gè)都有2個(gè)類型為lvm的盤。接下來使用pvcreat初始化為物理卷

復(fù)制代碼
[root@centos7 ~]$ pvcreate /dev/sd{b1,b2,c1,c2,d1,d2,e1,e2} -y        # 這里加入了-y選項(xiàng),之前的盤有文件系統(tǒng)的。 我這里強(qiáng)制創(chuàng)建了    
  Wiping xfs_external_log signature on /dev/sdb2.    
  Wiping xfs_external_log signature on /dev/sdb2.    
  Wiping xfs_external_log signature on /dev/sdb2.    
  Wiping xfs_external_log signature on /dev/sdb2.    
  Wiping xfs_external_log signature on /dev/sdb2.    
  Wiping xfs_external_log signature on /dev/sdb2.    
  Wiping xfs_external_log signature on /dev/sdb2.    
  Wiping xfs_external_log signature on /dev/sdb2.    
  Physical volume "/dev/sdb1" successfully created.    
  Physical volume "/dev/sdb2" successfully created.    
  Physical volume "/dev/sdc1" successfully created.    
  Physical volume "/dev/sdc2" successfully created.    
  Physical volume "/dev/sdd1" successfully created.    
  Physical volume "/dev/sdd2" successfully created.    
  Physical volume "/dev/sde1" successfully created.    
  Physical volume "/dev/sde2" successfully created.
復(fù)制代碼

pv信息查看

復(fù)制代碼
[root@centos7 ~]$ pvs                                           # 詳細(xì)信息可以使用pvdisplay查看    
  PV         VG         Fmt  Attr PSize    PFree       
  /dev/sdb1  vg_test_01 lvm2 a  1020.00m 1020.00m    
  /dev/sdb2             lvm2 -     1.00g    1.00g    
  /dev/sdc1  vg_test_01 lvm2 a  1020.00m 1020.00m    
  /dev/sdc2             lvm2 -     1.00g    1.00g    
  /dev/sdd1  vg_test_01 lvm2 a  1020.00m 1020.00m    
  /dev/sdd2             lvm2 -     5.00g    5.00g    
  /dev/sde1  vg_test_01 lvm2 a  1020.00m 1020.00m    
  /dev/sde2             lvm2 -     2.00g    2.00g
復(fù)制代碼

vg創(chuàng)建

vg的創(chuàng)建是比較簡單的。

[root@centos7 ~]$ vgcreate  vg_test_01 /dev/sd{b1,c1,d1,e1}    # 上面我們創(chuàng)建了8個(gè)pv,這里我們使用4個(gè)1的設(shè)備去創(chuàng)建vg,創(chuàng)建后默認(rèn)vg是激活狀態(tài)的    
  Volume group "vg_test_01" successfully created

vg信息的查看

復(fù)制代碼
[root@centos7 ~]$ vgs                                 # 查看簡短的信息    
  VG         #PV #LV #SN Attr   VSize VFree    
  vg_test_01   4   0   0 wzn- 3.98g 3.98g    
[root@centos7 ~]$ vgdisplay                           # 查看詳細(xì)的信息    
  - Volume group -    
  VG Name               vg_test_01                    # vg的名字    
  System ID                 
  Format                lvm2                          # lvm格式, 這里是lvm2的    
  Metadata Areas        4    
  Metadata Sequence No  1    
  VG Access             read/write    
  VG Status             resizable    
  MAX LV                0    
  Cur LV                0    
  Open LV               0    
  Max PV                0    
  Cur PV                4    
  Act PV                4    
  VG Size               3.98 GiB                       # 這是我們4個(gè)pv的總大小    
  PE Size               4.00 MiB                       # pe的大小    
  Total PE              1020    
  Alloc PE / Size       0 / 0                          # 分配的大小,這里我們還沒有創(chuàng)建lv,所以為0    
  Free  PE / Size       1020 / 3.98 GiB                # 分配后剩余的空間,第一個(gè)數(shù)是剩余的個(gè)數(shù),第二個(gè)數(shù)是剩余的空間大小,2個(gè)都是剩余的只是單位表示不一樣而已    
  VG UUID               Y5NjjP-e3Aq-3u6E-gw6P-fLyy-Y5pN-ryyN9R  # vg設(shè)備的uuid
復(fù)制代碼

vg的激活

[root@centos7 ~]$ vgchange -a y vg_test_01                               # 我們上面就是激活狀態(tài)的,如果我們重啟系統(tǒng),或者vgchange -y n命令關(guān)閉了,就需要這個(gè)命令啟動(dòng)下    
  0 logical volume(s) in volume group "vg_test_01" now active

vg的移除

[root@centos7 ~]$ vgchange -a n vg_test_01                       # 要想移除vg,需要先關(guān)閉vg才能移除,這里先關(guān)閉    
  0 logical volume(s) in volume group "vg_test_01" now active    
[root@centos7 ~]$ vgremove  vg_test_01                           # 移除vg,

vg的添加成員

[root@centos7 ~]$ vgcreate  vg_test_01 /dev/sd{b1,c1,d1,e1}       # 上面我把vg刪了,這里重新添加進(jìn)來    
  Volume group "vg_test_01" successfully created    
[root@centos7 ~]$ vgextend vg_test_01  /dev/sdb2                  # 添加一個(gè)pv2到vg中來    
  Volume group "vg_test_01" successfully extended

vg的刪除成員

這個(gè)操作需要使用vgdisplay查看vg的使用情況和刪除的pv上沒有數(shù)據(jù)。如果有使用pvmove遷移完畢數(shù)據(jù)才能移除。

[root@centos7 ~]$ vgreduce  vg_test_01  /dev/sdb2    
  Removed "/dev/sdb2" from volume group "vg_test_01"

lv的創(chuàng)建

復(fù)制代碼
[root@centos7 ~]$ vgdisplay                        # lv邏輯卷創(chuàng)建之前, 需要查看下vg信息    
  - Volume group -    
  VG Name               vg_test_01    
  System ID                 
  Format                lvm2    
  Metadata Areas        4    
  Metadata Sequence No  3    
  VG Access             read/write    
  VG Status             resizable    
  MAX LV                0    
  Cur LV                0    
  Open LV               0    
  Max PV                0    
  Cur PV                4    
  Act PV                4    
  VG Size               3.98 GiB    
  PE Size               4.00 MiB    
  Total PE              1020    
  Alloc PE / Size       0 / 0       
  Free  PE / Size       1020 / 3.98 GiB    
  VG UUID               sZwHea-LabA-SJaV-Wz40-qFp3-Um2w-pvmJAY    
       
[root@centos7 ~]$ lvcreate -L 2G  -n lv_test_01 vg_test_01                 # 我們的vg是近4G的,我這里創(chuàng)建一個(gè)2G的lv,之前磁盤使用了文件系統(tǒng)慈愛有如下警告。輸入y即可。    
WARNING: linux_raid_member signature detected on /dev/vg_test_01/lv_test_01 at offset 4096. Wipe it? [y/n]: y    
  Wiping linux_raid_member signature on /dev/vg_test_01/lv_test_01.    
WARNING: ext4 signature detected on /dev/vg_test_01/lv_test_01 at offset 1080. Wipe it? [y/n]: y    
  Wiping ext4 signature on /dev/vg_test_01/lv_test_01.    
  Logical volume "lv_test_01" created.
復(fù)制代碼

lv的移除

[root@centos7 ~]$ lvremove  /dev/vg_test_01/lv_test_01     
# 這個(gè)移除我們上面創(chuàng)建lv_test_01這個(gè)邏輯卷, 下面提示這個(gè)是活動(dòng)的邏輯卷,輸入y就可以了 Do you really want to remove active logical volume vg_test_01
/lv_test_01? [y/n]: y Logical volume "lv_test_01" successfully removed

注意: 如果這個(gè)lv被掛載了。 請先umount

掛載文件系統(tǒng)

復(fù)制代碼
[root@centos7 ~]$ lvcreate -L 2G  -n lv_test_01 vg_test_01                             # 上面我們刪除了lv,這里需要?jiǎng)?chuàng)建出來    
  Logical volume "lv_test_01" created.    
[root@centos7 ~]$ mkfs.ext4  /dev/vg_test_01/lv_test_01                                  # 這里我使用ext4 文件系統(tǒng)了。centos7默認(rèn)使用的文件系統(tǒng)是xfs,但是xfs不支持縮減的    
    
[root@centos7 ~]$ mkdir /mnt/test_01                                                    # 創(chuàng)建掛載點(diǎn)目錄    
[root@centos7 ~]$ mount /dev/vg_test_01/lv_test_01  /mnt/test_01/                       # 掛載邏輯卷
復(fù)制代碼
發(fā)布時(shí)間:2019/10/28 閱讀:8408次 來源:互聯(lián)網(wǎng)
 


 
袌(chng)(dng)B(ti)分類
   
  行業(yè)新聞
 
  公司動(dòng)態(tài)
 
  技術(shù)資料
 
  電腦維修
 
  恢復(fù)案例
 
  SQL數(shù)據(jù)庫
 
  磁盤陣列
 
  服務(wù)器
 
  財(cái)務(wù)軟件
 
  網(wǎng)絡(luò)問題
 
  linux-XFS
 
  辦公文件
 
  操作系統(tǒng)
 
  日常生活(煙臺)
 
  網(wǎng)站相關(guān)
 
   
 
友情鏈接
 
 
 
 
 
   
公司地址:煙臺電腦市場A310
電話:15336380195 E-Mail:sd_lzc@sina.com
Copyright©2011-2012 煙臺知昭電子 All Rights Reserved.
魯ICP備11014811號-1
您是本站第 位訪問者