1 概述
本文對配額衬潦,RAID,LVM的概念和具體創(chuàng)建過程做了介紹
2 配額
2.1 配額概念
在內(nèi)核中執(zhí)行
以文件系統(tǒng)為單位啟用
對不同組或者用戶的策略不同
根據(jù)塊或者節(jié)點進(jìn)行限制
執(zhí)行軟限制(soft limit)
硬限制(hard limit)
實現(xiàn)控制用戶使用磁盤空間,防止某個用戶無限制使用磁盤空間,對系統(tǒng)造成損害
配額要對磁盤獨立分區(qū)進(jìn)行控制赏酥,而且只能針對文件系統(tǒng)來進(jìn)行配額低淡,不能對文件夾進(jìn)行控制,文件系統(tǒng)掛載選項要具備quota功能,在fstab里添加usrquota,grpquota
2.2 搬移目錄數(shù)據(jù)到獨立分區(qū)
假設(shè)原來家目錄/home和根目錄在同一磁盤上皂吮,當(dāng)用戶在自己家目錄下無限使用空間,可能會導(dǎo)致磁盤空間不夠需纳,對系統(tǒng)造成嚴(yán)重的損害不翩,因此麻裳,遷移舊磁盤/home的數(shù)據(jù)到獨立的磁盤上,步驟如下
1新建一個磁盤/dev/sdb1,格式化后分區(qū)掛載到系統(tǒng)上疆瑰,如掛載點/mnt/home
2數(shù)據(jù)遷移完成了孵睬,發(fā)通知告訴所有用戶說明我們什么時間要維護(hù)系統(tǒng),如取消舊目錄/home掛載雇初,系統(tǒng)暫時不能使用
3切換到單用戶模式下進(jìn)行操作init 1,確保所有用戶不再對/home繼續(xù)數(shù)據(jù)寫入减响。
4遷移數(shù)據(jù)cp-a/home/* /mnt/home注意。這里我們明確home下都是用戶的家目錄支示,沒有隱藏文件颂鸿,所以我們就用/home/*形式進(jìn)行拷貝
5建議提前做備份嘴纺,如果確認(rèn)數(shù)據(jù)遷移都完成,第4步操作完成后位衩,數(shù)據(jù)都在磁盤/dev/sdb1下了
清空舊目錄數(shù)據(jù)rm-rf/home/*
6.卸載掉/dev/sdb1在原來的掛載點/mnt/home。重新掛載到/home下
mount/dev/sdb1 /mnt/home
umount/dev/sdb1/home
這一步建議寫入配置文件/etc/fstab里
vim/etc/fstab
/dev/sdb1/home ext4 defaults 0 0
到這里數(shù)據(jù)遷移完成佛致,/home已經(jīng)在獨立的分區(qū)/dev/sdb1上
2.3 啟用分區(qū)配額功能
1.在fstab里對應(yīng)掛載分區(qū)的掛載選項添加usrquota,grpquota
生效配置辙谜,重新掛載分區(qū)mount –a remount /home
2創(chuàng)建磁盤配額數(shù)據(jù)庫
配額是放到二進(jìn)制的數(shù)據(jù)庫里
quotacheck -cug/home在home里會生成兩個quota的二進(jìn)制文件装哆,c是創(chuàng)建的意思蜕琴,u對應(yīng)usrquota,g對應(yīng)grpquota
執(zhí)行語句后凌简,發(fā)現(xiàn)在/home下生成了兩個二進(jìn)制的文件,執(zhí)行命令file /aquota.*查看新生成的文件的類型
如果出現(xiàn)如下的報錯,請堅持selinux是否開啟藕施,getenforce,如果開啟請關(guān)閉裳食,setenforce0
3開啟數(shù)據(jù)庫
quotaon /home
4查看配額設(shè)置是否已經(jīng)生效诲祸,如果顯示on烦绳,表示已經(jīng)生效
quotaon -p /home
5針對每個用戶設(shè)置配額
這里的blocks單位就是1k径密。block是目前已經(jīng)暫用多少空間享扔,不可以通過設(shè)置得到。
inodes是當(dāng)前已經(jīng)創(chuàng)建文件的數(shù)量籽懦,后面的hard soft才是對文件數(shù)的現(xiàn)在暮顺,不可以通過設(shè)置得到捶码。
grace是指寬限期惫恼,超出soft現(xiàn)在后澳盐,才會出現(xiàn)的日期叼耙,表示超過soft多少天后筛婉,即使沒有超過hard現(xiàn)在,超過時間也是會導(dǎo)致不能創(chuàng)建任何的文件拦惋“菜拢可以通過edquota -t這個命令修改block或者是inode的值
edquota wang//針對sunny用戶來修改配額
另外言秸,edquota是交互式的命令迎捺,可以通過setquota實現(xiàn)非交換的配額設(shè)置
setquota sunny80000 100000 175 180 /home前面兩個數(shù)字80000
100000分別對應(yīng)block的soft和hard,后面的0 0是inode的現(xiàn)在凳枝,0 0表示不對文件數(shù)進(jìn)行限制
到這里岖瑰,quato針對用戶的設(shè)置已經(jīng)完成蹋订。接下來測試
6測試
切換到對應(yīng)用戶賬號露戒,然后在家目錄下創(chuàng)建文件
su -wang
dd if=/dev/zero of=test1bs=1M count=65正常創(chuàng)建
dd if=/dev/zero of=test2bs=1M count=85出現(xiàn)報警,但是還是可以成功
dd if=/dev/zero of=test2bs=1M count=105失敗动漾,文件大小為上限100M
如果要針對用戶去掉配額限制,只要把配合對應(yīng)的hard和soft都調(diào)整為0就可以
文件占用的空間的大小是根據(jù)所有者來設(shè)置的节沦。以下例子甫贯,把f1所有者改為mage后叫搁,可以看到files數(shù)量就少了一個
edquota –p wang mage 復(fù)制wang的磁盤配額設(shè)置給到mage這個賬號
2.4針對組進(jìn)行配額
組管理配額是針對整個組所有用戶的空間或者文件數(shù)量使用總和進(jìn)行限制
對組quota進(jìn)行配置
edquota -g quota疾党,限制如下
實驗截圖
管理員賬號下repquato可以查看配額使用情況
2.5 xfs文件系統(tǒng)配額
XFS基于目錄配額的Project Quota配置,和ext4是根據(jù)用戶和組創(chuàng)建方法不一樣雹洗。
關(guān)于xfs_quota的詳細(xì)介紹卧波,建議manxfs_quota查看港粱,里面有詳細(xì)的例子和各個參數(shù)的介紹
/etc/projectsMapping ofnumeric project identifiers to directories trees.
/etc/projidMapping ofnumeric project identifiers to project names.
這里簡要介紹步驟
1.分區(qū)和掛載見ext4格式的例子
2.建立一個使用配置文件的Project
Quota文件目錄并設(shè)置配額
mkdir -p /home/app
echo 42:/home/app >>/etc/projects
echo application:42 >>/etc/projid
xfs_quota -x -c 'project -s application'/home
xfs_quota -x -c 'limit -p bhard=100Mapplication' /home/
xfs_quota -x -c 'report /home/app'
xfs_quota -x -c 'limit -p bsoft=80Mapplication' /home/
3.查看配額報告信息
xfs_quota -x -c 'report /home/app
4. 測試锈颗,在/app下創(chuàng)建大于100M的文件击吱,就會報警
3 RAID
3.1 RAID概念
raid每個硬盤取出的空間大小是要一致的
假設(shè)有一個3個硬盤組成的raid0,一個100M的文件要放到raid0里覆醇,該大文件會分成很多chunk(小塊)永脓,然后分別將這些塊放到raid的三塊硬盤上寫入鞋仍。
raid1防止的是硬件損壞威创,如果在其中一塊盤修改數(shù)據(jù)肚豺,另一塊盤也會被修改吸申。同步的。
raid4具有容錯性和性能提高梳侨,一塊當(dāng)做校驗的硬盤猫妙,但是raid4的問題是校驗位固定往一塊硬盤上寫入的割坠,根據(jù)經(jīng)驗彼哼,該校驗位的硬盤損壞頻率很高敢朱。
raid5.和raid4差不多拴签,使用率也是(n-1)/n,但是校驗位是平均放到其他硬盤上的,沒有固定在一塊硬盤构灸,這樣同一機器上硬盤的使用頻率就差不多喜颁,所以損壞頻率就都一樣半开,也叫帶有奇偶校驗位的磁帶機寂拆。當(dāng)壞掉一塊硬盤后纠永,服務(wù)器的性能會下降园蝠,因為要去反正算錯校驗位的數(shù)據(jù)彪薛,對系統(tǒng)造成了壓力善延。所以為了應(yīng)對這種情況易遣,raid5還有一個spare disk饭于,要在機器上準(zhǔn)備一個備用的硬盤处铛。平常不參與raid工作幽邓。即spare disk火脉。當(dāng)發(fā)現(xiàn)有故障的硬盤,這塊備用的硬盤會立即使用
raid6有兩個校驗位.使用率為(n-2)/n畸颅。壞掉兩塊硬盤也不會有問題方援。
raid10,先1后0,假設(shè)8塊盤肯骇,先兩兩做成1,再把4組做成0漾脂,相對raid01容錯性好胚鸯,所以生產(chǎn)環(huán)境一般用raid10
raid01即先0后1姜钳,假設(shè)有8塊硬盤哥桥,先4塊4塊做成raid0,然后再把兩組raid0做成了raid1.
3.2 創(chuàng)建raid5
1.做raid先分區(qū)拟糕,類型選擇raid
注意,這里如果整塊硬盤都拿來做raid辱挥,可以不用做分區(qū)晤碘,更不存在選擇類型raid园爷。測試一下整塊盤拿來用的情況
2.mdadm -C創(chuàng)建
mdadm -C /dev/md0-a yes-l 5-n 3-x 1 /dev/sd{c,d,e,f}1
注意腮介,這個創(chuàng)建過程比較慢
可以用
cat/proc/mdstat
mdadm-D/dev/md0查看raid的狀態(tài)
3.寫入配置文件叠洗,系統(tǒng)默認(rèn)沒有mdadm.conf的文件灭抑,需要手動生成
mdadm-Ds> /etc/mdadm.conf
這里的s是小寫字母s,這個配置文件如果不生成腾节,那么當(dāng)禁用raid后案腺,想要再次重啟就起不來了
/etc/mdadm.conf語法如下
4. 格式化新的raid分區(qū)文件
mkfs.ext4/dev/md0
5 掛載
mount/dev/md0/mnt/raid
寫入配置文件
vim /etc/fstab
/dev/md0/mnt/raidext4defaults00
到這里raid就創(chuàng)建完成了。
3.3 測試性能和容錯性
3.3.1 測試寫性能
raid5寫性能并沒有提高太多
dd if=/dev/zeroof=/dev/raid/bigfile bs=1M count=1024
3.3.2 測試讀性能
raid5讀性能相對普通硬盤有較大的提高
dd if=/dev/raid/bigfileof=/dev/null
3.3.3 測試容錯性
模擬邏輯故障mdadm /dev/md0 -f /dev/sdc1
移除損壞的sdc1mdadm /dev/md0-r/dev/sdc1
添加硬盤mdadm/dev/md0-a /dev /sdc1
模擬物理性的損壞同辣,硬盤故障后旱函,raid的性能會嚴(yán)重降低
直接移除一個硬盤,在虛擬機上棒妨,直接移除掉一塊硬盤券腔,如果要添加回去用颅眶,添加硬盤后涛酗,執(zhí)行
mdadm/dev/md0-a /dev /sdc1
3.4 增加新的成員
#mdadm –G /dev/md0 –n4 -a /dev/sdf1這樣就會在增加一塊硬盤到raid里商叹,由原來的3塊硬盤變成了4塊硬盤做raid5.
如果要加一塊是spare,即備用的盤剖笙,spare狀態(tài)的盤可以有很多塊弥咪,執(zhí)行如下語句
mdadm/dev/md0-a /dev/sdf2.
3.5 停止raid
1.取消掛載聚至,umount,同時把配置文件/etc/fstab里的對應(yīng)md0信息刪掉
2.停止raid ,
mdadm -S /dev/md0//注意扳躬,這里-S是大寫字母S
這里如果要重新激活贷币,可以用語句mdadm ?-A ?-s /dev/md0 激活役纹,然后才能重新掛載
3.清掉生成的配置文件
rm –rf /etc/mdadm.conf
4.清除raid上元數(shù)據(jù)
mdadm--zero-superblock /dev/sd{b,c,d,e}
刪掉raid后字管,raid的信息還在嘲叔,如果不清硫戈,這些盤就不能用丁逝,重啟機器后這些盤還會啟用raid,所以要清除raid數(shù)據(jù)霜幼。注意罪既,如果這些數(shù)據(jù)不清除琢感,即使做了1—3步驟驹针,當(dāng)重啟機器后柬甥,就會變成md127的raid苛蒲。處理辦法是先停掉md127: mdadm
-S /dev/md127,然后在通過blkid把查出來之前做raid的盤全部用第4步的方法清空撤防。
這里如果沒有清干凈寄月,下次重新給這些盤分區(qū)漾肮,分區(qū)還是會顯示舊的raid原信息克懊。所以拿掉raid建議都做一下這步谭溉,如果比較頑強扮念,重啟后還是出現(xiàn),再次執(zhí)行這個清空步驟嵌灰,把對應(yīng)的分區(qū)raid舊的元數(shù)據(jù)清掉
清除raid,如果停raidmd0后驹溃,執(zhí)行mdadm--zero-superblock /dev/sd{b,c,d,e},這個raid md0
又復(fù)活了,如下搂鲫,多次停掉還是一樣的問題魂仍,這個情況可能是raid里某個分區(qū)處于忙碌狀態(tài)擦酌,導(dǎo)致整個raid都不能被清空赊舶,建議直接刪掉raid對應(yīng)的每個分區(qū)笼平,然后同步硬盤寓调,看看是否同步磁盤partprobe后夺英,看看磁盤是否正常被清掉了,用blkid查看對應(yīng)分區(qū)的相同UUID是否沒了滋捶,如果沒了痛悯,就正常。如果同步還是有問題重窟,在具體看是哪個盤有問題灸蟆,可以重復(fù)清空對應(yīng)分區(qū)的元數(shù)據(jù),已經(jīng)刪掉分區(qū)進(jìn)行同步處理
備注,特殊情況下可缚,清掉raid有時比較麻煩,可以通過清空元數(shù)據(jù)斋枢,重啟帘靡,清空對應(yīng)分區(qū),三個方式進(jìn)行處理瓤帚。如果再次重啟描姚,沒有啟動raid,說明已經(jīng)完成卸載raid的工作戈次。
3.6 創(chuàng)建raid10
以下僅介紹創(chuàng)建raid的方法轩勘,分區(qū),格式化和掛載需讀者自行創(chuàng)建
方法一怯邪,先建1后建0
mdadm -C /dev/md0 -a yes -l 1 -n 2 /dev/sdb{1,2}
mdadm -C /dev/md1 -a yes -l 1 -n 2 /dev/sdc{1,2}
mdadm -C /dev/md2 -a yes -l 0 ?-n 2 /dev/md{0,1}
方法二绊寻,直接創(chuàng)建
mdadm -C /dev/md0 -a yes -l 10 -n 4 /dev/sdb{1,2} /dev/sdc{1,2}
4 LVM
4.1 LVM概念
創(chuàng)建成物理卷后相當(dāng)于給分區(qū)貼了一個標(biāo)簽,告訴系統(tǒng)這些硬盤以后可以用來創(chuàng)建LV悬秉,然后要把物理卷組合在一起澄步,創(chuàng)建卷組,卷組的空間為物理卷空間的總和和泌。然后再將卷組創(chuàng)建為邏輯卷村缸。
擴容的時候,就是要將新的硬盤建成物理卷武氓,然后再加到對應(yīng)的卷組梯皿,則卷組的空間就擴展了。邏輯卷的讀寫性能不比物理分區(qū)差
LVM的LV的容量默認(rèn)是256G,原因是一個lv里面PE最多是65536個县恕,每個PE默認(rèn)大小是4M索烹,所以65536*4M/1024=256G,因為PE數(shù)量調(diào)整不了,所以我們可以通過調(diào)整PE的大小來進(jìn)行調(diào)整弱睦,在創(chuàng)建VG的時候用選項-s來指定PE的值百姓,如將PE=16M,那么LV的最大總量就可以達(dá)到1TB的容量。
LVM的相關(guān)指令匯總?cè)缦?/p>
4.2 創(chuàng)建邏輯卷
1.分區(qū)况木,選擇類型是8e,這里組合的分區(qū)的大小可以不一樣大
2.pvcreate /dev/sdb1 /dev/sdc1
3 pvs或pvdisplay進(jìn)行查看
4創(chuàng)建卷組vgcreate ?vg0 ?/dev/sd{b,c}1
5 vgs或vgdisplay查看卷組
6創(chuàng)建邏輯卷lvcreate-n lv0 -l 50%vg vg0
這里-L也可以跟大小10G
7查看lvdisplay
ll/dev/vg0/*可以看到有鏈接文件
8格式化垒拢,給文件創(chuàng)建系統(tǒng)
mkfs.xfs /dev/vg0/lv0
9掛載,寫入配置文件
到這里火惊,創(chuàng)建成功
4.3 擴展LVM空間
擴展是先擴展邏輯卷后再同步文件系統(tǒng)
先用vgdisplay查看空間求类。看看剩余有多少卷組空間可以分配屹耐,
4.3.1 如果有剩余空間
擴展邏輯卷尸疆,兩個寫法,如下
lvextend -l +2000 /dev/vg0/lv0
lvextend -L +5G /dev/vg0/lv0
注意大寫L和小寫l后面跟的單位不一樣,大寫L后面跟單位,多少M或G等寿弱,小寫的l跟多少個邏輯卷單位
增加完成后犯眠,用lvdisplay查看空間增加情況
然后用df –h查看邏輯卷目前的文件系統(tǒng)空間情況,因為新增加的空間還沒有創(chuàng)建文件系統(tǒng)症革,所以用df看不到新增加后的大小筐咧。需要同步
如果是xfs文件系統(tǒng),同步命令為xfs_growfs /mnt/lv0后面跟著的是掛載點噪矛,將同步新增加的空間的文件系統(tǒng)量蕊,xfs的文件系統(tǒng)只能增加,不能減少
如果是ext文件系統(tǒng)的同步用resize2fs /dev/vg0/lv17G
如果出現(xiàn)如下的報錯艇挨,建議同步語句中不要寫擴容后的大小残炮,命令resize2fs /dev/vg0/lv1
[root@localhost lv0]# resize2fs/dev/vg0/lv0 9.6G
resize2fs 1.41.12 (17-May-2010)
resize2fs: Invalid new size: 9.6G
ext4文件系統(tǒng)可以縮減空間,但是一般生產(chǎn)環(huán)境不縮減空間缩滨,如果要縮減势就,要先做好原來數(shù)據(jù)備份后再進(jìn)行縮減
4.3.2 步驟如下
1.分出一塊分區(qū),類型選擇邏輯卷sda7
fdisk/dev/sda--> n-->7-->+3G-->t—8e->w
2.pvcreate /dev/sda7
3.vgextend vg0 /dev/sda7
4.擴展邏輯卷
lvextend -L? 7G /dev/vg0/lv1
5.同步文件系統(tǒng)
resize2fs /dev/vg0/lv1
注意楷怒,這里擴展邏輯卷和同步文件系統(tǒng)蛋勺,可以直接用一條命令創(chuàng)建瓦灶,如下
lvextend -r -L +500M? /dev/vg0/lv1
4.4 縮減空間
縮減則是先縮減文件系統(tǒng)再縮減邏輯卷,注意縮減前要先把數(shù)據(jù)做好備份鸠删,才能做縮減,否則數(shù)據(jù)可能丟失贼陶,如果刃泡,當(dāng)前數(shù)據(jù)量大于要減少后的盤的大小,則數(shù)據(jù)會部分丟失碉怔,步驟如下:
umount /mnt/lv1
e2fsck? -f? /dev/vg0/lv1 //系統(tǒng)強制要求的步驟
resize2fs /dev/vg0/lv1 5G
lvreduce -L 5G /dev/vg0/lv1
mount-a
4.5 遷移邏輯卷
首先要確保要遷移的邏輯卷和新的機器上已有的邏輯卷名稱不一樣烘贴,可以重命名
1.umount /mnt/lv0
2.確保邏輯卷的名字和新機器上的邏輯卷不同名,同名就直接改掉
lvrename /dev/vg0/lv0 newlv0
vgrename vg0 newvg0
3.改成非活動狀態(tài)撮胧,pvdisplay查看
vgchange -an newvg0
4.導(dǎo)出邏輯卷
vgexportnewvg0
5.拆除硬盤桨踪,把拔下來的硬盤插入目標(biāo)主機,這邊虛擬機上操作硬盤移除和插入新主機芹啥,主要是把硬盤文件移動到新主機的目錄下锻离,新主機添加硬盤選擇已有的磁盤,選中對應(yīng)的移動過來的硬盤文件.vmk墓怀,完成硬盤的添加
6.在新主機上用pvscan掃描汽纠,這步可以不操作
7.導(dǎo)入硬盤
vgimport newvg0
8.激活新增加的硬盤
vgchange -ay newvg0
9.掛載
mount /dev/newvg0/newlv0 ?/mnt/newlv0
完成遷移
4.6 從邏輯卷里刪除正在使用的物理分區(qū)
pvdisplay看看要移走的分區(qū)是否有人用,有人用的話,
pvdispaly查看到如果total PE和free PE一樣大傀履,表示沒人用虱朵,可以直接移走
4.6.1 沒有數(shù)據(jù),方法如下
1.從邏輯卷里移走
vgreduce vg0 /dev/sda7
2.去掉物理卷標(biāo)簽
pvremove /dev/sda7
3.直接刪掉分區(qū)fdisk/dev/sda -->d-->7
如果用pvdiskpaly查看到有數(shù)據(jù),表示有人用碴犬,就要遷走數(shù)據(jù)到同一卷組的其他可用的PE上執(zhí)行
pvmove /dev/sda6
移走sda6上的PE到同一卷組的剩余PE后才能拆掉空間絮宁,這里要確認(rèn)同一卷組還有多余的空間,即PE翅敌,才能移走數(shù)據(jù)
4.6.2 如果同一卷組沒有多余的空間羞福,要先加卷組空間
1.新建一塊分區(qū)fdisk/dev/sda->n-->7-->t—8e-->w
2.pvcreate /dev/sda7
3.vgextend vg0 /dev/sda7
4.有空間后就可以移走數(shù)據(jù),pvmove命令會在同一卷組里找到其他空閑空間進(jìn)行數(shù)據(jù)的存放
pvmove /dev/sda6
5.從vg0里刪掉/dev/sda6這塊盤
vgreduce vg0/dev/sda6
6.刪掉空間
pvremove /dev/sda6
7.通過fdisk移除分區(qū)
4.7 邏輯卷快照
邏輯卷快照相當(dāng)于是把當(dāng)前的狀態(tài)記錄下來蚯涮,有備份的效果治专,但是不能代替?zhèn)浞荩驗閭浞菘梢詡浞莸狡渌麢C器上遭顶,快照都是在本地磁盤下
邏輯卷快照的原理是在同一個卷組里也要創(chuàng)建一個快照邏輯卷张峰,快照會占用一定大小的空間“羝欤快照之所以快喘批,原因是沒有真正拷貝數(shù)據(jù),而是分配了一定的空間來使用铣揉,但是后期數(shù)據(jù)有變更時饶深,舊的數(shù)據(jù)就會被推送到快照空間,即快照存放最舊的數(shù)據(jù)逛拱,當(dāng)前的邏輯卷存放最新的數(shù)據(jù)敌厘,沒有變更的數(shù)據(jù)就不會存放到快照里。但是快照會導(dǎo)致服務(wù)器性能下降朽合,因為快照會做備份的操作俱两,導(dǎo)致快照會導(dǎo)致服務(wù)器性能下降,所以一般用于測試環(huán)境曹步。
新建快照速度很快
4.7.1 創(chuàng)建LVM快照
創(chuàng)建快照命令如下宪彩,-s表明是做快照,-p指定屬性為只讀
lvcreate-nlv1-snapshot-s-L100M-pr/dev/vg0/lv1
掛載快照
mount/dev/lv1-snapshot/mnt/snap
測試
在數(shù)據(jù)還沒修改前讲婚,/mnt/snap看到的快照數(shù)據(jù)實際是lv1上的原始數(shù)據(jù)尿孔,此時還沒做任何備份操作
1.當(dāng)在lv1上修改數(shù)據(jù),一旦數(shù)據(jù)被修改后筹麸,/mnt/snap就保存舊的數(shù)據(jù)活合,新的數(shù)據(jù)在lv1上
2.將原來的lv1刪掉一個文件,則被刪掉的文件就會被復(fù)制到snap上
3.在lv1上新建一個文件竹捉,snap上不會生成有新的文件
4.7.2 恢復(fù)LVM備份
1.取消邏輯卷和快照的掛載
2.合并數(shù)據(jù)芜辕,恢復(fù)后,快照會被刪掉块差。
lvconvert--merge/dev/vg0/lv1-snapshot
如果沒有取消掛載侵续,就進(jìn)行數(shù)據(jù)恢復(fù)倔丈,就會出現(xiàn)如下對的報錯
[root@localhost ~]# lvconvert --merge/dev/vg0/lv0-snap3
Can't merge over open origin volume
Can't merge when snapshot is open
Merging of snapshot lv0-snap3 will start next activation.
然后,即使取消掛載状蜗,要再次恢復(fù)原始數(shù)據(jù)時候需五,就會出現(xiàn)如下的報錯
[root@localhost ~]#lvconvert --merge /dev/vg0/lv0-snap3
Snapshot lv0-snap3 is already merging
Unable to merge LV "lv0-snap3" intoits origin.
如果遇到這樣的報錯,查看還是出現(xiàn)異常轧坎,因為lv0還沒被恢復(fù)到原始數(shù)據(jù)宏邮,但是重啟發(fā)現(xiàn)就正常了,出現(xiàn)這個報錯缸血,原因是未取消快照盤的掛載就執(zhí)行了恢復(fù)的操作
所以蜜氨,要恢復(fù)快照,即恢復(fù)原始數(shù)據(jù)捎泻,一定要取消掛快照的掛載后才能進(jìn)行恢復(fù)
如果不重啟機器飒炎,解決辦法是同時取消快照盤和lv0盤的掛載,將lv0設(shè)為未激活笆豁,然后再次激活郎汪,最后重新掛載,就可以恢復(fù)到快照時的數(shù)據(jù)
umount /mnt/lv0
umount /mnt/snap
lvchange -an /dev/vg0/lv0
lvchange -ay /dev/vg0/lv0
mount /dev/vg0/lv0 /mnt/lv0
4.8 刪除邏輯卷
1.取消掛載闯狱,
2.刪除邏輯卷,如果邏輯卷上有快照煞赢,系統(tǒng)會提示先刪快照再刪邏輯卷,此次操作哄孤,會清空數(shù)據(jù)
lvremove? /dev/vg0/lv1
3.刪卷組
vgremove vg0
4.刪除物理卷
pvremove /dev/sd{a,b,c}
5.通過fdisk刪掉之前創(chuàng)建邏輯卷的分區(qū)照筑,達(dá)到徹底刪除的效果
5 附錄
創(chuàng)造一個即有LVM的的優(yōu)點,彈性調(diào)整filesystem的大小录豺,同時又具備磁盤陣列的效能和備份功能的文件系統(tǒng)
思路先建raid再建LVM
1.用fdisk分區(qū)sd{b,c,d,e,f}1,五個
2.將多個分區(qū)通過命令mdadm創(chuàng)建一個raid5的磁盤陣列,并生成配置文件
mdadm-C/dev/md0-ayes-l5-n 4-x 1/dev/sd{b,c,d,e,f}1
mdadm-Ds >/etc/mdadm.conf
3.創(chuàng)建PG,VG,LV
pvcreate/dev/md0
vgcreatesunny_raid_vg/dev/md0
lvcreate-L 10G-nsunny_raid_lvsunny_raid_vg
4.格式化lv文件系統(tǒng)
mkfs.ext4/dev/sunny_raid_vg/sunny_raid_lv
5.掛載
mkdir /dev/raidlv
mount/dev/sunny_raid_vg/sunny_raid_lv/mnt/raidlv
移除設(shè)備
思路卸載lv的掛載后朦肘,先拆除lv饭弓,后停掉raid
步驟如下
umount /dev/raidlv
lvremove/dev/sunny_raid_vg/sunny_raid_lv
vgchange-ansunny_raid_vg
vgremovesunny_raid_vg
pvremove/dev/md0
mdadm-S/dev/md0
rm-rf/etc/mdadm.conf
mdadm--zero-superblock /dev/sd{b,c,d,e,f}1
用fdisk將對應(yīng)的分區(qū)刪掉
到此双饥,實驗完成。