溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

lvm如何使用

發(fā)布時間:2021-11-17 10:52:29 來源:億速云 閱讀:202 作者:小新 欄目:云計算

這篇文章主要為大家展示了“l(fā)vm如何使用”,內(nèi)容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“l(fā)vm如何使用”這篇文章吧。

lvm的使用

lvm是很有用的,在一個生產(chǎn)系統(tǒng)中,如果空間不夠用,在沒有用lvm之前,要想擴容是很不方便的
要找一個想擴大到你想要容量的存儲,然后要把原有數(shù)據(jù)導(dǎo)入到新的設(shè)備中,對原有設(shè)備也是一種
浪費,有了lvm就不一樣了,我可以在不改變原有系統(tǒng)的條件下,直接對對系統(tǒng)怎加存儲空間

下面是我146的硬盤的分區(qū)情況,我這個服務(wù)器計劃用戶oracle數(shù)據(jù)庫

一些空間變化不大的分區(qū)我還是采用ext3格式,但一些0空間變化很大的分區(qū),我采用了lvm
這樣對于以后的擴展做充分的準備

[root@dbolap ~]# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/sda1             981M  202M  730M  22% /
none                 1004M     0 1004M   0% /dev/shm
/dev/sda8             2.0G   36M  1.8G   2% /tmp
/dev/sda6             3.9G  2.0G  1.8G  53% /usr
/dev/sda7             2.0G  115M  1.8G   7% /var
/dev/mapper/vg_home-lv_home
                      9.6G   54M  9.1G   1% /home
/dev/mapper/vg_u01-lv_u01
                      110G   92M  105G   1% /u01
[root@dbolap ~]#


一.lvm的使用步驟:

1).建立LVM類型的分區(qū)  (8e) 
2).建立LVM物理巻PV 
3).建立LVM巻組VG 
4).建立LVM邏輯巻LV 
5).建立文件系統(tǒng) 
6).掛接文件系統(tǒng) 
7).使用文件系統(tǒng)


二.lvm開機自動掛載

fstab文件的作用 :

文件/etc/fstab存放的是系統(tǒng)中的文件系統(tǒng)信息。當正確的設(shè)置了該文件,則可以通過"mount /directoryname"命
令來加載一個文件系統(tǒng),每種文件系統(tǒng)都對應(yīng)一個獨立的行,每行中的字段都有空格或tab鍵分開。同時fsck、mount
、umount的等命令都利用該程序。

lvm開機自動mount,可以修改/etc/fstab 文件,然后重新啟動機器即可

eg:
                 
[root@dbolap ~]# vi /etc/fstab

# This file is edited by fstab-sync - see 'man fstab-sync' for details
LABEL=/                 /                       ext3    defaults        1 1
none                    /dev/pts                devpts  gid=5,mode=620  0 0
none                    /dev/shm                tmpfs   defaults        0 0
none                    /proc                   proc    defaults        0 0
none                    /sys                    sysfs   defaults        0 0
LABEL=/tmp              /tmp                    ext3    defaults        1 2
LABEL=/usr              /usr                    ext3    defaults        1 2
LABEL=/var              /var                    ext3    defaults        1 2
LABEL=SWAP-sda5         swap                    swap    defaults        0 0
/dev/vg_home/lv_home    /home                   ext3    defaults        1 0
/dev/vg_u01/lv_u01      /u01                    ext3    defaults        1 0
/dev/hda                /media/cdrom            auto    pamconsole,fscontext=system_u:object_r:removable_t,exec,noauto,managed 0 0
/dev/scd0               /media/cdrecorder       auto    pamconsole,fscontext=system_u:object_r:removable_t,exec,noauto,managed 0 0
~
~
下面簡單介紹下fstab文件的格式說明:

下面是/etc/fatab文件的一個示例行:

fs_spec fs_file fs_type fs_options fs_dump fs_pass 
/dev/hda1 / ext2 defaults 1 1

fs_spec - 該字段定義希望加載的文件系統(tǒng)所在的設(shè)備或遠程文件系統(tǒng),對于一般的本地塊設(shè)備情況來說:
IDE設(shè)備一般描述為/dev/hdaXN,X是IDE設(shè)備通道(a, b, or c),N代表分區(qū)號;SCSI設(shè)備一描述為/dev/
sdaXN。對于NFS情況,格式一般為:

