Linux
Debian 伺服器在每次啟動時都會降級 mdadm 陣列
我有一個帶有 MD raid 的 Debian 伺服器(2 個活動,一個備用):
Personalities : [raid1] md1 : active raid1 sdc2[0] sdb2[1] sda2[2](S) 1068224 blocks [2/2] [UU] md0 : active raid1 sdc1[2](S) sdb1[1] sda1[0] 487315584 blocks [2/2] [UU] bitmap: 5/233 pages [20KB], 1024KB chunk unused devices: <none>
每當我啟動此伺服器時,陣列就會降級並開始同步備用磁碟。問題是,這似乎是因為它連接了一個 U 盤,目前是
/dev/sdd
. 當此磁碟不存在時,它可以正常啟動。/dev/sdd1
,唯一的分區,上面沒有md superblock,分區類型是Linux,不是raid autodetect。這是鏡像設備的詳細資訊
md0
:mdadm --detail /dev/md0 /dev/md0: Version : 0.90 Creation Time : Sun Jun 8 04:10:39 2008 Raid Level : raid1 Array Size : 487315584 (464.74 GiB 499.01 GB) Used Dev Size : 487315584 (464.74 GiB 499.01 GB) Raid Devices : 2 Total Devices : 3 Preferred Minor : 0 Persistence : Superblock is persistent Intent Bitmap : Internal Update Time : Tue Sep 15 09:23:33 2015 State : active Active Devices : 2 Working Devices : 3 Failed Devices : 0 Spare Devices : 1 UUID : 9e408fbb:563a5459:f999b789:24d3b44e Events : 0.83145 Number Major Minor RaidDevice State 0 8 1 0 active sync /dev/sda1 1 8 17 1 active sync /dev/sdb1 2 8 33 - spare /dev/sdc1
的細節
/dev/sdc1
確實表明它是備用的:mdadm --examine /dev/sdc1 /dev/sdc1: Magic : a92b4efc Version : 0.90.00 UUID : 9e408fbb:563a5459:f999b789:24d3b44e Creation Time : Sun Jun 8 04:10:39 2008 Raid Level : raid1 Used Dev Size : 487315584 (464.74 GiB 499.01 GB) Array Size : 487315584 (464.74 GiB 499.01 GB) Raid Devices : 2 Total Devices : 3 Preferred Minor : 0 Update Time : Sat Sep 12 21:09:59 2015 State : clean Internal Bitmap : present Active Devices : 2 Working Devices : 3 Failed Devices : 0 Spare Devices : 1 Checksum : 7761bb13 - correct Events : 83145 Number Major Minor RaidDevice State this 2 8 33 2 spare /dev/sdc1 0 0 8 1 0 active sync /dev/sda1 1 1 8 17 1 active sync /dev/sdb1 2 2 8 33 2 spare /dev/sdc1
真的沒有什麼異常。
任何的想法?
編輯:
的相關內容
/etc/mdadm/mdadm.conf
:ARRAY /dev/md0 level=raid1 num-devices=2 UUID=9e408fbb:563a5459:f999b789:24d3b44e spares=1 ARRAY /dev/md1 level=raid1 num-devices=2 UUID=e4578e57:9e0fd9e9:c7736f30:0e251564 spares=1
這種匹配的輸出
mdadm --detail --scan
:ARRAY /dev/md0 metadata=0.90 spares=1 UUID=9e408fbb:563a5459:f999b789:24d3b44e ARRAY /dev/md1 metadata=0.90 spares=1 UUID=e4578e57:9e0fd9e9:c7736f30:0e251564
也許是換行符?
- 核心 3.2.0-4-686-pae。
- Debian 7.8
- mdadm - v3.2.5 - 2012 年 5 月 18 日
我認為您的 initramfs 中可能有一個太舊的 mdadm.conf 和/或 mdadm 在陣列的發現和初始化過程中會感到困惑。
嘗試通過在 mdadm.conf 中添加以下行來告訴 mdadm 只考慮 PCI 匯流排上的磁碟:
DEVICE /dev/disk/by-path/pci*
更進一步,您可以直接指定磁碟本身。確保使用與順序無關的定址(例如,通過 UUID),並將備用地址放在最後一個條目:
DEVICE /dev/disk/by-uuid/<uuid1> DEVICE /dev/disk/by-uuid/<uuid2> DEVICE /dev/disk/by-uuid/<uuid3>
更進一步,在上一步之後,您還可以將 devices= 屬性添加到 ARRAY 標記,將您的 raid 的確切佈局提供給 mdadm。還要考慮這裡的設備順序。
在此之後不要忘記更新 initramfs,因為 mdadm.conf 也是引導初始化過程的一部分:
sudo update-initramfs -k all -u