Ubuntu

核心 sysfs 無法辨識儲存 kobjects

  • November 17, 2018

我正在使用帶有相應 ubuntu initrd.img 的 ubuntu 核心 4.xx,它可以工作。但是,我想使用受lfs (從頭開始的 linux) initramfs 啟發的自定義 initramfs。核心提取並成功執行我的初始化腳本,包括掛載 sysfs。但是 /sys 不會向可用儲存公開任何跟踪(存在兩個磁碟),因此無法初始化核心根目錄。

問題是什麼?

核心(/ubuntu 目錄)的 ubuntu 附加組件是否為 initrd 規定了任何特殊策略?

在工作系統上,查看 sysfs 中的設備及其device符號連結。這指向父設備——它可能又擁有自己的父設備,依此類推。給自己寫一個設備及其所有父設備的列表。然後您可以在 initramfs 中檢查所有這些。除了兩個磁碟設備之外,您可能還缺少更多要求。

其次,當您列出設備列表時,請查看driver/module每個設備並寫下它是什麼。這會告訴您哪個核心模組正在辨識該設備。

udev 應該為您載入核心模組。

不幸的是,LFS initramfs 使用 systemd-udev 並嘗試在沒有 systemd 的情況下執行它。這是不幸的,因為使用 systemd 會讓 systemd-udev 將遇到的任何錯誤記錄到 systemd 日誌中。然後,您可以檢查日誌是否有錯誤。我不知道 udev 錯誤日誌記錄在 LFS initramfs 中是否有效。

核心(/ubuntu 目錄)的 ubuntu 附加組件是否規定了 initrd 的任何特殊策略?

不。

引用自:https://unix.stackexchange.com/questions/481908