,例如:`knuth.aeb.nl:/'。對于procfs,使用`proc'來定義。

fs_file - 該字段描述希望的文件系統(tǒng)加載的目錄點,對于swap設(shè)備,該字段為none;對于加載目錄名包
含空格的情況,用40來表示空格。

fs_type - 定義了該設(shè)備上的文件系統(tǒng),一般常見的文件類型為ext2 (Linux設(shè)備的常用文件類型)、vfat
(Windows系統(tǒng)的fat32格式)、NTFS、iso9600等。

codepage國家語言代碼頁

iocharset字符集

fs_options - 指定加載該設(shè)備的文件系統(tǒng)是需要使用的特定參數(shù)選項,多個參數(shù)是由逗號分隔開來。對于
大多數(shù)系統(tǒng)使用"defaults"就可以滿足需要。其他常見的選項包括: 
選項 含義 
ro 以只讀模式加載該文件系統(tǒng) 
sync 不對該設(shè)備的寫操作進行緩沖處理,這可以防止在非正常關(guān)機時情況下破壞文件系統(tǒng),但是卻降低了計算機速度 
user 允許普通用戶加載該文件系統(tǒng) 
quota 強制在該文件系統(tǒng)上進行磁盤定額限制 
noauto 不再使用mount -a命令(例如系統(tǒng)啟動時)加載該文件系統(tǒng)

fs_dump - 該選項被"dump"命令使用來檢查一個文件系統(tǒng)應(yīng)該以多快頻率進行轉(zhuǎn)儲,若不需要轉(zhuǎn)儲就設(shè)置該字段為0

fs_pass - 該字段被fsck命令用來決定在啟動時需要被掃描的文件系統(tǒng)的順序,根文件系統(tǒng)"/"對應(yīng)該字段的值應(yīng)該為1,
其他文件系統(tǒng)應(yīng)該為2。若該文件系統(tǒng)無需在啟動時掃描則設(shè)置該字段為0

三.lvm的lv在線擴容方法

通常我們操作pvextend之后,必須執(zhí)行resize的相關(guān)命令才可以。通常安全起見,都是offline下,也就是umount之后才做的。
但是有時候我們是不可以讓某些生產(chǎn)系統(tǒng)offline的。所以必須保證online的前提下來extend相應(yīng)的LV。

以下就是在Online情況下,對于以下的文件系統(tǒng)類型所應(yīng)執(zhí)行的命令。


1:ext3
ext2online  /dev/foovg/lvbar

2:reiserfs
resize_reiserfs   /dev/foovg/lvbar

3:xfs
xfs_growfs /dev/foovg/lvbar

4:jfs
mount -o remount,resize /dev/foovg/lvbar
嚴格來說,jfs這個不能算作online操作。如果恰好這個mounting的分區(qū)正存在IO操作,恐怕這樣執(zhí)行會出問題。所以這個保留,稍后我再查找一下。


四.lvm常用命令

LVM創(chuàng)建和使用收藏
A、概念:
1).PV(Physical Volume):物理巻,處于LVM最底層,可以是物理硬盤或者分區(qū)。


2).VG(Volume Group):巻組,建立在PV之上,可以含有一個到多個PV。 
3).LV(Logical Volume):邏輯巻,建立在PV之上,相當于原來分區(qū)的概念。不過大小可動態(tài)改變。 
4).PE(Physical Extend):物理區(qū)域,PV中可以用于分配的最小存儲單位,可以在建立PV時指定,如1,2,4,8... ...64M,同一VG中的所有PV的PE應(yīng)該相同。 
5).LE(Logical Extend):邏輯區(qū)域,LV中可以用于分配的最小存儲單元,取決于LV所在PV中PE的大小,是PE的整數(shù)倍。 
6).VGDA(Volume Group Descriptor Area):巻組描述區(qū)域,存在于每個PV中,用于描述該PV本身、PV所含VG、VG中的LV以及LV中的物理區(qū)域分配等信息,在使用pvcreate命令建立PV時建立。  
B、步驟:
1).建立LVM類型的分區(qū) 
2).建立LVM物理巻PV 
3).建立LVM巻組VG 
4).建立LVM邏輯巻LV 
5).建立文件系統(tǒng) 
6).掛接文件系統(tǒng) 
7).使用文件系統(tǒng)
 
