pGz Linux AhӥΤg`sƮɡAF@ҦϥΪ̦bwЮeqϥΡAϺаtB (Quota) NO@D`ΪuIt~ApGAΤ``ϺЮeqΡAiɮרtδNonDz߾DzߡC ڭ̷|кϺа}C (RAID) 豲bɮרt (LVM)AoǤu㳣iHUAzP@ϥΪ̥iΪϺЮeqI |
Quota oӪNNrWNӬݡANOh֡yBzNաIpGOΦbsοWA
NOyhֹsο@ӤzN䤧CpGObqDϺШϥζqWOHH
Linux ӻANOh֮eqNoCڭ̥iHϥ quota ϺЪeqϥθA
Uڭ̷|ФO quota AMH@ӧ㪺dҨӤ quota @I
b Linux tΤAѩOhHhuҡAҥH|hH@PϥΤ@ӵwЪŶpo͡A pG𫟺ּƴXӨϥΪ̤jqFwЪŶܡAեYLϥΪ̪ϥvOI ]zӾAwЪeqϥΪ̡AHttθ귽IקKHijrI
|ҨӻAڭ̨ϥΪ̪w]aؿOb /home UApG /home OӿWߪ partition A
]oӤμѦ 10G nFA /home U@ 30 ӱbA]NOACӨϥΪ̥ӷ| 333MB Ŷ~C
ӨϥΪ̦bLaؿUFnhvAF 8GB ŶAQQݡAO_yL`ϥΪ̪KOH
pGQnϺЪeqtAoӮɭԴNona quota oI
quota `ϥΪXӱpOG
WYOwAȪ]pApGOw Linux tΥDW]wϥΪVUo@ǡG
joǹڪγ~աI
M quota ܦnΡAOϥΤW٬OǭnAѪG
ҥHoAAwyYӥؿzӶi Quota ]pAAiHwyYɮרt (filesystem) zӳ]wC
pGեؿPI٦ɮרtΪYAЦ^ĤKh@@A^ӡI
quota oNw filesystem إDnUXӳG
soft, hard, grace time ʧڭ̥iHΩUϥܨӻG
ϤϬϥΪ̪ϺЮeqAsoft/hard OOȡCunp 400M N@ OK A Y soft NX{ grace time í˼ƥBݨϥΪ̦ۦBzAYF hard ȡA ڭ̴NhipO۬ݦnաIKKI^_^Io˹ϥܦM@IFܡH
Өp_ӦڡAҥHo̧ڭ̨ϥΤ@ӽdҨӳ]p@UpBz Quota ]wy{C
nFAAWdbHά Quota ]wOHAboӤp`ڭ̥ӱNbݩʻPѼƷdwAaI
# s@bҮɡAѩӱbA]ϥ script ӫإҡI [root@www ~]# vi addaccount.sh #!/bin/bash # ϥ script ӫإ߹ quota һݪ groupadd myquotagrp for username in myquota1 myquota2 myquota3 myquota4 myquota5 do useradd -g myquotagrp $username echo "password" | passwd --stdin $username done [root@www ~]# sh addaccount.sh |
UӡANڭ̨ӹ@ Quota mߧaI
eڭ̴NͨAnϥ Quota n֤PɮרtΤ䴩~I]AwgϥΤFw]䴩 Quota ֤ߡA UӴNOnҰɮרtΪ䴩աILAѩ Quota ȰwɮרtΨӶiWAҥHڭ̱od@UA /home O_OӿWߪ filesystem OH
[root@www ~]# df -h /home Filesystem Size Used Avail Use% Mounted on /dev/hda3 4.8G 740M 3.8G 17% /home <==D /home TOWߪI [root@www ~]# mount | grep home /dev/hda3 on /home type ext3 (rw) |
qWƨӬݡAoD /home TOWߪ filesystemA]iH /dev/hda3 C pGAtΪ /home ëDWߪɮרtΡAiNonwڥؿ (/) ӳWdFILAӫijbڥؿ]w QuotaC ~Aѩ VFAT ɮרtΨä䴩 Linux Quota \AҥHڭ̱onϥ mount dߤ@U /home ɮרtάH ݰ_ӬO Linux DzΪ ext2/ext3 AoɮרtΪ֩w䴩 Quota աISDI
pGuOQnbo} Quota AiHϥΦpU觋Ӥʥ[J quota 䴩G
[root@www ~]# mount -o remount,usrquota,grpquota /home [root@www ~]# mount | grep home /dev/hda3 on /home type ext3 (rw,usrquota,grpquota) # INb usrquota, grpquota I`NgkI |
ƹWAAsɡAtη|PBs /etc/mtab oɮסA ҥHAnTw /etc/mtab wg[J usrquota, grpquota 䴩AҷQn]wɮרtΤC t~]nSOjաAϥΪ̻Psժ quota ɮרtΤ䴩ѼƤOOGusrquota, grpquota IdUngFIo@ID`h챵IJ Quota Bͱ``dC
LʱƦbUsN|A]̦ngJ]wɤڡIboDרҤA ڥiHק /etc/fstab UoӼˤlG
[root@www ~]# vi /etc/fstab LABEL=/home /home ext3 defaults,usrquota,grpquota 1 2 # LسèSCXӡIIbĥ|I default ᭱[WӰѼơI [root@www ~]# umount /home [root@www ~]# mount -a [root@www ~]# mount | grep home /dev/hda3 on /home type ext3 (rw,usrquota,grpquota) |
٬OnAjաAק粒 /etc/fstab Aȥnդ@UIYoͿ~onBzI ]oɮצpGק~AO|yLk}pڡIOOI̦nϥ vim ӭקաI ]|ykAN|AgrFIҰɮרtΪ䴩AUڭ̫إ߰_ quota OɧaI
Quota OzLRɮרtΤACӨϥΪ(s)֦ɮ`ƻP`eqA
ANoǸưObɮרtΪ̳hؿAMbӰOɤAϥΨCӱb(θs)ȥhWdϺШϥζqC
ҥHաAظmo Quota OɴN㪺D`nC˦䴩 Quota Ѽ (usrquota, grpquota) ɮרtΡA
Nϥ quotacheck oӫOIoӫOykpUG
[root@www ~]# quotacheck [-avugfM] [/mount_point] ﶵPѼơG -a G˩Ҧb /etc/mtab At quota 䴩 filesystemA[WѼƫA /mount_point igA]˩Ҧ filesystem FI -u GwϥΪ̱ɮPؿϥαpA|إ aquota.user -g GwsձɮPؿϥαpA|إ aquota.group -v Gܱ˹L{TF -f GjɮרtΡAügJs quota ]w (MI) -M GjHŪg觋ɮרtΡAubSpU~|ϥΡC |
quotacheck ﶵAunOoy -avug z@_UFYiI -f P -M ObɮרtΥiwgҰ quota FA OAٷQnsɮרtήɡAtη|nDA[Jӿﶵ (ߦLHwgϥ quota )IɨSnn[WӶءCnFANڭ̨ӳBzڭ̪ȧaI
# wӨtΧt usrquota, grpquota Ѽƪɮרtζi quotacheck [root@www ~]# quotacheck -avug quotacheck: Scanning /dev/hda3 [/home] quotacheck: Cannot stat old user quota file: No such file or directory <==ɮרtΡA|s@OɡI quotacheck: Cannot stat old group quota file: No such file or directory quotacheck: Cannot stat old user quota file: No such file or directory quotacheck: Cannot stat old group quota file: No such file or directory done <==WTӿ~uOOɩ|إߦӤwAiHzI quotacheck: Checked 130 directories and 107 files <==ڷjMG quotacheck: Old file not found. quotacheck: Old file not found. # YoӫOoX{pU~TAܧASɮרtΦҰ quota 䴩I # quotacheck: Can't find filesystem to check or filesystem not mounted with # quota option. [root@www ~]# ll -d /home/a* -rw------- 1 root root 8192 Mar 6 11:58 /home/aquota.group -rw------- 1 root root 9216 Mar 6 11:58 /home/aquota.user # bרҤA/home WߪɮרtΡA]jMG|NӰOɩb # /home UCoɮ״NO Quota ̭nTFI |
oӫOunio̴NFAnЪiI]@Uڭ̷|Ұ quota \AYҰʫA٭ni quotacheck A tη|߯}a즳OɡAҥH|ͤ@ǿ~TĵiACpGATwSHbϥ quota ɡA iHjsi quotacheck ʧ@Cj檺piHϥΦpUﶵ\G
# pG]SݨDݭnjˤwɮרtή [root@www ~]# quotacheck -avug -mf quotacheck: Scanning /dev/hda3 [/home] done quotacheck: Checked 130 directories and 109 files # ƭn²ܦhI]OɦsbIҥHĵiT|X{I |
o˰OɴNإ߰_ӤFIAΤʥhs诊ɮס]ɮO quota ۤvɡAäO¤rɰաI Bɮ|@ܰʡAoO]A /home oɮרtζiާ@ɡAAާ@G|vTϺЧaI ҥHM|PBO쨺ɮפաIҥHnإ aquota.user, aquota.groupAOoϥΪO quotacheck OI Oʽs𫍧I
s@n Quota ]wɤAUӴNOnҰ quota FIҰʪ觋²Iϥ quotaon AܩN quotaoff
Yi
[root@www ~]# quotaon [-avug] [root@www ~]# quotaon [-vug] [/mount_point] ﶵPѼơG -u GwϥΪ̱Ұ quota (aquota.user) -g GwsձҰ quota (aquota.group) -v GܱҰʹL{TF -a Gھ /etc/mtab filesystem ]wҰʦ quota AY[ -a ܡA h᭱Nݭn[WSw filesystem I # ѩڭ̭nҰ user/group quota AҥHϥΩUykYi [root@www ~]# quotaon -auvg /dev/hda3 [/home]: group quotas turned on /dev/hda3 [/home]: user quotas turned on # SΪkApAҰ /var quota 䴩AȱҰ user quota [root@www ~]# quotaon -uv /var |
oӡy quotaon -auvg zOXGubĤ@Ұ quota ɤ~ݭniI]UAsҰʨtήɡA
tΪ /etc/rc.d/rc.sysinit oӪlƸ}N|۰ʪUFoӫOFI]AunboҤi@YiA
ӳݭnۦҰ quota A] CentOS 5.x tη|۰AdwLI
[root@www ~]# quotaoff [-a] [root@www ~]# quotaoff [-ug] [/mount_point] ﶵPѼơG -a G filesystem quota (ھ /etc/mtab) -u GȰw᭱ /mount_point user quota -g GȰw᭱ /mount_point group quota |
oӫONOF quota 䴩Iڭ̳o̻ݭnm quota @AҥHo̽ФnLI
Uڭ̶}lӳ]wϥΪ̻Psժ quota BaI
edquota O edit quota YgAҥHNOΨӽsϥΪ̩Ϊ̬OsխBOoCڭ̥Ӭݬ edquota ykaA ݧAӹھާ@@UC
[root@www ~]# edquota [-u username] [-g groupname] [root@www ~]# edquota -t <==קeɶ [root@www ~]# edquota -p db -u sb ﶵPѼơG -u G᭱bW١CiHiJ quota se (vi) h]w username ȡF -g G᭱sզW١CiHiJ quota se (vi) h]w groupname ȡF -t GiHקeɶC -p GƻsdC db wgsbåBw]wn quota ϥΪ̡A NqyN db oӤH quota Ƚƻs sb zI |
nFAڭ̨ӬݬݷiJ myquota1 B]wɡA|X{eG
dҤ@G]w dmtsai oӨϥΪ̪ quota [root@www ~]# edquota -u myquota1 Disk quotas for user myquota1 (uid 710): Filesystem blocks soft hard inodes soft hard /dev/hda3 80 0 0 10 0 0 |
WYĤ@bwӱb (myquota1) i quota B]wAĤGhOYA̭@CA CONqG
soft/hard 0 ɡAܨSNCnA̾ڧڭ̪dһAڭ̻ݭn]wO blocks soft/hard Aܩ inode hnhʥLI]Wzeڭ̱NL令pUҼˡG
b edquota eAC@unOCNiHFAäݭnƦCIDisk quotas for user myquota1 (uid 710): Filesystem blocks soft hard inodes soft hard /dev/hda3 80 250000 300000 10 0 0 # ϥ 1000 h 1024 ơInաIMNiHxs}oI |
]wAڭ٦L 5 ӥΤn]wAѩ]wȳ@ˡAɥiHϥ quota ƻsI
# N myquota1 ȽƻsL|ӱb [root@www ~]# edquota -p myquota1 -u myquota2 [root@www ~]# edquota -p myquota1 -u myquota3 [root@www ~]# edquota -p myquota1 -u myquota4 [root@www ~]# edquota -p myquota1 -u myquota5 |
o˴NKhFIMA@Usժ quota BaI
[root@www ~]# edquota -g myquotagrp Disk quotas for group myquotagrp (gid 713): Filesystem blocks soft hard inodes soft hard /dev/hda3 400 900000 1000000 50 0 0 # OoA쬰 KB I |
̫ANeɶL令 14 ѧaI
# eɶ쥻 7 ѡANL令 14 ѧaI [root@www ~]# edquota -t Grace period before enforcing soft limits for users: Time units may be: days, hours, minutes, or seconds Filesystem Block grace period Inode grace period /dev/hda3 14days 7days # 쥻O 7days Aڭ̱NLאּ 14days I |
zLo²檺pBJAڭ̤wgNϥΪ/s/eɶ]wIUӴNO[쩳]wSͮİաI
quota DnؼҦA@جOwCӭӤHθsժ quota OA@ӬOwɮרtΪ repquota OC
ڭ̥q²檺 quota ӤСIA]iHDݬݧA]wȹ藍ڡI
[root@www ~]# quota [-uvs] [username] [root@www ~]# quota [-gvs] [groupname] ﶵPѼơG -u G᭱iH username AܥXӨϥΪ̪ quota ȡCY username AܥX̪ quota ȡC -g G᭱i groupname AܥXӸsժ quota ȡC -v GܨCӥΤb filesystem quota ȡF -s Gϥ 1024 ƨӫwA|ܦp M I # ϥ quota hܥX myquota1 P myquota2 B [root@www ~]# quota -uvs myquota1 myquota2 Disk quotas for user myquota1 (uid 710): Filesystem blocks quota limit grace files quota limit grace /dev/hda3 80 245M 293M 10 0 0 Disk quotas for user myquota2 (uid 711): Filesystem blocks quota limit grace files quota limit grace /dev/hda3 80 245M 293M 10 0 0 # oӫOܥXӪƸ edquota XGO@Ҥ@˪IuOhF grace ءC # A|o{ grace USơAoO]ڭ̪ϥζq (80) |WL soft # ܥX myquotagrp sխB [root@www ~]# quota -gvs myquotagrp Disk quotas for group myquotagrp (gid 713): Filesystem blocks quota limit grace files quota limit grace /dev/hda3 400 879M 977M 50 0 0 |
ѩϥα` K, M, G nA]WYڭ̨ϥΤFy -s zﶵANH M ܤFC
Lѩڭ̨ϥ edquota ]wBɡAϥΪO (1000) ӤOڪ 1024 ơA
ҥHݰ_ӷ|IӤ@˳Iѩ quota ȯwYǥΤܳApGnw filesystem CXɡA
ӥiR repquota NWγաI
[root@www ~]# repquota -a [-vugs] ﶵPѼơG -a G /etc/mtab jM㦳 quota лx filesystem Aói quota GF -v GXƱNt filesystem ӳTF -u GܥXϥΪ̪ quota (oOw])F -g GܥXӧOsժ quota ȡC -s Gϥ M, G ܵG # dߥרҤҦϥΪ̪ quota pG [root@www ~]# repquota -auvs *** Report for user quotas on device /dev/hda3 <==w /dev/hda3 Block grace time: 14days; Inode grace time: 7days <==block eɶ 14 Block limits File limits User used soft hard grace used soft hard grace ---------------------------------------------------------------------- root -- 651M 0 0 5 0 0 myquota1 -- 80 245M 293M 10 0 0 myquota2 -- 80 245M 293M 10 0 0 myquota3 -- 80 245M 293M 10 0 0 myquota4 -- 80 245M 293M 10 0 0 myquota5 -- 80 245M 293M 10 0 0 Statistics: <==oOҿתtάTA -v ~| Total blocks: 9 Data blocks: 2 Entries: 22 Used average: 11.000000 |
ھڳoǸTAzNiHDثepoI ^_^IˡA Quota ²aIAiHwAtγ]w@UϺШϥΪWhAAΤᤣ|ϺЫѬOQӥI
Quota 쩳SĪGHլݬݤNDFHڭ̨ϥ myquota1 hլݬݡApGإߤ@ӤjɮɡA Өtη|K˩OH
# դ@GQ myquota1 Aظm@ 270MB jɮסA[ quota GI [myquota1@www ~]$ dd if=/dev/zero of=bigfile bs=1M count=270 hda3: warning, user block quota exceeded. 270+0 records in 270+0 records out 283115520 bytes (283 MB) copied, 3.20282 seconds, 88.4 MB/s # `NݡAڬOϥ myquota1 bhi dd OIncdڡI # MAiHo{X{@ warning TIUӬݬݳC [root@www ~]# repquota -auv *** Report for user quotas on device /dev/hda3 Block grace time: 14days; Inode grace time: 7days Block limits File limits User used soft hard grace used soft hard grace ---------------------------------------------------------------------- myquota1 +- 276840 250000 300000 13days 11 0 0 # oӫOhOQ root hd\I # AiHo{ myquota1 grace X{IåB}l˼ƤFI # դGGAإߥt~@ӤjɮסA`eqWL 300M I [myquota1@www ~]$ dd if=/dev/zero of=bigfile2 bs=1M count=300 hda3: write failed, user block limit reached. dd: writing `bigfile2': Disk quota exceeded <==ݡI~T@ˤFI 23+0 records in <==SkgJFIҥHuO 23 22+0 records out 23683072 bytes (24 MB) copied, 0.260081 seconds, 91.1 MB/s [myquota1@www ~]$ du -sk 300000 . <==GMO췥FI |
myquota1 iH}lBzLɮרtΤFIpGBzܡA̫eɶ|ksAMX{pUeG
[root@www ~]# repquota -au *** Report for user quotas on device /dev/hda3 Block grace time: 00:01; Inode grace time: 7days Block limits File limits User used soft hard grace used soft hard grace ---------------------------------------------------------------------- myquota1 +- 300000 250000 300000 none 11 0 0 # ˼ƾksAҥH grace N|ܦ none աI~˼ |
˼ks]|SN~աIOߡIuOpGAϺШϥζq soft/hard ɡA
˼ks soft ȷ|ܦY歭AɧANShleqiHϥΤFCpѨMH
NnJtΥhRɮקYiաISQiȰաIDOAϥΪ̳q`̶̤M쩳tΥXFDA
ҥHڭ̥iݭnHe@ĵiH (email) ΤCpBzOHzL warnquota ӳBmYiC
warnquotarWNqNO quota ĵi (warn) IoF観ΩOHLiH̾ /etc/warnquota.conf ]wAMXثetΤW quota ζqWL soft (NO grace time X{dzå) bAzL email \NĵiHoeϥΪ̪qllHcC warnquota ä|۰ʰAҥHڭ̻ݭnʥhLC°y warnquota zAL|oeʫHXhA @ʵ myquota1 @ʵ root I
[root@www ~]# warnquota # |X{TISTNOynTzI ^_^ [root@www ~]# mail N329 root@www.vbird.tsai Fri Mar 6 16:10 27/1007 "NOTE: .... & 329 <==]sHb 329 ʤG From root@www.vbird.tsai Fri Mar 6 16:10:18 2009 Date: Fri, 6 Mar 2009 16:10:17 +0800 From: root <root@www.vbird.tsai> Reply-To: root@myhost.com Subject: NOTE: You are exceeding your allocated disk space limits To: myquota1@www.vbird.tsai Cc: root@www.vbird.tsai <==`NoTAOODB̻Pƥ (CC)C Your disk usage has exceeded the agreed limits on this server <==D Please delete any unnecessary files on following filesystems: /dev/hda3 <==UoX欰oͺϺСyzzTաI Block limits File limits Filesystem used soft hard grace used soft hard grace /dev/hda3 +- 300000 250000 300000 13days 12 0 0 root@localhost <==oӬOĵiToe̪yñWơzաI & exit <==} mail {I |
warnquota i]|ͥTHΫHA]uϥΪ̪ quota WL soft ɡA warnquota ~|oeĵiHաIWeA]ADBTeBñWɵƩb̩OH 褣OLܡH /etc/warnquota աI]WzƬO^AnzѶܡHSYAAiHۤvনI ҥHAiHo˳BzG
[root@www ~]# vi /etc/warnquota.conf # 쩳UoX檺]wȡG SUBJECT = NOTE: You are exceeding your allocated disk space limits <==10 CC_TO = "root@localhost" <==11 MESSAGE = Your disk usage has exceeded the agreed limits\ <==21 on this server|Please delete any unnecessary files on following filesystems:| SIGNATURE = root@localhost <==25 # iHNL令pUҼ˰ڡI SUBJECT = `NGAbtΤW֦ɮeqwgWL̤je\B CC_TO = "root@localhost" <==DAnHLHA_hoӶإiH MESSAGE = AϺЮeqwgWLe\BA|\ ЦbpUɮרtΤARnɮסG| SIGNATURE = Atκz (root@localhost) # b MESSAGE | N_檺NAϱuhNsU@F |
pGAư warnquota A myquota1 N|pUHeG
Subject: `NGAbtΤW֦ɮeqwgWL̤je\B To: myquota1@www.vbird.tsai Cc: root@www.vbird.tsai AϺЮeqwgWLe\BA ЦbpUɮרtΤARnɮסG /dev/hda3 Filesystem used soft hard grace used soft hard grace /dev/hda3 +- 300000 250000 300000 none 11 0 0 Atκz (root@localhost) |
LoӤkäAΦb /var/spool/mail ]z quota ޤA]pGϥΪ̦bo filesystem eqwgzAsHMNUӰաIɴNuݨϥΪ̦ۤvo{ö]ӳo̧RơA Ϊ̬OШD root BzoIDFoNonΡAڭ̫tΦ۰ʪ warnquota OH AiHo˰G
[root@www ~]# vi /etc/cron.daily/warnquota /usr/sbin/warnquota # ASݿIuno@ABNɥH|觋gJYiI [root@www ~]# chmod 755 /etc/cron.daily/warnquota |
ӨCѦW 4:02am ɡAoɮ״N|DʳQAtδNDʪqϺаtBzΤoI
z@@IoNO_ܦnΰڡIܩngJWzɮשOHdݤU@u@Ƶ{ɧڭ̦Aӥ[joI
pGAQnϥ script kӫإߤjqbAåBҦbbإ߮ɴN quota AӦpOnH ꦳ӤkiHҼ{G
P edquota OIs vi Ӷi]wAsetquota ѫOJҥnUȡC LykIoˡG
[root@www ~]# setquota [-u|-g] W block(soft) block(hard) \ > inode(soft) inode(hard) ɮרt # [l myquota5 ȡAõ soft/hard O 100000/200000 [root@www ~]# quota -uv myquota5 Disk quotas for user myquota5 (uid 714): Filesystem blocks quota limit grace files quota limit grace /dev/hda3 80 250000 300000 10 0 0 [root@www ~]# setquota -u myquota5 100000 200000 0 0 /home [root@www ~]# quota -uv myquota5 Disk quotas for user myquota5 (uid 714): Filesystem blocks quota limit grace files quota limit grace /dev/hda3 80 100000 200000 10 0 0 # ݧaIuܹLӡIoNO quota ²}]wykI |
Q@QApGADSQn]wlDAҥHèSWNlHcҦb /var/spool/mail/ ؿWߦ@ partition AMثeADwgSksWΤΥXsμѤFCڭ̪D quota Ow filesystem i]pA]AAO_NLkw mail ϥζq quota OH
~ApGAQnϥΪ̪lHcPaؿ`ϺШϥζqTwASӦpOnH ѩ /home /var/spool/mail ڥiOP@ filesystem (DOΡAϥήڥؿA~iXb@_)A ҥHAӦpio˪ quota OH
SաIJM quota Ow filesystem Ӷi歭A]ASwg /home oӿWߪμѤFA AunG
uno˪@ӤpBJAKKIzaDlN@wBoIMoIz]iH̾ڤPϥΪ̻Psըӳ]w quota MP˪HW觋Ӷi link ʧ@IKKKINPBw藍PϥΪ̴XoIܤKaI ^_^
B̻ͭݭn`NOAѩثes distributions jhϥ SELinux A ]AnipPWؿhɡAb\hpUi|ϥΤWIγ\AonȮ SELinux ~աA ]γ\Aonۦק SELinux Wh~IbLh٦~ɥNAڭ̯ϥΪwЮeqjAXQ GB eqNOjwФFIOYDZpUAڭ̻ݭnܤjeqxsŶA
Ҧpb]Ů~ҦҿXɮפ@Ӯרҳq`ݭnnX GB As]ӴXӮרҡAϺЮeqNΤFC
ɧڸӦpOnHiHzL@xsA٬Ϻа}C
(RAID) NOFCoؾ\OHLǵšHOwBnϺа}CHLinux 䴩˪nϺа}CH
UNڭ̨ӽͽ͡I
Ϻа}CWOy Redundant Arrays of Inexpensive Disks, RAID zA^½NOGeGϺа}CC RAID iHzL@ӧN(nεw)ANhӸpϺоX@ӸjϺи˸mF ӳoӸjϺХ\iOxsӤwAL٨㦳ƫO@\OC RAID ѩܪ (level) PAӨϱoX᪺ϺШ㦳P\A ` level oX(1)G
oؼҦpGϥάۦPPeqϺШӲզɡAĪGΡCoؼҦ RAID |NϺХXq϶ (|ҨӻA 4KB)A M@ɮngJ RAID ɡAɮ|̾ڰ϶jpΦnAA̧ǩUӺϺи̭hCѩCӺϺз|sơA ]AƭngJ RAID ɡAƷ|QqmbUӺϺФWC|ҨӻAAϺвզ RAID-0 A A 100MB ƭngJɡACӺϺз|UQt 50MB xsqCRAID-0 ܷNϦpUҥܡG
WϪNOAbզ RAID-0 ɡACϺ (Disk A P Disk B) |QϹjp϶ (chunk)C ƭngJ RAID ɡAƷ|QΦŦXp϶jpAMA̧Ǥ@Ӥ@Ӫm줣PϺХhC ѩƤwgQΨåB̧ǩm줣PϺФWA]CϺЩҭtdƶqCFIӳo˪pӬݡA VhϺвզ RAID-0 į|VnA]CtdƶqNCFI oܧڪƥiHhϺШxsAMį|ܪnڡI~AϺ`eq]ܤjFI ]CϺЪeq̲|[` RAID-0 `eqI
uOϥΦŧAnۦtƷlIAѤWϧڭ̪DɮOQΦAXCϺФΰ϶jpA MA̧ǩmUӺϺФCQ@QApGY@ϺзlFAɮƱNʤ@Aɳoɮ״NlFC ѩCɮ׳Oo˦sA] RAID-0 un@ϺзlAb RAID WҦƳ|ӵLkŪC
t~ApGϥΤPeqϺШӲզ RAID-0 ɡAѩƬO@q̧ǩm줣PϺФApeqϺЪ϶QΧFA ҦƳNQgJ̤jϺХhC|ҨӻAڥ 200G P 500G զ RAID-0 A ̪쪺 400GB ƥiPɼgJϺ (U 200G eq)AӦA[JƴNugJ 500G ϺФFC ɪįNܮtFA]uѤU@iHsƹI
oؼҦ]OݭnۦPϺЮeqA̦nO@Ҥ@˪ϺаաIpGOPeqϺвզ RAID-1 ɡA`eqNH̤p@ϺЬDIoؼҦDnOyP@ơA㪺OsbϺФWYzC|ҨӻApGڦ@ 100MB ɮסABڶȦϺвզ RAID-1 ɡA oϺбN|PBgJ 100MB L̪xsŶhC ]A RAID eqXG֤F 50%CѩwФe@Ҥ@ˡAnlMӥXӤ@ˡA ҥHڭ̤]٥L mirror Ҧo
pWϩҥܡA@ƶǰe RAID-1 |QѡAäOgJUӺϺиYhC ѩP@Ʒ|QOgJLPϺСA]pGngJ 100MB ɡAƶǰe I/O yƫ|QƻshUӺϺСA GNOƶqPıܤjFI]bjqgJ RAID-1 pUAgJįi|ܪD`t (]ڭ̥u@ӫnڡI)C nbpGAϥΪOw RAID (Ϻа}Cd) ɡAϺа}Cd|Dʪƻs@ӤϥΨtΪ I/O yơAį譱h٥iHC pGϥγnϺа}CAiįNnFC
ѩϺФƤ@Ҥ@ˡAҥH@wзlɡAA٬OiH㪺OdUӪI ҥHڭ̥iHA RAID-1 ̤juIjNbƪƥaILѩϺЮeq@bΦbƥA ]`eq|OϺЮeq@bӤwCM RAID-1 gJįणΡALŪįh٥iHաIoO]ƦbPϺФWApGh processes bŪP@ƮɡA RAID |ۦǫΪŪšC
RAID-0 įΦOƤwARAID-1 ƦwOįणΡAणNo̾X_ӳ]w RAID OH iHڡINO RAID 0+1 RAID 1+0Cҿת RAID 0+1 NOG (1)Ϻвզ RAID 0AåBo˪]w@աF (2)No RAID 0 Aզ@ RAID 1CoNO RAID 0+1 oIϹLӻARAID 1+0 NOզ RAID-1 Aզ RAID-0 NC
pWϩҥܡADisk A + Disk B զĤ@ RAID 0ADisk C + Disk D զĤG RAID 0A MoզAX@ RAID 1CpGڦ 100MB ƭngJAhѩ RAID 1 YA RAID 0 |gJ 100MBAѩ RAID 0 YA]CϺжȷ|gJ 50MB ӤwC p@Ӥ@ RAID 0 ϺзlAunt~@ RAID 0 ٦sbANzL RAID 1 Ӧ^_ơC
ѩ㦳 RAID 0 uIAҥHįoHɡAѩ㦳 RAID 1 uIAҥHƱoHƥC O]ѩ RAID 1 IAҥH`eq|֤@bΨӰƥI
RAID-5 ܤֻݭnTHWϺФ~զoϺа}CCoغϺа}CƼgJI RAID-0 A LCӴ`gJL{AbCϺ٥[J@ӦPˬd (Parity) AoӸƷ|OLϺЪƥơA ΩϺзlɪϴCRAID-5 ŪgpIUoˡG
pWϩҥܡACӴ`gJɡA|PˬdX (parity) QO_ӡAåBOPˬdXCObPϺСA ]A@ӺϺзlɳǥѨLϺЪˬdXӭح쥻ϺФƳILݭn`NOA ѩPˬdXA] RAID 5 `eq|OϺмƶq@CHWϬҡA 쥻 3 ϺХu|ѤU (3-1)=2 ϺЪeqCӥBlϺмƶqjɡAo RAID 5 ƴNlFC ] RAID 5 w]ȯ䴩@ϺЪlpC
bŪgįWAŪį٤IP RAID-0 ILgįNoW[ܦhI oO]ngJ RAID 5 ٱongLpPˬdX (parity) YCѩ[Woӭp⪺ʧ@A ҥHgJįPtΪwYjIרϥγnϺа}CɡAPˬdXOzL CPU hpӫDM¾Ϻа}CdA ]į譱ٻݭnC
t~Aѩ RAID 5 ȯ䴩@ϺЪlA]٦oiXt~@صšANO RAID 6 Ao RAID 6 hϥΨϺЪeq@ parity xsA]骺ϺЮeqN|֨AO\XϺмƶqNiHFFI ]NOb RAID 6 pUAPɨϺзlɡA٬OiHϦ^ӡI
Ϻа}CϺзlɡANonNaϺЩްAMᴫ@sϺСCsϺШåBQҰʺϺа}CA Ϻа}CN|}lDʪ (rebuild) 쥻aϺиƨsϺФWIMAϺа}CWƴN_FI oNOϺа}CuICLAڭ٬OonʤwСAɳq`on~oC
FtΥiHYɪbawЮɥDʪءA]NݭnwƺϺ (spare disk) UC ҿת spare disk NO@ΦhS]tb쥻Ϻа}CŤϺСAoϺХɨä|QϺа}CҨϥΡA Ϻа}CϺзlɡAho spare disk |QDʪԶiϺа}CAñNawвXϺа}CI MߧYظƨtΡCpAtΫhiHëOwdڡIYAϺа}C䴩NFI NaϺЩް@sAANs]w spare disk ANFI
|ҨӻAeҫݪsǦ@ӺϺа}Ci\ 16 ϺЪƶqALڭ̥uwˤF 10 ϺЧ@ RAID 5C CϺЪeq 250GBAڭ̥ΤF@ϺЧ@ spare disk AñNL 9 ]w@ RAID 5A ]oӺϺа}C`eqG (9-1)*250G=2000GCB@F@~u@ϺaFAڭ̫ӬݿO~o{I LtΨSvTOI] spare disk Dʪ[J䴩AaޱsAís]w spare A tΤ٬OLʪIKKIuI
fjAIb̩OHAtΦpGݭnϺа}CܡA꭫IbG
רƪiaʻPʧOϥ RAID ҶqIIwaNnFAnƷliOx۪I ҥH~ɬݭnjq RAID ӰɮרtΪwǡA{bzIAѤFaH
Ϻа}CSwPnOHҿתwϺа}C (hardware RAID) OzLϺа}CdӹF}CتC Ϻа}CdW@MbBz RAID ȡA]bį譱|nCbܦh (Ҧp RAID 5 PˬdXp) Ϻа}Cä|Ʈӭ쥻tΪ I/O yơAzפWį|ΡC~ثe@몺Ϻа}Cd䴩A YbpUlaϺСAtΪ_Pƪiaʤ譱D`nΡC
L@nϺа}CdʤʴNWUxAKybDOWyءzϺа}C\iS䴩Yǰ\A ҦpCDOYϺа}CAq`Ȥ䴩 RAID0 P RAID1 Aw RAID 5 èS䴩C ~A@~tΤ]n֦Ϻа}CdXʵ{A~TϺа}CҲͪϺоI
ѩϺа}Cܦhuq\AMӵwϺа}CdSQܡ]NoiXQγnӼϺа}C\A oNOҿתnϺа}C (software RAID)CnϺа}CDnOzLnӼ}CȡA ]|lӸhtθ귽Ap CPU BP I/O yƪ귽CLثeڭ̪ӤHqbwgD`ֳtFA ]Het{bwgsbIҥHڭ̥iHӪ@nϺа}CI
ڭ̪ CentOS ѪnϺа}C mdadm oMnAoMn|H partition disk ϺЪA]NOAAݭnHWϺСAunӥHWμ (partition) N]pAϺа}CFC~A mdadm 䴩ڭ̫e쪺 RAID0/RAID1/RAID5/spare disk I ӥBѪz٥iHF\AiHuW (ɮרtΥ`ϥ) iμѪI ϥΤW]D`KOI
t~AnDOAwϺа}Cb Linux Uݰ_ӴNO@ڪjϺСA]wϺа}C˸mɦW /dev/sd[a-p] A]ϥΨ SCSI ҲդGCܩnϺа}ChOtμA]ϥΪ˸mɦWOtΪ˸mɡA ɦW /dev/md0, /dev/md1...A̪˸mɦWäۦPIndVFI]ܦhBͱ``ıo_ǡA L RAID ɦWڭ̳o̴ժn RAID ɦWPAҥHo̯SOjջI
nϺа}C]w²OI²AܷQI]AunϥΤ@ӫOYiINO mdadm oӫOC oӫObإ RAID ykIoˡG
[root@www ~]# mdadm --detail /dev/md0 [root@www ~]# mdadm --create --auto=yes /dev/md[0-9] --raid-devices=N \ > --level=[015] --spare-devices=N /dev/sdx /dev/hdx... ﶵPѼơG --create Gإ RAID ﶵF --auto=yes GMwإ߫᭱nϺа}C˸mAY /dev/md0, /dev/md1... --raid-devices=N GϥδXӺϺ (partition) @Ϻа}C˸m --spare-devices=N GϥδXӺϺЧ@ƥ (spare) ˸m --level=[015] G]woպϺа}CšC䴩ܦhALijun 0, 1, 5 Yi --detail G᭱ұӺϺа}C˸mԲӸT |
WykA̫᭱|\h˸mɦWAoǸ˸mɦWiHOϺСAҦp /dev/sdb A ]iHOμѡAҦp /dev/sdb1 CLAoǸ˸mɦW`ƥn --raid-devices P --spare-devices Ӽ`M~IQΧڪվӫظm@ RAID 5 nϺа}Cz@@I ANtθ̭Lhm߹LӥثeΤ쪺μѳqqRG
[root@www ~]# fdisk -l Disk /dev/hda: 41.1 GB, 41174138880 bytes 255 heads, 63 sectors/track, 5005 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Device Boot Start End Blocks Id System /dev/hda1 * 1 13 104391 83 Linux /dev/hda2 14 1288 10241437+ 83 Linux /dev/hda3 1289 1925 5116702+ 83 Linux /dev/hda4 1926 5005 24740100 5 Extended /dev/hda5 1926 2052 1020096 82 Linux swap / Solaris /dev/hda6 2053 2302 2008093+ 83 Linux /dev/hda7 2303 2334 257008+ 82 Linux swap / Solaris /dev/hda8 2335 2353 152586 83 Linux /dev/hda9 2354 2366 104391 83 Linux [root@www ~]# df Filesystem 1K-blocks Used Available Use% Mounted on /dev/hda2 9920624 3858800 5549756 42% / /dev/hda1 101086 21408 74459 23% /boot tmpfs 371332 0 371332 0% /dev/shm /dev/hda3 4956316 1056996 3643488 23% /home # qWiHo{Aڪ /dev/hda6~/dev/hda9 SΨINLRݬݡI [root@www ~]# fdisk /dev/hda Command (m for help): d Partition number (1-9): 9 Command (m for help): d Partition number (1-8): 8 Command (m for help): d Partition number (1-7): 7 Command (m for help): d Partition number (1-6): 6 Command (m for help): p Disk /dev/hda: 41.1 GB, 41174138880 bytes 255 heads, 63 sectors/track, 5005 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Device Boot Start End Blocks Id System /dev/hda1 * 1 13 104391 83 Linux /dev/hda2 14 1288 10241437+ 83 Linux /dev/hda3 1289 1925 5116702+ 83 Linux /dev/hda4 1926 5005 24740100 5 Extended /dev/hda5 1926 2052 1020096 82 Linux swap / Solaris Command (m for help): w [root@www ~]# partprobe # oӰʧ@ܭnIٰOoaIN֤ߪ partition table sI |
UOƱ氵 RAID 5 ҡG
̲קڻݭn 5 1GB partition CѩtζȦ@ϺСAoϺгѾleq 20GB OΪA
μѥNȨϥΨ 5 AҥHns@ RAID 5 ӬODIUӴNOsظmy{oI
peҭzAڻݭn 5 1GB μѡAЧQ fdisk ӫظmaI
[root@www ~]# fdisk /dev/hda Command (m for help): n First cylinder (2053-5005, default 2053): <==U [enter] Using default value 2053 Last cylinder or +size or +sizeM or +sizeK (2053-5005, default 5005): +1000M # Wzʧ@Ч@I Command (m for help): p Disk /dev/hda: 41.1 GB, 41174138880 bytes 255 heads, 63 sectors/track, 5005 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Device Boot Start End Blocks Id System /dev/hda1 * 1 13 104391 83 Linux /dev/hda2 14 1288 10241437+ 83 Linux /dev/hda3 1289 1925 5116702+ 83 Linux /dev/hda4 1926 5005 24740100 5 Extended /dev/hda5 1926 2052 1020096 82 Linux swap / Solaris /dev/hda6 2053 2175 987966 83 Linux /dev/hda7 2176 2298 987966 83 Linux /dev/hda8 2299 2421 987966 83 Linux /dev/hda9 2422 2544 987966 83 Linux /dev/hda10 2545 2667 987966 83 Linux # W 6~10 ANOڭ̻ݭn partition oI Command (m for help): w [root@www ~]# partprobe |
UӴN²աIzL mdadm ӫإߺϺа}CI
[root@www ~]# mdadm --create --auto=yes /dev/md0 --level=5 \ > --raid-devices=4 --spare-devices=1 /dev/hda{6,7,8,9,10} # ԲӪѼƻЦ^heݬoIo̧ڳzL {} Nƪ²ơI [root@www ~]# mdadm --detail /dev/md0 /dev/md0: <==RAID ˸mɦW Version : 00.90.03 Creation Time : Tue Mar 10 17:47:51 2009 <==RAID Qإߪɶ Raid Level : raid5 <==RAID Ŭ RAID 5 Array Size : 2963520 (2.83 GiB 3.03 GB) <== RAID iκϺЮeq Used Dev Size : 987840 (964.85 MiB 1011.55 MB) <==CӸ˸miήeq Raid Devices : 4 <==Χ@ RAID ˸mƶq Total Devices : 5 <==˸mƶq Preferred Minor : 0 Persistence : Superblock is persistent Update Time : Tue Mar 10 17:52:23 2009 State : clean Active Devices : 4 <==Ұʪ(active)˸mƶq Working Devices : 5 <==iʧ@˸mƶq Failed Devices : 0 <==X{~˸mƶq Spare Devices : 1 <==wƺϺЪƶq Layout : left-symmetric Chunk Size : 64K <==NO2.1.4p϶ UUID : 7c60c049:57d60814:bd9a77f1:57e49c5b <==˸m(RAID)ѧOX Events : 0.2 Number Major Minor RaidDevice State 0 3 6 0 active sync /dev/hda6 1 3 7 1 active sync /dev/hda7 2 3 8 2 active sync /dev/hda8 3 3 9 3 active sync /dev/hda9 4 3 10 - spare /dev/hda10 # ̫NOoӸ˸mثepA]A| active sync @ spare I # ܩ RaidDevice hO RAID Ϻж |
ѩϺа}Cظmݭn@ǮɶAҥHA̦nݼƤAϥΡy mdadm --detail /dev/md0 zhd\AϺа}CԲӸTI _hiݨYǺϺХbyspare rebuildingzظmrˡIzLWOA ANإߤ@ RAID5 Bt@ spare disk Ϻа}CoID`²aI FO~AA]iHd\pUɮרӬݬݨtγnϺа}CpG
[root@www ~]# cat /proc/mdstat Personalities : [raid6] [raid5] [raid4] md0 : active raid5 hda9[3] hda10[4](S) hda8[2] hda7[1] hda6[0] <==Ĥ@ 2963520 blocks level 5, 64k chunk, algorithm 2 [4/4] [UUUU] <==ĤG unused devices: <none> |
WzƤnbSOXĤ@PĤG泡(2)G
oؤkiHDثeϺа}CAաI
UӴNO}lϥή榡ƤuաIoN²zIhFAiaI
[root@www ~]# mkfs -t ext3 /dev/md0 # aIO /dev/md0 ˸mQ榡ƩOI [root@www ~]# mkdir /mnt/raid [root@www ~]# mount /dev/md0 /mnt/raid [root@www ~]# df Filesystem 1K-blocks Used Available Use% Mounted on /dev/hda2 9920624 3858820 5549736 42% / /dev/hda1 101086 21408 74459 23% /boot tmpfs 371332 0 371332 0% /dev/shm /dev/hda3 4956316 1056996 3643488 23% /home /dev/md0 2916920 69952 2698792 3% /mnt/raid # ݧaIhF@ /dev/md0 ˸mAӥBuiHAϥΩOI٤I |
UܻyѦBHi֡zA֤]DAϺа}C˸mԣɷ|XtA]A AѤ@UnϺа}Cϴ٬OIUڭ̴NӪ@ϴaIAѤ@U mdadm o譱ykG
[root@www ~]# mdadm --manage /dev/md[0-9] [--add ˸m] [--remove ˸m] \ > [--fail ˸m] ﶵPѼơG --add G|N᭱˸m[Jo md I --remove G|N᭱˸mѳo md --fail G|N᭱˸m]wXA |
Aڭ̨ӳBz@UAӦp@ӺϺܦ~AM spare disk ۰ʪ}lبtΩOH
# 0. ƻs@ǪF /mnt/raid hA]o RAID wgbϥΤF [root@www ~]# cp -a /etc /var/log /mnt/raid [root@www ~]# df /mnt/raid ; du -sm /mnt/raid/* Filesystem 1K-blocks Used Available Use% Mounted on /dev/md0 2916920 188464 2580280 7% /mnt/raid 118 /mnt/raid/etc <==ݧaIT꦳Ʀb̭I 8 /mnt/raid/log 1 /mnt/raid/lost+found # 1. ] /dev/hda8 oӸ˸mXFIڼ觋G [root@www ~]# mdadm --manage /dev/md0 --fail /dev/hda8 mdadm: set /dev/hda8 faulty in /dev/md0 [root@www ~]# mdadm --detail /dev/md0 ....(eٲ).... State : clean, degraded, recovering Active Devices : 3 Working Devices : 4 Failed Devices : 1 <==XϺЦ@ӡI Spare Devices : 1 ....(ٲ).... Number Major Minor RaidDevice State 0 3 6 0 active sync /dev/hda6 1 3 7 1 active sync /dev/hda7 4 3 10 2 spare rebuilding /dev/hda10 3 3 9 3 active sync /dev/hda9 5 3 8 - faulty spare /dev/hda8 # ݨSIoʧ@nְ~|ݨI /dev/hda10 ҰʤF /dev/hda8 F [root@www ~]# cat /proc/mdstat Personalities : [raid6] [raid5] [raid4] md0 : active raid5 hda9[3] hda10[4] hda8[5](F) hda7[1] hda6[0] 2963520 blocks level 5, 64k chunk, algorithm 2 [4/3] [UU_U] [>.......] recovery = 0.8% (9088/987840) finish=14.3min speed=1136K/sec |
WeAonֳtsJ mdadm O~ݪI]A RAID 5 bبtΡI YAݤ@qɶAJ᭱[OAh|ݨpUeFG
# 2. wgǥ spare disk ا RAID 5 p [root@www ~]# mdadm --detail /dev/md0 ....(eٲ).... Number Major Minor RaidDevice State 0 3 6 0 active sync /dev/hda6 1 3 7 1 active sync /dev/hda7 2 3 10 2 active sync /dev/hda10 3 3 9 3 active sync /dev/hda9 4 3 8 - faulty spare /dev/hda8 [root@www ~]# cat /proc/mdstat Personalities : [raid6] [raid5] [raid4] md0 : active raid5 hda9[3] hda10[2] hda8[4](F) hda7[1] hda6[0] 2963520 blocks level 5, 64k chunk, algorithm 2 [4/4] [UUUU] |
ݧaIS_`FIunIڭ̪ /mnt/raid ɮרtάO㪺IäݭnIܴΧaI
Aڭ̦Aإߤ@ӷsμѡAoӤμѭnPLμѤ@ˤj~nIMAQ mdadm ~å[JsI
# 3. إ߷sμ [root@www ~]# fdisk /dev/hda Command (m for help): n First cylinder (2668-5005, default 2668): <==o̫ [enter] Using default value 2668 Last cylinder or +size or +sizeM or +sizeK (2668-5005, default 5005): +1000M Command (m for help): w [root@www ~]# partprobe # ɨtη|h@ /dev/hda11 μѳI # 4. [JsްDϺ [root@www ~]# mdadm --manage /dev/md0 --add /dev/hda11 --remove /dev/hda8 mdadm: added /dev/hda11 mdadm: hot removed /dev/hda8 [root@www ~]# mdadm --detail /dev/md0 ....(eٲ).... 0 3 6 0 active sync /dev/hda6 1 3 7 1 active sync /dev/hda7 2 3 10 2 active sync /dev/hda10 3 3 9 3 active sync /dev/hda9 4 3 11 - spare /dev/hda11 |
KKIAϺа}CƤ@sbAӥBAiH@QB@ /mnt/raid ơAY /dev/hda8 lFIMzLz\N[JsϺХBްaϺСI`NAo@ObWu (on-line) pUiI ҥHAzo˪NNnnΰڡI ^_^
s distribution jh|ۤvjM /dev/md[0-9] Mb}ɭԵ]wnһݭn\CL٬OijAA ק@U]wɧaI ^_^Csoftware RAID ]O]wɪAoӳ]wɦb /etc/mdadm.conf Ioӳ]wɤe²A AunD /dev/md0 UUID N]woɮװաIo̳ȤХL²檺ykG
[root@www ~]# mdadm --detail /dev/md0 | grep -i uuid UUID : 7c60c049:57d60814:bd9a77f1:57e49c5b # ᭱@ơANOoӸ˸mVtεU UUID ѧOXI # }l]w mdadm.conf [root@www ~]# vi /etc/mdadm.conf ARRAY /dev/md0 UUID=7c60c049:57d60814:bd9a77f1:57e49c5b # RAID˸m ѧOXe # }l]w}۰ʱô [root@www ~]# vi /etc/fstab /dev/md0 /mnt/raid ext3 defaults 1 2 [root@www ~]# umount /dev/md0; mount -a [root@www ~]# df /mnt/raid Filesystem 1K-blocks Used Available Use% Mounted on /dev/md0 2916920 188464 2580280 7% /mnt/raid # AoTwiHQAåBSoͥ~I |
pGo̳SX{DIUӴN reboot AtΨõݬݬݯ_QҰʧaI ^_^
DAӴNOnϥγo software RAID (/dev/md0)A_hAեn@ˡANo /dev/md0 I ]LOڭ̦boӴվWm߸˸mڡInLOH]o /dev/md0 ٬OϥΨڭ̨tΪϺФμѡA bҤḽNO /dev/hda{6,7,8,9,10,11}ApGAuON /dev/md0 AMѰON RAID A GNO....ӧAbs /dev/hdaX ɥi|X{@DzW~pաIҥH~ݭn software RAID BJI pOH]O²zI(Ъ`NAT{A /dev/md0 TꤣnΥBnF~i橳UN)
# 1. BR]wɤPo /dev/md0 ]wG [root@www ~]# umount /dev/md0 [root@www ~]# vi /etc/fstab /dev/md0 /mnt/raid ext3 defaults 1 2 # No@RIΪ̬Oѱ]iHI # 2. /dev/md0 kI [root@www ~]# mdadm --stop /dev/md0 mdadm: stopped /dev/md0 <==oIo˴NFI [root@www ~]# cat /proc/mdstat Personalities : [raid6] [raid5] [raid4] unused devices: <none> <==ݧaITꤣsb}C˸mI [root@www ~]# vi /etc/mdadm.conf ARRAY /dev/md0 UUID=7c60c049:57d60814:bd9a77f1:57e49c5b # @˰աIRLάOѥLI |
Q@ӱpAAbWDɭԱN /home uL 50G AϥΪ̲hɭPo filesystem jA ɧA@HhƪBͳOoˡGA[@swСAM᭫sΡB榡ơAN /home Ƨ㪺ƻsLӡA MN쥻 partition ss partition CڡInLڡIYOĤGΫoeqӦhIɭPܦhϺЮeqQOFI AQnNo partition YpɡASӦp@HNWzy{Ad@MIЦFAרƻsܪɶ㦳S²檺kOH INOڭ̳oӤp`nЪ LVM oNI
LVM IbyiHuʪվ filesystem eqIzӨëDbįPƫOWC
ݭnɮתŪgįΪ̬OƪiaʡAаѦҫe RAID p`C
LVM iHXhӹ partition b@_A
o partitions ݰ_ӴNO@ӺϺФ@ˡIӥBA٥iHbӷsWβL partition
o LVM zϺзC p@ӡAӺϺЪŶϥΤWAbO۷㦳uʰڡI
JM LVM onΡANڭ̨@@oNaI
LVM WO Logical Volume ManagerAiH½Ķ@豲bzCҥH٬ybziO]iHN
filesystem b@˦YuGaILVM @kONXӹ骺 partitions ( disk)
zLnզX@ݰ_ӬOWߪjϺ (VG) AMNojϺЦAgLΦiϥΤμ (LV)A
̲״NϥΤFCOo˪tΥiHi filesystem XRYpOHP@Ӻ٬ PE ئI
Uڭ̴NonwoXӶبӦnnI
ڭ̹ڪ partition ݭnվtѧOX (system ID) 8e (LVM ѧOX)AMAgL
pvcreate ONLন LVM ̩h𫚭b (PV) A~No PV [HQΡI
վ system ID ONOzL fdisk աI
ҿת LVM jϺдNON\h PV Xo VG FNOաIҥH VG NO LVM զX_ӪjϺСIoQNnFC
oӤjϺг̤jiHh֮eqOHoPUn PE H LVM 榡bw]pUA
lvm2 i|ϥ lvm1 xs榡AӮ榡 LV ̤jȯ䴩 65534 PE ӤwC
ҥHApGϥ LVM w]Ѽ (CentOS 5.x 32 줸ϥ lvm2 nBlvm1 榡)Ah@ VG
̤jiF 256GB eqڡI(ѦҩU PE )
LVM w]ϥ 4MB PE ϶A LVM LV ̦hȯt 65534 PE (lvm1 榡)A]w] LVM LV |
4M*65534/(1024M/G)=256GCo PE ܦILO LVM ̤pxs϶A]NOAڭ̪ɮƳOǥѼgJ
PE ӳBzC²檺Ao PE NIɮרtθ̭ block jpC
o˻ӴNnzѤFaHҥHվ PE |vT LVM ̤jeqILAb CentOS 6.x HAѩϥ lvm2
U榡\A]oӭwgsbFC
̲ת VG ٷ|Q LVAo LV NO̫iHQ榡ƨϥΪμѪNNFI LV O_iHHNwjpOH MiHIJM PE O LVM ̤pxsA LV jpNPb LV PE `ƦC FKϥΪ̧Q LVM ӺztΡA] LV ˸mɦWq`wy /dev/vgname/lvname z˦I
~Aڭ̭観ͨ LVM iuʪܧ filesystem eqAOp쪺HLNOzLy洫 PE zӶiഫA N쥻 LV PE L˸mHC LV eqAαNL˸m PE [즹 LV H[jeqI VGBLV P PE YIUϡG
pWϩҥܡAVG PE |u LVApGӳo VG nXRܡA[WL PV YiC
ӳ̭n LV pGnXRܡA]OzL[J VG SϥΨ쪺 PE XRI
zL PV, VG, LV WAAQ mkfs NiHNA LV 榡ƦiHQΪɮרtΤFIӥBoɮרtΪeqbٯiXRδ֡A ӥB̭٤|QvTIbOܡy֮աIz@譱npiOH²OI Ӭy{Ѱ¦̲תGiHoˬݡG
p@ӡAڭ̴NiHQ LV oӪNӶitΪFCLAAӭnıo_ǪOA ڪƼgJo LV ɡA쩳LOgJwзH InDA̾ڼgJPAӦؤ觋G
WALVM ̥DnγBOb{@ӥiHuʽվeqɮרtΤWA ӤObإߤ@ӮįରDϺФWAҥHAڭӧQΪO LVM iHuʺz partition jpγ~WAӤO۲bįWC]A LVM w]ŪgҦOuʼҦաI pGAϥ triped ҦAn`NA@ partition ykѡzɡAҦƳ|ylzI ҥHաAOܾAXϥγoؼҦաIpGnjծįPƥANϥ RAID YiA ݭnΨ LVM ڡI
LVM ݭn֤ߦ䴩Bݭnw lvm2 oӳnAnΦbOA CentOS PLs distributions wgw]N lvm 䴩Pn鳣w˧FIҥHAݭn߳o譱DIδNFI
ϥΪվSnXʤFIڭ̤~m߹L RAIDAnN@ثeSΨ쪺μѥA MAطsμѡCåBѩȦ@ 40GB ϺСAҥHUm߳ȰwP@ϺШӧ@C ڪnDIoˡG
NJӪйΤFAбzۦѦĤK fdisk ӹFUdҡG(`NGקtѧOXШϥ t o fdisk OӳBzYi)
[root@www ~]# fdisk /dev/hda <==Ly{ЦۦѦҲĤKBz [root@www ~]# partprobe <==OѰOoӰʧ@FInI [root@www ~]# fdisk -l Disk /dev/hda: 41.1 GB, 41174138880 bytes 255 heads, 63 sectors/track, 5005 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Device Boot Start End Blocks Id System /dev/hda1 * 1 13 104391 83 Linux /dev/hda2 14 1288 10241437+ 83 Linux /dev/hda3 1289 1925 5116702+ 83 Linux /dev/hda4 1926 5005 24740100 5 Extended /dev/hda5 1926 2052 1020096 82 Linux swap / Solaris /dev/hda6 2053 2235 1469916 8e Linux LVM /dev/hda7 2236 2418 1469916 8e Linux LVM /dev/hda8 2419 2601 1469916 8e Linux LVM /dev/hda9 2602 2784 1469916 8e Linux LVM |
W /dev/hda{6,7,8,9} o|ӤμѴNOڭ̪μѡI]NOU|ڥΨ쪺TI
`NݡA 8e X{|ɭP system ܦy Linux LVM zIS]w 8e ]SYA
LY LVM Oi| partition NOFIUӡAN@Ӥ@ӪBzUy{aI
nإ PV ²Aunϥ pvcreate YiIڭ̨ӽͤ@ͻP PV OaI
N@@@aI
# 1. ˬdL PV btΤWAMN /dev/hda6~/dev/hda9 إߦ PV 榡 [root@www ~]# pvscan No matching physical volumes found <==䤣 PV sbI [root@www ~]# pvcreate /dev/hda{6,7,8,9} Physical volume "/dev/hda6" successfully created Physical volume "/dev/hda7" successfully created Physical volume "/dev/hda8" successfully created Physical volume "/dev/hda9" successfully created # oӫOiH@fإ߳o| partition PV աI`NjAγ~ [root@www ~]# pvscan PV /dev/hda6 lvm2 [1.40 GB] PV /dev/hda7 lvm2 [1.40 GB] PV /dev/hda8 lvm2 [1.40 GB] PV /dev/hda9 lvm2 [1.40 GB] Total: 4 [5.61 GB] / in use: 0 [0 ] / in no VG: 4 [5.61 GB] # oNOܨC PV TPtΩҦ PV TCר̫@AܪOG # PV q / wgQϥΨ VG PV q / Ѿl PV q # 2. ԲӪCܥXtΤWC PV ӧOTG [root@www ~]# pvdisplay "/dev/hda6" is a new physical volume of "1.40 GB" --- NEW Physical volume --- PV Name /dev/hda6 <==ڪ partition ˸mW VG Name <==]|tXhAҥHťաI PV Size 1.40 GB <==NOeq Allocatable NO <==O_wQtAGO NO PE Size (KByte) 0 <==b PV PE jp Total PE 0 <==@ΥXX PE Free PE 0 <==SQ LV α PE Allocated PE 0 <==|itXh PE ƶq PV UUID Z13Jk5-RCls-UJ8B-HzDa-Gesn-atku-rf2biN ....(Uٲ).... # ѩ PE Obإ VG ɤ~ѼơA]bo̬ݨ쪺 PV Y PE |O 0 # ӥB]Shl PE iѤt (allocatable)C |
OA@O²Io˴NN PV إߤFoI²줣aI ^_^I~Ӫ VG hI
إ VG VG O]֡Aڭ̨ӬݬݡG
P PV POA VG W٬OۭqIڭ̪D PV W٨NO partition ˸mɦWA Oo VG W٫hiHHKAۤvڡIbUҤlAڱN VG W٨W vbirdvg Cإ߳o VG y{Oo˪G
[root@www ~]# vgcreate [-s N[mgt]] VGW PVW ﶵPѼơG -s G᭱ PE jp (size) AiHO m, g, t (jpgi) # 1. N /dev/hda6-8 إߦ@ VGABw PE 16MB I [root@www ~]# vgcreate -s 16M vbirdvg /dev/hda{6,7,8} Volume group "vbirdvg" successfully created [root@www ~]# vgscan Reading all physical volumes. This may take a while... Found volume group "vbirdvg" using metadata type lvm2 # Tsbo vbirdvg VG աI [root@www ~]# pvscan PV /dev/hda6 VG vbirdvg lvm2 [1.39 GB / 1.39 GB free] PV /dev/hda7 VG vbirdvg lvm2 [1.39 GB / 1.39 GB free] PV /dev/hda8 VG vbirdvg lvm2 [1.39 GB / 1.39 GB free] PV /dev/hda9 lvm2 [1.40 GB] Total: 4 [5.57 GB] / in use: 3 [4.17 GB] / in no VG: 1 [1.40 GB] # KKIo{SIT PV QΥhAѤU@ /dev/hda9 PV SQαI [root@www ~]# vgdisplay --- Volume group --- VG Name vbirdvg System ID Format lvm2 Metadata Areas 3 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 3 Act PV 3 VG Size 4.17 GB <==骺 VG eqoj PE Size 16.00 MB <==C PE jp Total PE 267 <==`@ PE ƶq@ohI Alloc PE / Size 0 / 0 Free PE / Size 267 / 4.17 GB VG UUID 4VU5Jr-gwOq-jkga-sUPx-vWPu-PmYm-dZH9EO # ̫ᨺTNO PE ϥΪpIѩ|X LVA]Ҧ PE # iۥѨϥΡC |
o˴Nإߤ@ VG FI]ڭ̭nW[o VG eqA]ڭ٦ /dev/hda9 IɧAiHo˰G
# 2. NѾl PV (/dev/hda9) ᵹ vbirdvg aI [root@www ~]# vgextend vbirdvg /dev/hda9 Volume group "vbirdvg" successfully extended [root@www ~]# vgdisplay ....(eٲ).... VG Size 5.56 GB PE Size 16.00 MB Total PE 356 Alloc PE / Size 0 / 0 Free PE / Size 356 / 5.56 GB VG UUID 4VU5Jr-gwOq-jkga-sUPx-vWPu-PmYm-dZH9EO # WAaIo˴NiH VG jpڡI |
ڭ̦hF@Ӹ˸mIUӬo vbirdvg iΧaIzL LV \ӳBzI
гyX VG oӤjϺФAAӴNOnإߤΰϰաIoӤΰϴNOҿת LV oI]ڭnN诊 vbirdvg ϺСAΦ vbirdlv A VG eqQt vbirdlv ̭hIӬݬݯϥΪOANu@FI
[root@www ~]# lvcreate [-L N[mgt]] [-n LVW] VGW [root@www ~]# lvcreate [-l N] [-n LVW] VGW ﶵPѼơG -L G᭱eqAeqiHO M,G,T An`NOA̤p쬰 PEA ]oӼƶqnO PE ơAY۲šAtη|ۦp̬۪eqC -l G᭱iH PE yӼơzAӤOƶqCYnoAonۦp PE ơC -n G᭱NO LV WٰաI hӥiHۦd\aI man lvcreate # 1. N vbirdvg qqt vbirdlv ڡAn`NA PE @ 356 ӡC [root@www ~]# lvcreate -l 356 -n vbirdlv vbirdvg Logical volume "vbirdlv" created # ѩרҤC PE 16M A]WzO]iHϥΦpU觋ӫإߡG # lvcreate -L 5.56G -n vbirdlv vbirdvg [root@www ~]# ll /dev/vbirdvg/vbirdlv lrwxrwxrwx 1 root root 27 Mar 11 16:49 /dev/vbirdvg/vbirdlv -> /dev/mapper/vbirdvg-vbirdlv # ݨFSڡIoNOڭ̳̭n@ӪNFI [root@www ~]# lvdisplay --- Logical volume --- LV Name /dev/vbirdvg/vbirdlv <==oӤ~O LV WI VG Name vbirdvg LV UUID 8vFOPG-Jrw0-Runh-ug24-t2j7-i3nA-rPEyq0 LV Write Access read/write LV Status available # open 0 LV Size 5.56 GB <==o LV eqojI Current LE 356 Segments 4 Allocation inherit Read ahead sectors auto - currently set to 256 Block device 253:0 |
p@ӡA partition ]dzƦnաIUӡANOwo LV ӳBzաInSO`NOA VG W٬ vbirdvg A
O LV WϥΥWIYO /dev/vbirdvg/vbirdlv ~I
BzOo˪IoI즸IJ LVM BͫܮedI
oӳڴNAh[FIӶiaI
# 1. 榡ơBP[ڭ̪ LV aI [root@www ~]# mkfs -t ext3 /dev/vbirdvg/vbirdlv <==`N LV WI [root@www ~]# mkdir /mnt/lvm [root@www ~]# mount /dev/vbirdvg/vbirdlv /mnt/lvm [root@www ~]# df Filesystem 1K-blocks Used Available Use% Mounted on /dev/hda2 9920624 3858984 5549572 42% / /dev/hda3 4956316 1056996 3643488 23% /home /dev/hda1 101086 21408 74459 23% /boot tmpfs 371332 0 371332 0% /dev/shm /dev/mapper/vbirdvg-vbirdlv 5741020 142592 5306796 3% /mnt/lvm [root@www ~]# cp -a /etc /var/log /mnt/lvm |
LV W٫ظm /dev/vbirdvg/vbirdlv OFϥΪ̪ıڭ̩һݭnơA ڤW LVM ϥΪ˸mOm /dev/mapper/ ؿUIҥHA~|ݨWSr鳡C zLo˪\Aڭ̲{bwgظmn@ LV FIAiHۥѪ /mnt/lvm Ҧ귽I
ڭ̤O LVM ̤jSNOuʽվϺЮeqܡHnIڭ̴NӳBz@UApGnj LV eqɡA Ӧpi槹㪺BJOH@IIAuno˰YiG
𫟺̫@ӨBJ̭nIڭ̦bĤKDA ɮרtΦb̪榡ƪɭԴNإߤF inode/block/superblock TAnܳoǸTOI L]ɮרtή榡ƪɭԫظmOh block group A]ڭ̥iHzLbɮרtηW[ block group 觋ӼWɮרtΪqIӼW block group NOQ resize2fs աIҥH̫@BOwɮרtΨӳBzA eXBhOw LVM ڮeqjpI
# 1. BzX@ 3GB s partition AbtΤӬO /dev/hda10 [root@www ~]# fdisk /dev/hda <==Lʧ@ЦۦBz [root@www ~]# partprobe [root@www ~]# fdisk -l Device Boot Start End Blocks Id System ....(ٲ).... /dev/hda10 2785 3150 2939863+ 8e Linux LVM # oӴNOڭ̭ns partition oI # 2. إ߷s PVG [root@www ~]# pvcreate /dev/hda10 Physical volume "/dev/hda10" successfully created [root@www ~]# pvscan PV /dev/hda6 VG vbirdvg lvm2 [1.39 GB / 0 free] PV /dev/hda7 VG vbirdvg lvm2 [1.39 GB / 0 free] PV /dev/hda8 VG vbirdvg lvm2 [1.39 GB / 0 free] PV /dev/hda9 VG vbirdvg lvm2 [1.39 GB / 0 free] PV /dev/hda10 lvm2 [2.80 GB] Total: 5 [8.37 GB] / in use: 4 [5.56 GB] / in no VG: 1 [2.80 GB] # iHݨ /dev/hda10 Os[JåB|QϥΪI # 3. [j VG AQ vgextend \I [root@www ~]# vgextend vbirdvg /dev/hda10 Volume group "vbirdvg" successfully extended [root@www ~]# vgdisplay --- Volume group --- VG Name vbirdvg System ID Format lvm2 Metadata Areas 5 Metadata Sequence No 4 VG Access read/write VG Status resizable MAX LV 0 Cur LV 1 Open LV 1 Max PV 0 Cur PV 5 Act PV 5 VG Size 8.36 GB PE Size 16.00 MB Total PE 535 Alloc PE / Size 356 / 5.56 GB Free PE / Size 179 / 2.80 GB VG UUID 4VU5Jr-gwOq-jkga-sUPx-vWPu-PmYm-dZH9EO # VG ܤjFIӥBѾl PE @ 179 ӡAeqh 2.80G # 4. j LV aIQ lvresize \ӼW[I [root@www ~]# lvresize -l +179 /dev/vbirdvg/vbirdlv Extending logical volume vbirdlv to 8.36 GB Logical volume vbirdlv successfully resized # o˴NW[F LV FIlvresize yk²AWP˳zL -l -L ӼW[I # YnW[hϥ + AYn֫hϥ - IԲӪﶵаѦ man lvresize oI [root@www ~]# lvdisplay --- Logical volume --- LV Name /dev/vbirdvg/vbirdlv VG Name vbirdvg LV UUID 8vFOPG-Jrw0-Runh-ug24-t2j7-i3nA-rPEyq0 LV Write Access read/write LV Status available # open 1 LV Size 8.36 GB Current LE 535 Segments 5 Allocation inherit Read ahead sectors auto - currently set to 256 Block device 253:0 [root@www ~]# df /mnt/lvm Filesystem 1K-blocks Used Available Use% Mounted on /dev/mapper/vbirdvg-vbirdlv 5741020 261212 5188176 5% /mnt/lvm |
ݨFaH̲תG LV uj 8.36GB IOɮרtΫoS۹W[I ӥBAڭ̪ LVM iHuWBzAäݭnSOL umount IuOHʤơI O٬OonBz@UɮרtΪeqաI}l[@UɮרtΡAMϥ resize2fs ӳBz@UaI
# 5.1 ݤ@U쥻ɮרtΤ superblock OpaI [root@www ~]# dumpe2fs /dev/vbirdvg/vbirdlv dumpe2fs 1.39 (29-May-2006) ....(ٲ).... Block count: 1458176 <==ofilesystem block ` ....(ٲ).... Blocks per group: 32768 <==h֭ block ]w@ block group Group 0: (Blocks 0-32767) <==A block X ....(ٲ).... Group 44: (Blocks 1441792-1458175) <==oOtΤ̫@ group ....(᭱ٲ).... # 5.2 resize2fs yk [root@www ~]# resize2fs [-f] [device] [size] ﶵPѼơG -f Gji resize ʧ@I [device]G˸mɮצW١F [size] GiH[]iH[CpG[W size ܡANn@ӳA Ĵp M, G CpGS size ܡAw]ϥΡy partitionz eqӳBzI # 5.3 㪺N LV eqXR filesystem aI [root@www ~]# resize2fs /dev/vbirdvg/vbirdlv resize2fs 1.39 (29-May-2006) Filesystem at /dev/vbirdvg/vbirdlv is mounted on /mnt/lvm; on-line resizing Performing an on-line resize of /dev/vbirdvg/vbirdlv to 2191360 (4k) blocks. The filesystem on /dev/vbirdvg/vbirdlv is now 2191360 blocks long. # iȧaIo@ lvm M٥iHuWi resize \IunI [root@www ~]# df /mnt/lvm Filesystem 1K-blocks Used Available Use% Mounted on /dev/mapper/vbirdvg-vbirdlv 8628956 262632 7931368 4% /mnt/lvm [root@www ~]# ll /mnt/lvm drwxr-xr-x 105 root root 12288 Mar 11 16:59 etc drwxr-xr-x 17 root root 4096 Mar 11 14:17 log drwx------ 2 root root 16384 Mar 11 16:59 lost+found # ƻsihƥi٬OsbIèSI |
KKIujFaIӥBpGAwgƦb LVM ϰϷܡIoӸƬO|I٬O~sb쥻ϰϷաI Ӱʧ@Mo²NFI쥻٬O@sbӤ|zA LVM nnΰڡI
~ApGAAH dumpe2fs ˬd /dev/vbirdvg/vbirdlv ɡAN|o{ Group W[FI pG٬OdMO block group ɡAЦ^ĤKݤ@Uӳ1.3.1ЧaI
W@p`ڭ̽ͨ쪺OjeqA{bӽͨ쪺OYpeqI]ڭ̷QN /dev/hda6 XӡI ӦpBzڡHNW@p`y{LӧYiڡIڭ̴NӪaI
# 1. X /dev/hda6 eqjpAùխpɮרtλYph [root@www ~]# pvdisplay --- Physical volume --- PV Name /dev/hda6 VG Name vbirdvg PV Size 1.40 GB / not usable 11.46 MB Allocatable yes (but full) PE Size (KByte) 16384 Total PE 89 Free PE 0 Allocated PE 89 PV UUID Z13Jk5-RCls-UJ8B-HzDa-Gesn-atku-rf2biN # qo̥iHݥX /dev/hda6 hjAӥBt 89 PE qI # pGnϥ resize2fs ɡAh`qh 1.40GB NFI [root@www ~]# pvscan PV /dev/hda6 VG vbirdvg lvm2 [1.39 GB / 0 free] PV /dev/hda7 VG vbirdvg lvm2 [1.39 GB / 0 free] PV /dev/hda8 VG vbirdvg lvm2 [1.39 GB / 0 free] PV /dev/hda9 VG vbirdvg lvm2 [1.39 GB / 0 free] PV /dev/hda10 VG vbirdvg lvm2 [2.80 GB / 0 free] Total: 5 [8.36 GB] / in use: 5 [8.36 GB] / in no VG: 0 [0 ] # qWiHo{pG /dev/hda6 hѾleqG1.39*3+2.8=6.97 # 2. NCɮרtΪeqaI [root@www ~]# resize2fs /dev/vbirdvg/vbirdlv 6900M resize2fs 1.39 (29-May-2006) Filesystem at /dev/vbirdvg/vbirdlv is mounted on /mnt/lvm; on-line resizing On-line shrinking from 2191360 to 1766400 not supported. # eqngpIơA] 6.9G O~ANϥ 6900M FC # ~AjiHuWiAYpɮרtΦGLk䴩IҥHno˰G [root@www ~]# umount /mnt/lvm [root@www ~]# resize2fs /dev/vbirdvg/vbirdlv 6900M resize2fs 1.39 (29-May-2006) Please run 'e2fsck -f /dev/vbirdvg/vbirdlv' first. # Lnڭ̥iϺˬdIoINiaI [root@www ~]# e2fsck -f /dev/vbirdvg/vbirdlv e2fsck 1.39 (29-May-2006) 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/vbirdvg/vbirdlv: 2438/1087008 files (0.1% non-contiguous), [root@www ~]# resize2fs /dev/vbirdvg/vbirdlv 6900M resize2fs 1.39 (29-May-2006) Resizing the filesystem on /dev/vbirdvg/vbirdlv to 1766400 (4k) blocks. The filesystem on /dev/vbirdvg/vbirdlv is now 1766400 blocks long. # A resize2fs @N\FIpWҥܰڡI [root@www ~]# mount /dev/vbirdvg/vbirdlv /mnt/lvm [root@www ~]# df /mnt/lvm Filesystem 1K-blocks Used Available Use% Mounted on /dev/mapper/vbirdvg-vbirdlv 6955584 262632 6410328 4% /mnt/lvm |
MAӴNON LV eqCIn`NOAڭ̷QnO /dev/hda6Ao PV 89 PE (W pvdisplay dߨ쪺G)CҥHno˶iG
# 3. C LV eqAPɧڭ̪D /dev/hda6 89 PE [root@www ~]# lvresize -l -89 /dev/vbirdvg/vbirdlv WARNING: Reducing active and open logical volume to 6.97 GB THIS MAY DESTROY YOUR DATA (filesystem etc.) Do you really want to reduce vbirdlv? [y/n]: y Reducing logical volume vbirdlv to 6.97 GB Logical volume vbirdlv successfully resized # |ĵiTIOڭ̪ڸƶq٬O 6.97G pAҥHN y UhaI [root@www ~]# lvdisplay --- Logical volume --- LV Name /dev/vbirdvg/vbirdlv VG Name vbirdvg LV UUID 8vFOPG-Jrw0-Runh-ug24-t2j7-i3nA-rPEyq0 LV Write Access read/write LV Status available # open 1 LV Size 6.97 GB Current LE 446 Segments 5 Allocation inherit Read ahead sectors auto - currently set to 256 Block device 253:0 |
²aIo˴NN LV YpFIUӴNnN /dev/hda6 X vbirdvg o VG ~oI ڭ̱onTw /dev/hda6 ̭ PE QϥΫA~N /dev/hda6 I ҥHono˶iG
# 4.1 T{ /dev/hda6 O_N PE FI [root@www ~]# pvdisplay --- Physical volume --- PV Name /dev/hda6 VG Name vbirdvg PV Size 1.40 GB / not usable 11.46 MB Allocatable yes (but full) PE Size (KByte) 16384 Total PE 89 Free PE 0 Allocated PE 89 PV UUID Z13Jk5-RCls-UJ8B-HzDa-Gesn-atku-rf2biN ....(ٲ).... --- Physical volume --- PV Name /dev/hda10 VG Name vbirdvg PV Size 2.80 GB / not usable 6.96 MB Allocatable yes PE Size (KByte) 16384 Total PE 179 Free PE 89 Allocated PE 90 PV UUID 7MfcG7-y9or-0Jmb-H7RO-5Pa5-D3qB-G426Vq # dFѥbѡASQϥΪ PE Mb /dev/hda10 Iɱonh PE oI [root@www ~]# pvmove /dev/hda6 /dev/hda10 # pvmove ӷPV ؼPV AiHN /dev/hda6 PE qqʨ /dev/hda10 # |QϥΪ PE h (Free PE)C # 4.2 N /dev/hda6 X vbirdvg I [root@www ~]# vgreduce vbirdvg /dev/hda6 Removed "/dev/hda6" from volume group "vbirdvg" [root@www ~]# pvscan PV /dev/hda7 VG vbirdvg lvm2 [1.39 GB / 0 free] PV /dev/hda8 VG vbirdvg lvm2 [1.39 GB / 0 free] PV /dev/hda9 VG vbirdvg lvm2 [1.39 GB / 0 free] PV /dev/hda10 VG vbirdvg lvm2 [2.80 GB / 0 free] PV /dev/hda6 lvm2 [1.40 GB] Total: 5 [8.37 GB] / in use: 4 [6.97 GB] / in no VG: 1 [1.40 GB] [root@www ~]# pvremove /dev/hda6 Labels on physical volume "/dev/hda6" successfully wiped |
ܦaIo˧AɮרtΥHιڪ LV P VG qqܤpFAӥB /dev/hda6 ٯuiHXӡI iHiLγ~աID`²aI
{bAD LVM nBAӦpGAQnW[Y LVM eqɡANiHzLoөjBYp\ӳBzC LVM Foǥ\ध~A٦OOHL٦@ӭnOANOtΧַ (snapshot)C OtΧַӰڡHַӴNONɪtθTOUӡANnӬ۰O@I ӭYƧʤFAhlƷ|QhַӰϡASQʪϰhѧַӰϻPɮרtΦ@ɡC nAڭ̥ιϸѻ@UnFG
Ϭ̪ظmtΧַӰϪpALVM |wd@Ӱϰ (ϪT PE ϶) @ƦsBC ɧַӰϤèSơAַӰϻPtΰϦ@ɩҦ PE ơA ]A|ݨַӰϪePɮרtάO@Ҥ@˪C tιB@@}lA] A ϰ쪺ƳQʤF (Wkϩҥ)Ahʫetη|NӰϰ쪺ƲʨַӰA ҥHbkϪַӰϳQΤF@ PE AAӨL B I ϶h٬OPɮרtΦ@ΡI
ӳo˪pӬݡALVM tΧַӬOD`ΪyƥuzA]LuƥQʨ쪺ơA ɮרtΤSQܧƨ«Ob쥻϶AO LVM ַӥ\|DǸƩmb̡A ]yַӡzɪɮרtδNoHyƥzUӡABַөҦΪeqSD`pIҥHzAoOܴΪuSOH
ַӰϭnpإPϥΩOHAѩַӰϻP쥻 LV @Ϋܦh PE ϶A]ַӰϻPQַӪ LV nbP@ VG WYCOڭ̭N /dev/hda6 vbirdvg
FAثe vbirdvg ѤUeq 0 I]AboӤp`̭ڭ̱onA[J /dev/hda6 ڭ̪ VG A
~~إߧַӰoIUʧ@AӪݡI
Uʧ@DnbW[ݭn VG eqAMAzL lvcreate -s \إߧַӰ
# 1. [ VG ٳѤUhֳѾleq [root@www ~]# vgdisplay --- Volume group --- VG Name vbirdvg ....(Lٲ).... VG Size 6.97 GB PE Size 16.00 MB Total PE 446 Alloc PE / Size 446 / 6.97 GB Free PE / Size 0 / 0 <==Shl PE iΡI # 2. N貾 /dev/hda6 [Jo VG aI [root@www ~]# pvcreate /dev/hda6 Physical volume "/dev/hda6" successfully created [root@www ~]# vgextend vbirdvg /dev/hda6 Volume group "vbirdvg" successfully extended [root@www ~]# vgdisplay --- Volume group --- VG Name vbirdvg ....(Lٲ).... VG Size 8.36 GB PE Size 16.00 MB Total PE 535 Alloc PE / Size 446 / 6.97 GB Free PE / Size 89 / 1.39 GB <==hXF 89 PE ioI # 3. Q lvcreate إߨtΧַӰϡAڭ̨W vbirdssAB 60 PE [root@www ~]# lvcreate -l 60 -s -n vbirdss /dev/vbirdvg/vbirdlv Logical volume "vbirdss" created # WzO̭nO -s ﶵINO snapshot ַӥ\धNI # -n ַ᭱ӰϪ˸mW١A /dev/.... hOnQַӪ LV ɦWC # -l ᭱hOϥΦh֭ PE ӧ@oӧַӰϨϥΡC [root@www ~]# lvdisplay --- Logical volume --- LV Name /dev/vbirdvg/vbirdss VG Name vbirdvg LV UUID K2tJ5E-e9mI-89Gw-hKFd-4tRU-tRKF-oeB03a LV Write Access read/write LV snapshot status active destination for /dev/vbirdvg/vbirdlv LV Status available # open 0 LV Size 6.97 GB <==QַӪ LV ϺЮeq Current LE 446 COW-table size 960.00 MB <==ַӰϪڮeq COW-table LE 60 <==ַӰϦΪ PE ƶq Allocated to snapshot 0.00% Snapshot chunk size 4.00 KB Segments 1 Allocation inherit Read ahead sectors auto - currently set to 256 Block device 253:1 |
zݬݡIo /dev/vbirdvg/vbirdss ַӰϴNQإ߰_ӤFIӥBL VG qMP쥻 /dev/vbirdvg/vbirdlv ۦPI]NOApGAuoӸ˸mɡAݨ쪺Ʒ|쥻 vbirdlv ۦPIڭ̴NӴլݬݡG
[root@www ~]# mkdir /mnt/snapshot [root@www ~]# mount /dev/vbirdvg/vbirdss /mnt/snapshot [root@www ~]# df Filesystem 1K-blocks Used Available Use% Mounted on /dev/hda2 9920624 3859032 5549524 42% / /dev/hda3 4956316 1056996 3643488 23% /home /dev/hda1 101086 21408 74459 23% /boot tmpfs 371332 0 371332 0% /dev/shm /dev/mapper/vbirdvg-vbirdlv 6955584 262632 6410328 4% /mnt/lvm /dev/mapper/vbirdvg-vbirdss 6955584 262632 6410328 4% /mnt/snapshot # SݨIoөNNMO@Ҥ@˳Iڭ̮ڥSʹL # /dev/vbirdvg/vbirdss aILo̭|DʰO vbirdlv eI [root@www ~]# umount /mnt/snapshot # ̫NLIڭ̷dzƨӪ쪺FI |
Aڭ̨Ӫ@UApQΧַӰϴ_tΧaILAn`NOAAn_쪺ƶqַӰϩүtڮeqCѩlƷ|QhַӰϡA pGAַӰϤjAYlƳQʪڸƶqַӰϤjAַӰϷMeǤFAoɭԧַӥ\|ijI ҥHWרҤ~ 60 PE (@ 900MB) @ַӰϦsƥΡC
ڭ̪ /mnt/lvm wg /mnt/lvm/etc, /mnt/lvm/log ؿFAUӧڭ̱NoɮרtΪe@ܧA MAHַӰϸ٭ݬݡG
# 1. N쥻 /dev/vbirdvg/vbirdlv e@ܧAWW@ǥؿaI [root@www ~]# df /mnt/lvm Filesystem 1K-blocks Used Available Use% Mounted on /dev/mapper/vbirdvg-vbirdlv 6955584 262632 6410328 4% /mnt/lvm [root@www ~]# ll /mnt/lvm drwxr-xr-x 105 root root 12288 Mar 11 16:59 etc drwxr-xr-x 17 root root 4096 Mar 11 14:17 log drwx------ 2 root root 16384 Mar 11 16:59 lost+found [root@www ~]# rm -r /mnt/lvm/log [root@www ~]# cp -a /boot /lib /sbin /mnt/lvm [root@www ~]# ll /mnt/lvm drwxr-xr-x 4 root root 4096 Dec 15 16:28 boot drwxr-xr-x 105 root root 12288 Mar 11 16:59 etc drwxr-xr-x 14 root root 4096 Sep 5 2008 lib drwx------ 2 root root 16384 Mar 11 16:59 lost+found drwxr-xr-x 2 root root 12288 Sep 5 2008 sbin # ݰ_ӸƤwg@ˤFI [root@www ~]# lvdisplay /dev/vbirdvg/vbirdss --- Logical volume --- LV Name /dev/vbirdvg/vbirdss VG Name vbirdvg ....(ٲ).... Allocated to snapshot 12.22% ....(Uٲ).... # qo̤]ݱoXӡAַӰϤwgQϥΤF 12.22% I]lɮרtΦʹLI # 2. QΧַӰϱN쥻 filesystem ƥ [root@www ~]# mount /dev/vbirdvg/vbirdss /mnt/snapshot [root@www ~]# df Filesystem 1K-blocks Used Available Use% Mounted on /dev/mapper/vbirdvg-vbirdlv 6955584 370472 6302488 6% /mnt/lvm /dev/mapper/vbirdvg-vbirdss 6955584 262632 6410328 4% /mnt/snapshot # ݧaI̽Tꤣ@ˤFI}lNַӰϤeƻsXӧaI [root@www ~]# mkdir -p /backups <==T{uoӥؿI [root@www ~]# cd /mnt/snapshot [root@www snapshot]# tar -jcv -f /backups/lvm.tar.bz2 * # ɧAN|@ӳƥơAYO /backups/lvm.tar.bz2 FI |
nƥOHiH榡 /dev/vbirdvg/vbirdlv MN /dev/vbirdvg/vbirdss ƻs vbirdlv OH nD vbirdss O vbirdlv ַӡA]pGA榡ƾ vbirdlv ɡA쥻ɮרtΩҦƳ|Qh vbirdssC pG vbirdss eqj (q`]uj)AƱNLkƻs vbirdss AƷMLk٭ڡI ҥH~nbW椤s@X@ӳƥɮתIAѥGH
ӧַ٦t~@ӥ\ANOAiH /mnt/lvm P /mnt/snapshot eANo{̪A쩳FԣNNI oˤ]OܤڡIzOaI ^_^IUڭ̷dz٭ vbirdlv eaI
# 3. N vbirdss ò (]̭ewgƥ_ӤF) [root@www ~]# umount /mnt/snapshot [root@www ~]# lvremove /dev/vbirdvg/vbirdss Do you really want to remove active logical volume "vbirdss"? [y/n]: y Logical volume "vbirdss" successfully removed [root@www ~]# umount /mnt/lvm [root@www ~]# mkfs -t ext3 /dev/vbirdvg/vbirdlv [root@www ~]# mount /dev/vbirdvg/vbirdlv /mnt/lvm [root@www ~]# tar -jxv -f /backups/lvm.tar.bz2 -C /mnt/lvm [root@www ~]# ll /mnt/lvm drwxr-xr-x 105 root root 12288 Mar 11 16:59 etc drwxr-xr-x 17 root root 4096 Mar 11 14:17 log drwx------ 2 root root 16384 Mar 11 16:59 lost+found # O_P̪쪺eۦPڡIoNOzLַӨ٭쪺@²檺koI |
ӨרӷQQAڭ̱N쥻 vbirdlv @ƥơAMN vbirdss @ڦbB@ơA ժʧ@b vbirdss oӧַӰϷաAէnNժƧRɡAunNַӰϧRhYiI ӭnƻs@ vbirdlv tΡAA@t~@ӧַӰϧYiIoˬO_D`KڡH oоҤC~nǥͻs@@ӽmҥDաAD`UOI
HeѬOıoϥ LVM ַӨӶiƥӦXzA]٭ns@@ӳƥɡIӥJӬsðѦҮ}øqѮvЧ(3)A~o{ LVM ַӹbO@ӴΨ줣檺uIרObظmhPǨϥΪҡA Aun@Ӱ¦ҫOALҨϥΧַӨӴѧYiCYɦPDZNtηdFAAunNַӰϧRA Aؤ@ӧַӰϡIoҴN_FIѧoIbOӴΤFI ^_^# 1. إߤ@Ӥj@ǪַӰϡAڭ̱N /dev/hda6 PE ַӰϡI [root@www ~]# lvcreate -s -l 89 -n vbirdss /dev/vbirdvg/vbirdlv Logical volume "vbirdss" created [root@www ~]# lvdisplay /dev/vbirdvg/vbirdss --- Logical volume --- LV Name /dev/vbirdvg/vbirdss VG Name vbirdvg LV UUID as0ocQ-KjRS-Bu7y-fYoD-1CHC-0V3Y-JYsjj1 LV Write Access read/write LV snapshot status active destination for /dev/vbirdvg/vbirdlv LV Status available # open 0 LV Size 6.97 GB Current LE 446 COW-table size 1.39 GB COW-table LE 89 Allocated to snapshot 0.00% Snapshot chunk size 4.00 KB Segments 1 Allocation inherit Read ahead sectors auto - currently set to 256 Block device 253:1 # pIoӧַӰϤpaI # 2. vbirdlv vbirdss [root@www ~]# umount /mnt/lvm [root@www ~]# mount /dev/vbirdvg/vbirdss /mnt/snapshot [root@www ~]# df /mnt/snapshot Filesystem 1K-blocks Used Available Use% Mounted on /dev/mapper/vbirdvg-vbirdss 7192504 265804 6561340 4% /mnt/snapshot # 3. }lcdI [root@www ~]# rm -r /mnt/snapshot/etc /mnt/snapshot/log [root@www ~]# cp -a /boot /lib /sbin /mnt/snapshot/ [root@www ~]# ll /mnt/snapshot drwxr-xr-x 4 root root 4096 Dec 15 16:28 boot drwxr-xr-x 14 root root 4096 Sep 5 2008 lib drwx------ 2 root root 16384 Mar 11 16:59 lost+found drwxr-xr-x 2 root root 12288 Sep 5 2008 sbin <==P쥻ƦtF [root@www ~]# mount /dev/vbirdvg/vbirdlv /mnt/lvm [root@www ~]# ll /mnt/lvm drwxr-xr-x 105 root root 12288 Mar 11 16:59 etc drwxr-xr-x 17 root root 4096 Mar 11 14:17 log drwx------ 2 root root 16384 Mar 11 16:59 lost+found # קAbַӰϴcdԣNNA쥻 vbirdlv ̭ƦwnpڡI # ]AN vbirdss dFI̭ƤAݭnIӦpOnH # 4. ٭쥻ַӰϪơA^PɮרtάۦPT [root@www ~]# umount /mnt/snapshot [root@www ~]# lvremove /dev/vbirdvg/vbirdss Do you really want to remove active logical volume "vbirdss"? [y/n]: y Logical volume "vbirdss" successfully removed [root@www ~]# lvcreate -s -l 89 -n vbirdss /dev/vbirdvg/vbirdlv [root@www ~]# mount /dev/vbirdvg/vbirdss /mnt/snapshot [root@www ~]# ll /mnt/snapshot drwxr-xr-x 105 root root 12288 Mar 11 16:59 etc drwxr-xr-x 17 root root 4096 Mar 11 14:17 log drwx------ 2 root root 16384 Mar 11 16:59 lost+found # Ƴo˴N_FI |
ѹ껡AWզILY]ַӰϷlFNRAؤ@ӴNnաI٭nթOH LAFzAѨַӰϤ]o˨ϥΡAW٬OݭnsbաIӦpGAIJA A^ǫӷŲߤ@U֩w|ìI
nFAڭ̱NWzιL@ǫOLJ@UAѵzѦҰѦҡG
PV q | VG q | LV q | |
jM(scan) | pvscan | vgscan | lvscan |
إ(create) | pvcreate | vgcreate | lvcreate |
CX(display) | pvdisplay | vgdisplay | lvdisplay |
W[(extend) | @ | vgextend | lvextend (lvresize) |
(reduce) | @ | vgreduce | lvreduce (lvresize) |
R(remove) | pvremove | vgremove | lvremove |
ܮeq(resize) | @ | @ | lvresize |
ݩ(attribute) | pvchange | vgchange | lvchange |
ܩɮרtζq (filesystem 榡ƳBz) AٻݭnH resize2fs ӭqɮרtιڪjp~ڡI ^_^ CܩM LVM iHuʪzAϺЮeqAOn`NApGAQnϥ LVM zzwЮɡAbw˪ɭԴNonn LVM WFA _h٬OݭnHDzΪϺмW[觋ӼW[AʸƫA~i LVM ϥΰڡI
| LVM ٤IAn|tΤ LVM I]A partition wgQϥΨ LVM hA pGA٨SN LVM NN partition RରLγ~ܡAtάO|oͫܤjDI ҥHoAAnDpN LVM ˸mò~I||OHꤣ|աI ̾ڥHUy{ӳBzYiG
naINڪNڭ̤eإߪҦ LVM ƵRaI
[root@www ~]# umount /mnt/lvm [root@www ~]# umount /mnt/snapshot [root@www ~]# lvremove /dev/vbirdvg/vbirdss <==Bzַ Do you really want to remove active logical volume "vbirdss"? [y/n]: y Logical volume "vbirdss" successfully removed [root@www ~]# lvremove /dev/vbirdvg/vbirdlv <==ABzt Do you really want to remove active logical volume "vbirdlv"? [y/n]: y Logical volume "vbirdlv" successfully removed [root@www ~]# vgchange -a n vbirdvg 0 logical volume(s) in volume group "vbirdvg" now active [root@www ~]# vgremove vbirdvg Volume group "vbirdvg" successfully removed [root@www ~]# pvremove /dev/hda{6,7,8,9,10} Labels on physical volume "/dev/hda6" successfully wiped Labels on physical volume "/dev/hda7" successfully wiped Labels on physical volume "/dev/hda8" successfully wiped Labels on physical volume "/dev/hda9" successfully wiped Labels on physical volume "/dev/hda10" successfully wiped |
̫A fdisk NϺЪ ID L^ 83 NnաIӹL{No˪աI ^_^
[root@www ~]# fdisk -l
Device Boot Start End Blocks Id System
/dev/hda1 * 1 13 104391 83 Linux
/dev/hda2 14 1288 10241437+ 83 Linux
/dev/hda3 1289 1925 5116702+ 83 Linux
/dev/hda4 1926 9382 59898352+ 5 Extended
/dev/hda5 1926 2052 1020096 82 Linux swap / Solaris
|
[root@www ~]# fdisk -l ....(eٲ).... /dev/hda6 2053 2175 987966 83 Linux /dev/hda7 2176 2298 987966 83 Linux /dev/hda8 2299 2421 987966 83 Linux /dev/hda9 2422 2544 987966 83 Linux /dev/hda10 2545 2667 987966 83 Linux |
[root@www ~]# mdadm --create --auto=yes /dev/md0 --level=5 \ > --raid-devices=4 --spare-devices=1 /dev/hda{6,7,8,9,10} |
[root@www ~]# pvcreate /dev/md0 <==إ PV [root@www ~]# vgcreate raidvg /dev/md0 <==إ VG [root@www ~]# lvcreate -L 2.82G -n raidlv raidvg <==إ LM [root@www ~]# lvdisplay --- Logical volume --- LV Name /dev/raidvg/raidlv VG Name raidvg LV UUID zQsKqW-8Bt2-kpJF-8rCI-Cql1-XQYT-jw1mfH LV Write Access read/write LV Status available # open 0 LV Size 2.82 GB Current LE 722 Segments 1 Allocation inherit Read ahead sectors auto - currently set to 256 Block device 253:0 |
[root@www ~]# mkfs -t ext3 /dev/raidvg/raidlv [root@www ~]# mkdir /mnt/raidlvm [root@www ~]# mount /dev/raidvg/raidlv /mnt/raidlvm |
[root@www ~]# umount /mnt/raidlvm <==ɮרt [root@www ~]# lvremove /dev/raidvg/raidlv <== LV [root@www ~]# vgchange -a n raidvg <== VG [root@www ~]# vgremove raidvg <== VG [root@www ~]# pvremove /dev/md0 <== PV [root@www ~]# mdadm --stop /dev/md0 <== /dev/md0 RAID [root@www ~]# fdisk /dev/hda <==٭쥻μ |