Installation

無人值守安裝初期未檢測到硬碟

  • May 5, 2015

我正在使用 USB 驅動器和preseed不同類型的伺服器(HP Proliant ML110、ML310、ML350)上的文件進行 Ubuntu-14.04-server 的無人值守安裝。該preseed文件包含多個規則,包括partman-auto自動對伺服器硬碟進行(自定義)分區的配置。

  • 在伺服器 ML110 和 ML310 上,在安裝過程開始時(partman啟動前),硬碟驅動器在/dev/sda,USB 驅動器需要/dev/sdb. 因此,我d-i partman-auto/disk string /dev/sda在我的preseed文件中指定,並將分區應用於伺服器的硬碟驅動器。一切正常。
  • 但是在伺服器 ML350 上,在安裝過程開始時,主硬碟驅動器不存在於/dev/sd*/dev/sda. 僅僅幾步之後,硬碟就出現了……在/dev/sdb. 因此,我在preseed文件中的規則不再有效,並且partman搞砸了我的 USB 驅動器。

這個非常煩人的事實引發了兩個問題:

  1. 為什麼在安裝過程開始時設備中沒有顯示主硬碟?
  2. 我怎麼能強制主硬碟出現(並讓它佔據/dev/sda)或者如果我不能,我怎麼能確定地找出/dev/sdX主硬碟將在哪個位置。

我試圖添加dmraid=true核心選項,它沒有工作。我也嘗試添加pci=conf1(在此處找到)但沒有成功。

即使presed/early_command尚未檢測到硬碟驅動器,我發現在partman/early_command,它是!

因此,我做了一個命令,用正確的設備名稱設置partman-auto/disk參數,當時檢查。debian-installer

有關該命令的更多資訊,請參閱使用 preseed 進行無人值守安裝 - 為 partman-auto 提供自定義設備

自從從舊的 CCISS 驅動程序遷移到 HPSA 驅動程序後,HP 智能陣列控制器現在利用了普通的 SCSI 塊設備子系統。因此,設備命名方案是/dev/sdX.

您使用 USB 密鑰會更改設備列舉,因為 USB 設備存在於 RAID 控制器之前(您正在從它啟動)。所以 USB 密鑰變成/dev/sda了第一個 HP Smart Array RAID 控制器/dev/sdb

現代 Linux 作業系統使用分區標籤或 UUID,因此設備名稱在首次啟動時(移除 USB 密鑰後)無關緊要。

您的平台之間的差異可能是 ML110 和 ML310(您未指定代)未使用 Smart Array 控制器,或者俱有不同類別的 RAID 設備。

ML350確實有一個合適的 Smart Array 控制器,因此您看到的行為是意料之中的。

使用不同的預置文件,或盡可能嘗試不同的部署方法。

引用自:https://serverfault.com/questions/684684