C、命令
1).PV(物理巻)相關(guān)
<1>pvdisplay:顯示PV屬性
<2>pvscan:在系統(tǒng)所有硬盤上查找PV 
<3>pvcreate:創(chuàng)建PV(在PV上初始化VGDA)
  例如:為/dev/hda1創(chuàng)建了PV
  [root@mylinux]# pvcreate /dev/hda1
 
<4>pvdata:顯示某個PV的詳細信息
  例如:
  [root@mylinux]# pvdata /dev/hda1 
<5>pvchange:改變PV屬性 
<6>pvmove:在PV間移動PE/LE 
2).VG相關(guān)
<1>vgdisplay:顯示VG巻組屬性 
<2>vgscan:查找系統(tǒng)現(xiàn)有VG巻組 
<3>vgcreate:創(chuàng)建VG巻組(在VG上初始化VGDA)
  例如:創(chuàng)建包含物理巻hda1和hdb1的邏輯巻組demoVG1
  [root@mylinux]# vgcreate demoVG1 /dev/hda1 /dev/hdb1 
<4>vgdata:顯示VG巻組上的VGDA信息 
<5>vgchange:改變VG巻組屬性
  此命令有兩個常用的參數(shù):
  -a:,--available{y|n}:在操作VG時,控制一個VG的可使用性,換句話說控制一個VG能否被系統(tǒng)內(nèi)核識別。 
  -x,--allocation{y|n}:控制一個VG能否被擴充或者縮減(控制一個VG內(nèi)的PV能否被分配)。 
<6>vgmove:在VG巻組間移動PE/LE 
<7>vgextend:用于向VG中添加新的PV
  例如:[root@mylinux]# vgextend demoVG1 /dev/hdd1 
<8>vgreduce:用于從VG中刪除PV
  例如:[root@mylinux]# vgreduce demoVG1 /dev/hdd1 
<9>vgmerge:用于合并巻組。待合并的VG必須處于非活動狀態(tài)。
  例如:將demoVG21和 demoVG2合并到demoVG1中并顯示結(jié)果:
  [root@mylinux]# vgmerge demoVG1 demoVG2
  vgmerge --ERROR:volume group "demoVG2" must be inactive 
  [root@mylinux]# vgchange -a n demoVG2
  vgchange --volume group "demoVG2" successfully deactivated 
  [root@mylinux]# vgmerge demoVG1 demoVG2
   vgmerge --doing automatic backup of volume group "demoVG1"
   vgmerge --volume group "demoVG2" successfully merged into "demoVG1"

<10>vgsplit:用于拆分已經(jīng)存在的VG,VG必須處于活動狀態(tài)。
  例如:
  [root@mylinux]# vgchange -a y demoVG2
  [root@mylinux]# vgsplit demoVG2 demoVG4 /dev/hdd2 /dev/hdd5 /dev/hdd6 /dev/hdd7 
<11>vgremove:用于刪除VG,要求待刪除的VG必須處于非激活狀態(tài)。
  例如:
  [root@mylinux]# vgchange -a n demoVG1
  [root@mylinux]# vgremove demoVG1 
<12>vgrename:用于重命名VG,不要求VG處于非激活狀態(tài)。
  例如:
  [root@mylinux]# vgrename demoVG2 demoVG3 
<13>vgck:用于檢測VG中VGDA的一致性。 
<14>vgcfgbackup:備份系統(tǒng)所有VG中各物理巻的VGDA信息到/etc/lvmconf
  [root@mylinux]# vgcfgbackup 
<15>vgcfgrestore:用于從/etc/lvmconf恢復(fù)系統(tǒng)所有VG中各物理巻的VGDA信息。VG必須處于非激活狀態(tài)。 
<16>vgmknodes:用于vgcfgrestore后,重建節(jié)點信息,重建已有巻組的巻組目錄和其中的設(shè)備文件。
  例如:
  [root@mylinux]# vgchange -a n demoVG3
  [root@mylinux]# vgmknodes   
