RHEL 6系統啟動時盤符漂移問題解決辦法

來源:互聯網
上載者:User

本文章給大家介紹一篇關於RHEL 6系統啟動時盤符漂移問題解決辦法,希望有碰到此問題的朋友可參考此文章解決。

在RHEL 6中安裝新的SCSI裝置後,可能出現盤符漂移情況,如原來系統硬碟所在的盤符為/dev/sda,加入新裝置,重啟系統後,盤符變為最後一個,如/dev/ssda。

盤符漂移原因

Linux核心中,SCSI硬碟盤符的分配與驅動掃描到的硬碟先後順序有關,即第一塊掃描到的硬碟盤符為/dev/sda,第二塊盤符為/dev/sdb … 依次類推。

一般情況下,驅動掃描到的硬碟順序與不同類型SAS/RAID控制器驅動載入順序有關。如先載入megaraid_sas驅動,則該RAID控制器下的硬碟會首先分配盤符,即/dev/sda所對應的硬碟在該RAID控制器下。若先載入FC驅動,則FC下面的硬碟會首先得到盤符,此時/dev/sda就在FC控制器下面的硬碟。

RHEL 6系統中,添加新裝置後,發生盤符漂移的原因為SAS/RAID控制器的驅動載入順序發生了變化。而載入順序是udev機制設定檔決定。

 盤符漂移解決辦法

在intramfs核心開機檔案中,我們可以看到cmdline/目錄下的啟動指令碼01parse-kernel.sh。在通過udev機制載入驅動前,先執行該指令碼。在該指令碼中,可以看到解析核心參數rdloaddriver,即核心先載入參數中的rdloaddriver。

 代碼如下 複製代碼

 [root@RH2285 cmdline]# ls

01parse-kernel.sh  10parse-resume.sh     20parse-blacklist.sh  30parse-crypt.sh          30parse-lvm.sh

01version.sh       10parse-root-opts.sh  20parse-i18n.sh       30parse-dmsquash-live.sh  95parse-block.sh

[root@RH2285 cmdline]#

[root@RH2285 cmdline]# cat 01parse-kernel.sh

#!/bin/sh

 

for p in $(getargs rdloaddriver=); do

       modprobe $p

done

 

盤符發生漂移的機器上,執行驅動載入順序即可。如先載入megaraid_sas驅動,再載入qla4xxx驅動。

 代碼如下 複製代碼

title Red Hat Enterprise Linux Server (2.6.32-220.el6.x86_64)

       root (hd0,2)

     kernel  /boot/vmlinuz-2.6.32-220.el6.x86_64 ro rdloaddriver=megaraid_sasrdloaddriver=qla4xxx  root=UUID=d44cb995-39d0-4882-a25b-43803b3b9d4b

       initrd /boot/initramfs-2.6.32-220.el6.x86_64.img

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.