Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

4.4.13.8.2. 「warn」RAID 錯誤政策(Fault Policy)

在下列範例中,lvm.conf 檔案中的 raid_fault_policy 欄位已設為 warn。RAID 邏輯卷冊的格式如下。
# lvs -a -o name,copy_percent,devices my_vg
  LV               Copy%  Devices                                     
  my_lv            100.00 my_lv_rimage_0(0),my_lv_rimage_1(0),my_lv_rimage_2(0)
  [my_lv_rimage_0]        /dev/sdh1(1)                                
  [my_lv_rimage_1]        /dev/sdf1(1)                                
  [my_lv_rimage_2]        /dev/sdg1(1)                                
  [my_lv_rmeta_0]         /dev/sdh1(0)                                
  [my_lv_rmeta_1]         /dev/sdf1(0)                                
  [my_lv_rmeta_2]         /dev/sdg1(0)
/dev/sdh 裝置失效,系統日誌將會顯示錯誤訊息。然而在此情況下,LVM 將不會自動透過替換映像檔,以嘗試修復 RAID 裝置。反之,若裝置失效,您可如下透過 lvconvert 指令的 --repair 引數來替換裝置。
# lvconvert --repair my_vg/my_lv
  /dev/sdh1: read failed after 0 of 2048 at 250994294784: Input/output error
  /dev/sdh1: read failed after 0 of 2048 at 250994376704: Input/output error
  /dev/sdh1: read failed after 0 of 2048 at 0: Input/output error
  /dev/sdh1: read failed after 0 of 2048 at 4096: Input/output error
  Couldn't find device with uuid fbI0YO-GX7x-firU-Vy5o-vzwx-vAKZ-feRxfF.
Attempt to replace failed RAID images (requires full device resync)? [y/n]: y

# lvs -a -o name,copy_percent,devices my_vg
  Couldn't find device with uuid fbI0YO-GX7x-firU-Vy5o-vzwx-vAKZ-feRxfF.
  LV               Copy%  Devices                                     
  my_lv             64.00 my_lv_rimage_0(0),my_lv_rimage_1(0),my_lv_rimage_2(0)
  [my_lv_rimage_0]        /dev/sde1(1)                                
  [my_lv_rimage_1]        /dev/sdf1(1)                                
  [my_lv_rimage_2]        /dev/sdg1(1)                                
  [my_lv_rmeta_0]         /dev/sde1(0)                                
  [my_lv_rmeta_1]         /dev/sdf1(0)                                
  [my_lv_rmeta_2]         /dev/sdg1(0)
請注意,即使故障的裝置已經被取代,以上訊息依舊顯示 LVM 無法找到故障的裝置。這是因為雖然故障裝置已經從 RAID 邏輯卷冊上移除,並不表示故障裝置已經從卷冊群組中移除。要從卷冊群組上移除故障的裝置,您可以執行 vgreduce --removemissing VG
如果裝置故障只是暫時的,或是您可以修復故障裝置,那麼您可以停用、然後啟用此邏輯卷冊,這樣裝置就不會被視為故障,如以下指令所示。
# lvchange -an my_vg/my_lv
# lvchange -ay my_vg/my_lv
一旦磁碟再次同步,就會被視為啟動。