<17>vgexport:用于輸出巻組。待輸出巻組必須為非激活狀態(tài)。巻組中的物理巻需要被轉(zhuǎn)移到其它系統(tǒng)中使用時,就需要使用這個命令。
  例如:
  [root@mylinux]# vgchange -a n demoVG3
  [root@mylinux]# vgexport demoVG3
<18>vgimport:用于輸入巻組。
  例如:
  [root@mylinux]# vgimport demoVG1 /dev/hdd1 
3).LV相關(guān)
<1>lvdisplay:顯示LV的屬性 <2>lvscan:查找系統(tǒng)現(xiàn)有LV 
<3>lvcreate:創(chuàng)建LV 
<4>lvdata:顯示LV上的LVDA信息 
<5>lvchange:改變LV屬性
  例如:
  [root@mylinux]# lvchange -a n /dev/demoVG1/demoLV11 
<6>lvmove:在LV間移動PE/LE 
<7>lvextend:擴展LV容量。LVM的最突出特點就是隨時動態(tài)的調(diào)整LV空間大小。
  例如:
  [root@mylinux]# lvscan|grep LV11
  lvscan --ACTIVE  "/dev/demoVG1/demoLV11" [200MB]
  [root@mylinux]# lvextend -L +10m /dev/demoVG1/demoLV11 (為demoLV11增加10MB的空間) 
<8>lvreduce:減小LV容量。
  例如:
  [root@mylinux]# lvextend -L -10m /dev/demoVG1/demoLV11 (為demoLV11減少10MB的空間) 
<9>lvrename:LV重命名
  例如:
  [root@mylinux]# lvrename /dev/demoVG1/demoLV11 /dev/demoVG1/demoLV01 
<10>lvremove:刪除LV(邏輯巻)
  例如:
  [root@mylinux]# lvremove /dev/demoVG1/demoLV01  <11>resize2fs/e2fsadm/resize_reiserfs:類似于extend命令。 
4).創(chuàng)建文件系統(tǒng)
<1>使用命令mkfs在demoLV31上創(chuàng)建ext3類型的分區(qū):
  [root@mylinux]# mkfs -t ext3 /dev/demoVG3/demoLV31
 
<2>使用命令mkfs.ext3在demoLV31上創(chuàng)建ext3分區(qū):
  [root@mylinux]# mkfs.ext3 /dev/demoVG3/demoLV31  
<3>使用命令mkreiserfs在demoLV31上創(chuàng)建reiserfs分區(qū):
  [root@mylinux]# mkreiserfs /dev/demoVG3/demoLV31  
<4>使用命令mkjfs在在demoLV31上創(chuàng)建jfs分區(qū):
  [root@mylinux]# mkfs.jfs /dev/demoVG3/demoLV31  
5).掛接文件系統(tǒng)
先建立四個目錄:
 [root@mylinux]# mkdir /mnt/mnt_lv11 /mnt/mnt_lv12 /mnt/mnt_jfs /mnt/mnt_reiserfs
掛接命令:
<1>mkfs掛接:
 [root@mylinux]# mount -t ext3 /dev/demoVG3/demoLV31 /mnt/mnt_lv11 
<2>mkfs.ext3掛接:
 [root@mylinux]# mount /dev/demoVG3/demoLV31 /mnt/mnt_lv12 
<3>mkjfs掛接:
 [root@mylinux]# mount -t jfs /dev/demoVG3/demoLV31 /mnt/mnt_jfs 
<4>mkreiserfs掛接:
 [root@mylinux]# mount -t reiserfs /dev/demoVG3/demoLV31 /mnt/mnt_reiserfs 
6).使用
 ***略*** 
7).LVM相關(guān)命令
<1>lvmdiskscan:檢測硬盤和分區(qū)中的邏輯巻管理信息
<2>lvmsadc:收集邏輯巻的讀寫統(tǒng)計信息
<3>lvmsar:查看LVM的日志文件信息
<4>lvmchange:復(fù)位LVM組件

以上是“l(fā)vm如何使用”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

lvm
AI