![我該如何讀取這個raid資訊輸出?](https://rvso.com/image/192217/%E6%88%91%E8%A9%B2%E5%A6%82%E4%BD%95%E8%AE%80%E5%8F%96%E9%80%99%E5%80%8Braid%E8%B3%87%E8%A8%8A%E8%BC%B8%E5%87%BA%EF%BC%9F.png)
我目前正在遠端 ubuntu 18.04 伺服器上工作,我需要設定一個新的 raid 陣列 (raid1),然後將其作為可用分割區安裝到活動檔案系統。對我來說,第一步是了解目前正在發生的事情。我知道活動系統中有 2 個硬碟連接在 raid 1 陣列中。我使用該lsblk
命令來收集一些資訊。輸出如下:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
nvme0n1 259:0 0 894,3G 0 disk
├─nvme0n1p1 259:1 0 4G 0 part
│ └─md0 9:0 0 4G 0 raid1 [SWAP]
├─nvme0n1p2 259:2 0 512M 0 part
│ └─md1 9:1 0 511,4M 0 raid1 /boot
└─nvme0n1p3 259:3 0 889,8G 0 part
└─md2 9:2 0 889,6G 0 raid1 /
那麼這是否意味著我的實體設備就是所謂的設備nvme0n1
?它被分為 3 個部分(交換區、引導區和 /)。如果它是同一個實體設備(nvme0n1
),為什麼分區(nvme0n1p1,nvme0n1p2,nvme0n1p3
)還被分成md0,md1,md2
?nvme0n1p1
和 和有什麼差別md0
?
如果我cat /proc/mdstat
進一步得到以下輸出:
md2 : active raid1 nvme0n1p3[1]
932840768 blocks super 1.2 [2/1] [_U]
bitmap: 7/7 pages [28KB], 65536KB chunk
md1 : active raid1 nvme0n1p2[1]
523712 blocks super 1.2 [2/1] [_U]
md0 : active raid1 nvme0n1p1[1]
4190208 blocks super 1.2 [2/1] [_U]
這顯示了 3 個活躍的 raidblock。我只有一個 raid 陣列正在運行。我無法解釋輸出...我需要一些幫助。
謝謝
答案1
如果這是完整的lsblk
輸出,那麼恐怕它只顯示一個實體儲存設備,nvme0n1
.
您的nvme0n1
分割區分為三個分割區,每個分割區都單獨設定為軟體 RAID1 鏡像。這為您提供了三個軟體 RAID 設備:md0
、md1
和md2
。其中每一個都對應到一個軟體 RAID 分割區,而不是整個磁碟。
像這樣為每個分割區設定 RAID 使得 BIOS 可以將磁碟識別為分割磁碟,即使 BIOS 根本不支援 Linux 軟體 RAID。這可以使啟動和某些恢復場景更易於處理,並且可以在需要時輕鬆恢復到非 RAID 配置。
在正常的鏡像狀態下,將引用+md0
的nvme0n1p1
鏡像集nvme1n1p1
、+md1
的集等。獨佔訪問,要求在RAID 處於活動狀態時對分區的所有訪問都必須經過RAID 層。nvme0n1p2
nvme1n1p2
md0
md1
md2
然而,每個軟體 RAID 集合都缺少 RAID1 對的後半部。這可能意味著系統在兩個相同的 NVMe 設備上使用軟體 RAID 設置,但其中一個(可能nvme1n1
)已經發生故障。或者係統可能是在單一 NVMe 磁碟上設定為 RAID1 集的一半,以便在獲得第二個 NVMe 裝置後可以輕鬆過渡到真正的 RAID1...但由於某種原因,這種情況從未發生過或其他。
您的首要任務可能應該是更換故障的 NVMe(或新增遺失的 NVMe),然後恢復現有的 RAID 對:
- 將分割區表從現有磁碟複製到新磁碟
- 將新磁碟上的分割區初始化為對應
mdN
裝置的備用分割區 - 在每對上啟動 RAID1 恢復
- 將引導程式的第二個副本安裝到第二個磁碟,因為 MBR 和部分 GRUB 位於映像分割區之外。
- 設定對 RAID 設備的監控,以便其中一個實體設備的故障不會再次被忽略。
完成後,您可以考慮設定新 RAID 陣列的原始任務。為此,您將需要更多的物理存儲,因為現有的物理存儲似乎nvme0n1
已完全使用(一旦當前的半反射鏡完全恢復,其鏡像同伴也會如此)。
答案2
是的,輸出僅顯示一個實體設備 (nvme0n1)。
是的,輸出顯示它有 3 個分割區。
有趣的部分是來自的訊息/proc/mdstat
,它顯示了3配置好的raid設備,所有這些都顯示[_U]
。在一個健康的系統中應該這樣說[UU]
。 3 個 raid 設備配置為 raid1(鏡像),因此第二個驅動器的(假定)故障尚未導致您任何資料遺失。當然,第二個驅動器可能無法檢測到,因為它已被刪除。
啟動日誌的研究可能會提示您是否有第二個驅動器。
nvme0n1p1 是一個分割區。它在開始時會有一個 raid 標頭。分區中的其餘扇區用作 md0 設備的資料。如果連接了第二個磁碟機(可能是傳統spinning rust
硬碟),則預期它至少有 3 個分割區,其中一個(按照慣例,您將擁有第一個分割區,因此 /dev/hda1)也會有一個 raid頭,然後其餘磁區將用於保存/dev/md0 裝置的資料的第二個副本。