偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

Linux中軟RAID常見(jiàn)問(wèn)題解決

系統(tǒng) Linux
在文章“Linux 中軟件 RAID 的使用”中我們講述了 Linux 系統(tǒng)中軟 RAID 的基本概念和如何使用 mdadm 程序來(lái)管理軟 RAID 設(shè)備,通過(guò)對(duì) mdadm 命令的主要參數(shù)來(lái)介紹軟 RAID 設(shè)備的創(chuàng)建......

在文章“Linux 中軟件 RAID 的使用”中我們講述了 Linux 系統(tǒng)中軟 RAID 的基本概念和如何使用 mdadm 程序來(lái)管理軟 RAID 設(shè)備,通過(guò)對(duì) mdadm 命令的主要參數(shù)來(lái)介紹軟 RAID 設(shè)備的創(chuàng)建,刪除,停止和擴(kuò)展等操作,以及其元數(shù)據(jù)和位圖 bitmap 數(shù)據(jù)的管理方法。在本文中我們討論使用軟 RAID 設(shè)備常見(jiàn)的問(wèn)題以及解決的方法。

1. RAID 的子設(shè)備物理上要獨(dú)立不相關(guān)

對(duì)一個(gè)磁盤(pán)上的多個(gè)磁盤(pán)分區(qū)做RAID是沒(méi)有價(jià)值的,因?yàn)椴坏`背了RAID陣列中設(shè)備獨(dú)立性的原則,不能增加陣列的可靠性,當(dāng)這個(gè)磁盤(pán)失效后必然不可避免的導(dǎo)致數(shù)據(jù)丟失,而且還導(dǎo)致陣列的性能顯著降低,當(dāng)數(shù)據(jù)讀寫(xiě)時(shí)磁頭在磁盤(pán)的多個(gè)分區(qū)上來(lái)回抖動(dòng)帶來(lái)長(zhǎng)時(shí)間的搜索耗時(shí)。

2. RAID 0 沒(méi)有數(shù)據(jù)冗余功能

RAID 0 只能使用數(shù)據(jù)塊條帶化(stripping)功能來(lái)提高性能,如果有磁盤(pán)失效則會(huì)導(dǎo)致MD設(shè)備上的數(shù)據(jù)丟失,在讀寫(xiě)MD設(shè)備時(shí)出錯(cuò)。

3. 快速測(cè)試命令

當(dāng)創(chuàng)建磁盤(pán)時(shí),如果已知設(shè)備上的數(shù)據(jù)已經(jīng)是同步(sync)成功過(guò),或者僅僅是用來(lái)測(cè)試陣列,可以使用--assume-clean參數(shù)來(lái)通知MD驅(qū)動(dòng)不必初始化陣列。

mdadm -C /dev/md0 -l5 -n6 /dev/sd[b-g] -x1 /dev/sdh --assume-clean

如果想避免mdadm每次創(chuàng)建命令時(shí),因?yàn)樵O(shè)備上還有以前的元數(shù)據(jù)的提示,避免手工輸入,可以使用--run(或者其縮寫(xiě)-R)通知陣列直接運(yùn)行。

mdadm --create --run /dev/md0 -l5 -n6 /dev/sd[b-g] -x1 /dev/sdh --assume-clean

4. 異構(gòu)磁盤(pán)組成的RAID

RAID0可以支持不同大小的磁盤(pán)構(gòu)造多個(gè)區(qū)域(zone)的RAID,每個(gè)區(qū)域有不同的磁盤(pán)個(gè)數(shù)。使用fdisk命令查詢/dev/sdi1為2GB, /dev/sdj1為4GB,/dev/sdk1為1GB,所以做成RAID0設(shè)備為7GB。

mdadm -C /dev/md0 -l5 -n6 /dev/sd[b-g] -x1 /dev/sdh --assume-clean

而RAID1,RAID456, RAID10等對(duì)不同大小的磁盤(pán)只能使用最小的磁盤(pán)的容量作為公共的大小,多余的部分被浪費(fèi)掉。/dev/sdi1,/dev/sdj1,/dev/sdk1做成的RAID5設(shè)備為2GB,是最小的設(shè)備/dev/sdk1的2倍,設(shè)備/dev/sdi1和sdj1分別浪費(fèi)了1GB和3GB。

[root@fc5 mdadm-2.6.3]# ./mdadm –CR /dev/md1 -l0 -n3 /dev/sd[i-k]1

[root@fc5 mdadm-2.6.3]# ./mdadm -D /dev/md1 | grep "Array Size"

Array Size : 7337664 (7.00 GiB 7.51 GB)

在陣列的狀態(tài)信息查詢中的大小(ArraySize)前面使用的是KB,也表示MD塊設(shè)備的實(shí)際大??;而后面的兩個(gè)值只是為了顯示處理后的結(jié)果。

[root@fc5 mdadm-2.6.3]# ./mdadm –CR /dev/md1 -l0 -n3 /dev/sd[i-k]1

[root@fc5 mdadm-2.6.3]# ./mdadm -D /dev/md1 | grep "Array Size"

Array Size : 7337664 (7.00 GiB 7.51 GB)

[root@fc5 mdadm-2.6.3]# ./mdadm -CR /dev/md1 -l5 -n3 /dev/sd[i-k]1

[root@fc5 mdadm-2.6.3]# ./mdadm -D /dev/md1 | grep "Array Size"

Array Size : 2096896 (2048.09 MiB 2147.22 MB)

5. 配置共享的熱備盤(pán)

mdadm程序是允許多個(gè)RAID組共享冗余磁盤(pán)的。 例如有/dev/md0和/dev/md1兩個(gè)陣列,在創(chuàng)建時(shí)/dev/md0里面有一個(gè)熱備磁盤(pán),而/dev/md1沒(méi)有熱備磁盤(pán)。我們只要在/etc/mdadm.conf中配置兩個(gè)陣列使用相同的spare-group組。

[root@fc5 mdadm-2.6.3]# cat /etc/mdadm.conf

DEVICE /dev/sdb /dev/sdc /dev/sdd /dev/sde /dev/sdf /dev/sdg /dev/sdh

/dev/sdi1 /dev/sdj1 /dev/sdk1

ARRAY /dev/md1 level=raid0 num-devices=3 spare-group=sparedisks

UUID=dcff6ec9:53c4c668:58b81af9:ef71989d

ARRAY /dev/md0 level=raid10 num-devices=6 spare-group=sparedisks

UUID=0cabc5e5:842d4baa:e3f6261b:a17a477a

并運(yùn)行mdadm 的監(jiān)控(monitor)模式命令。當(dāng)/dev/md1陣列中的一個(gè)磁盤(pán)/dev/sdi1失效時(shí),mdadm會(huì)自動(dòng)從/dev/md0組中上移走spare磁盤(pán),并加入/dev/md1中。

[root@fc5 mdadm-2.6.3]#./mdadm --monitor --mail=root@localhost --syslog --program=/root/md.sh

--delay=300 /dev/md* --daemonise

#p#

8105

[root@fc5 mdadm-2.6.3]#./mdadm /dev/md1 -f /dev/sdi1

mdadm: set /dev/sdi1 faulty in /dev/md1

[root@fc5 mdadm-2.6.3]#./mdadm -D /dev/md1

/dev/md1:

Version : 00.90.03

Creation Time : Mon Aug 23 00:10:00 1999

Raid Level : raid5

Array Size : 2096896 (2048.09 MiB 2147.22 MB)

Used Dev Size : 1048448 (1024.05 MiB 1073.61 MB)

Raid Devices : 3

Total Devices : 4

Preferred Minor : 1

Persistence : Superblock is persistent

Update Time : Mon Aug 23 00:13:15 1999

State : clean, degraded, recovering

Active Devices : 2

Working Devices : 3

Failed Devices : 1

Spare Devices : 1

Layout : left-symmetric

Chunk Size : 64K

Rebuild Status : 78% complete

UUID : 34d3de75:6912dc24:e1316607:4e72cd01

Events : 0.4

Number   Major   Minor   RaidDevice State

3       8      112        0      spare rebuilding   /dev/sdh

1       8      145        1      active sync   /dev/sdj1

2       8      161        2      active sync   /dev/sdk1

4       8      129        -      faulty spare   /dev/sdi1

MD設(shè)備支持兩種塊設(shè)備,一種是不可分區(qū)類型的名字是md設(shè)備,主設(shè)備號(hào)是9,另一種是可分區(qū)的名字是mdp設(shè)備,mdp的主設(shè)備號(hào)是動(dòng)態(tài)分配的,一個(gè)mdp設(shè)備最多能支持63個(gè)分區(qū)。查看/proc/device信息能看到mdp的主設(shè)備號(hào),查詢/proc/partitions信息能看到md和mdp設(shè)備的主設(shè)備號(hào)和從設(shè)備號(hào)。

[root@fc5 mdadm-2.6.3]# cat /proc/devices | grep md

1 ramdisk

9 md

253 mdp

[root@fc5 mdadm-2.6.3]# cat /proc/partitions | grep md

9     1    2096896 md1

253     0    5242560 md_d0

253     1    1000002 md_d0p1

253     2    1000002 md_d0p2

8. 怎樣擴(kuò)展RAID設(shè)備

Grow模式中的容量擴(kuò)展(resize)功能不但支持設(shè)備大小增加,也可以支持設(shè)備大小減少,但要求使用者自己來(lái)保證MD設(shè)備有效數(shù)據(jù)上不被截?cái)鄬?dǎo)致丟失。

[root@fc5 mdadm-2.6.3]# ./mdadm /dev/md0 --grow --size=102400

[root@fc5 mdadm-2.6.3]# ./mdadm -Q /dev/md0

/dev/md0: 600.00MiB raid5 7 devices, 0 spares. Use mdadm --detail for more detail.

而磁盤(pán)個(gè)數(shù)擴(kuò)展(reshape)功能不支持設(shè)備個(gè)數(shù)減少,如果在陣列中空閑的熱備盤(pán)而且也沒(méi)有指定backup文件,則不能擴(kuò)展。如果對(duì)于RAID5陣列有備份(backup)文件可以支持?jǐn)U展一個(gè)磁盤(pán),擴(kuò)展后的磁盤(pán)陣列是降級(jí)模式的,不支持?jǐn)U展多個(gè)磁盤(pán)或者對(duì)降級(jí)的RAID5陣列再擴(kuò)展。這些擴(kuò)展模式不夠安全,僅僅是暫時(shí)沒(méi)有熱備盤(pán)的權(quán)宜之計(jì),一般合理的操作還是先增加空閑的熱備磁盤(pán)再執(zhí)行擴(kuò)展命令。

[root@fc5 mdadm-2.6.3]# ./mdadm --grow /dev/md0 -n6

mdadm: /dev/md0: Cannot reduce number of data disks (yet).

[root@fc5 mdadm-2.6.3]# ./mdadm --grow /dev/md0 -n8

mdadm: Need to backup 2688K of critical section.

mdadm: /dev/md0: Cannot grow - need a spare or backup-file to backup critical section

[root@fc5 mdadm-2.6.3]# ./mdadm -G /dev/md0 -n9 --backup-file=/root/bak-reshape

mdadm: Need to backup 1024K of critical section..

mdadm: /dev/md0: failed to initiate reshape

[root@fc5 mdadm-2.6.3]# ./mdadm -G /dev/md0 -n8 --backup-file=/root/bak-reshape

mdadm: Need to backup 2688K of critical section..

mdadm: ... critical section passed.

[root@fc5 mdadm-2.6.3]#  cat /proc/mdstat

Personalities : [raid0] [raid10] [raid6] [raid5] [raid4]

md0 : active raid5 sdh[6] sdg[5] sdf[4] sde[3] sdd[2] sdc[1] sdb[0]

6291072 blocks super 0.91 level 5, 64k chunk, algorithm 2 [8/7] [UUUUUUU_]

[>..................]  reshape =  2.6% (28608/1048512) finish=4.1min speed=4086K/sec

md1 : active raid0 sdk1[2] sdj1[1] sdi1[0]

7337664 blocks 64k chunks

unused devices: < none >

[root@fc5 mdadm-2.6.3]# ./mdadm -D /dev/md0

/dev/md0:

#p#

Version : 00.91.03

Creation Time : Sun Aug 22 23:46:29 1999

Raid Level : raid5

Array Size : 6291072 (6.00 GiB 6.44 GB)

Used Dev Size : 1048512 (1024.11 MiB 1073.68 MB)

Raid Devices : 8

Total Devices : 7

Preferred Minor : 0

Persistence : Superblock is persistent

Update Time : Sun Aug 22 23:46:56 1999

State : clean, degraded, recovering

Active Devices : 7

Working Devices : 7

Failed Devices : 0

Spare Devices : 0

Layout : left-symmetric

Chunk Size : 64K

Reshape Status : 4% complete

Delta Devices : 1, (7->8)

UUID : 50e886b9:9e28d243:a7f6457d:5eb47f2e

Events : 0.94

Number   Major   Minor   RaidDevice State

0       8       16        0      active sync   /dev/sdb

1       8       32        1      active sync   /dev/sdc

2       8       48        2      active sync   /dev/sdd

3       8       64        3      active sync   /dev/sde

4       8       80        4      active sync   /dev/sdf

5       8       96        5      active sync   /dev/sdg

6       8      112        6      active sync   /dev/sdh

7       0        0        7      removed
[root@fc5 mdadm-2.6.3]# cat /proc/mdstat

Personalities : [raid0] [raid10] [raid6] [raid5] [raid4]

md0 : active raid5 sdh[6] sdg[5] sdf[4] sde[3] sdd[2] sdc[1] sdb[0]

7339584 blocks level 5, 64k chunk, algorithm 2 [8/7] [UUUUUUU_]

md1 : active raid0 sdk1[2] sdj1[1] sdi1[0]

7337664 blocks 64k chunks

unused devices: < none >

[root@fc5 mdadm-2.6.3]# ./mdadm -D /dev/md0

/dev/md0:

Version : 00.90.03

Creation Time : Sun Aug 22 23:46:29 1999

Raid Level : raid5

Array Size : 7339584 (7.00 GiB 7.52 GB)

Used Dev Size : 1048512 (1024.11 MiB 1073.68 MB)

Raid Devices : 8

Total Devices : 7

Preferred Minor : 0

Persistence : Superblock is persistent

Update Time : Sun Aug 22 23:50:18 1999

State : clean, degraded

Active Devices : 7

Working Devices : 7

Failed Devices : 0

Spare Devices : 0

Layout : left-symmetric

Chunk Size : 64K

UUID : 50e886b9:9e28d243:a7f6457d:5eb47f2e

Events : 0.766

Number   Major   Minor   RaidDevice State

0       8       16        0      active sync   /dev/sdb

1       8       32        1      active sync   /dev/sdc

2       8       48        2      active sync   /dev/sdd

3       8       64        3      active sync   /dev/sde

4       8       80        4      active sync   /dev/sdf

5       8       96        5      active sync   /dev/sdg

6       8      112        6      active sync   /dev/sdh

7       0        0        7      removed

[root@fc5 mdadm-2.6.3]# ./mdadm -G /dev/md0 -n9 --backup-file=/root/bak-reshape

mdadm: Need to backup 3584K of critical section..

mdadm: /dev/md0: failed to find device 7. Array might be degraded.

--grow aborted

9. 為什么不能擴(kuò)展RAID設(shè)備

當(dāng)使用grow模式時(shí),如果內(nèi)核不支持sysfs或者M(jìn)D驅(qū)動(dòng)版本較低不支持時(shí)則會(huì)返回錯(cuò)誤。另外使用strace命令跟蹤能導(dǎo)致在哪個(gè)函數(shù)調(diào)用上出錯(cuò)返回。

[root@fc5 mdadm-2.6.3]# ./mdadm --grow /dev/md0 -n6

mdadm: Need to backup 1280K of critical section..

mdadm: /dev/md0: Cannot get array details from sysfs

如果系統(tǒng)沒(méi)有加載sysfs,需要使用mount命令加載。

mount –t sysfs sysfs /sys/

10. 為什么不能停止MD設(shè)備

當(dāng)停止MD陣列時(shí),有時(shí)被返回MD設(shè)備正在被使用錯(cuò)誤,需要檢查MD設(shè)備被哪個(gè)上層設(shè)備使用。一個(gè)情況是被文件系統(tǒng)使用,如已經(jīng)被mount起來(lái):

[root@fc5 mdadm-2.6.3]# df -h | grep md

/dev/md0              485M   11M  449M   3% /mnt/md-test

另一種情況是MD設(shè)備被用戶層其他程序打開(kāi)使用,如nbd-server導(dǎo)出MD設(shè)備:

[root@fc5 md0]#fuser -u /dev/md0

/dev/md0:             3507(root)

[root@fc5 md0]#ps ax| grep 3507

3507 ?

還有可能是內(nèi)核驅(qū)動(dòng)程序打開(kāi)使用,如被LVM程序當(dāng)作物理卷(PV)使用:

[root@fc5 mdadm-2.6.3]# ls -l /sys/block/md0/holders/

total 0

lrwxrwxrwx 1 root root 0 08-22 23:31 dm-0 -> ../../../block/dm-0

小結(jié)

如果在軟RAID使用中遇到問(wèn)題不能解決,應(yīng)該首先查看mdadm的幫助信息;如果還不能解決,可以到mdadm的郵件列表尋找是否有相關(guān)的問(wèn)題解答或者詳細(xì)描述該問(wèn)題的發(fā)生過(guò)程請(qǐng)求大家?guī)椭?br />  

【編輯推薦】

  1. ubuntu server:RAID 10的故障處理
  2. 通過(guò)RHEL 5實(shí)現(xiàn)軟RAID及LVM
  3. 如何成為一個(gè)Linux系統(tǒng)內(nèi)核開(kāi)發(fā)者
責(zé)任編輯:趙寧寧 來(lái)源: chinaitlab
相關(guān)推薦

2011-01-21 14:13:10

2010-08-26 12:59:29

marginCSS

2010-08-04 10:20:30

Flex組件開(kāi)發(fā)

2010-01-13 21:06:37

雙絞線

2011-05-03 17:22:59

激光打印機(jī)

2019-04-04 13:11:37

React內(nèi)存泄露memory leak

2010-12-31 16:31:08

服務(wù)器常見(jiàn)問(wèn)題

2011-08-22 14:10:51

nagios

2025-09-03 10:12:47

移動(dòng)端JavaScript開(kāi)發(fā)

2025-02-19 08:00:00

移動(dòng)端移動(dòng)設(shè)備移動(dòng)開(kāi)發(fā)

2011-04-27 16:04:12

投影機(jī)

2011-09-01 14:04:41

光纖光纖熔接機(jī)

2009-12-09 17:30:53

NETCORE路由器

2011-03-30 12:55:51

EclipseADTAndroid

2016-12-14 12:00:27

手機(jī)APPADB

2021-08-20 15:49:13

電腦主板維修

2009-12-24 11:13:41

2010-05-24 18:46:50

SVN圖標(biāo)

2010-08-17 13:36:49

DIV CSS設(shè)計(jì)

2009-10-27 10:48:26

linux問(wèn)題解決
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)