Boot-Loader

將系統從 SD 卡載入到記憶體中,然後從記憶體啟動

  • January 21, 2016

我已經看到了幾個答案,其中提示在記憶體中創建分區,將 SD 卡的內容複製到該分區,然後從該記憶體分區啟動作業系統(linux)。

我會使用什麼引導載入程序來完成這樣的事情,我在哪裡可以找到有關設置它的文件?

根本不涉及引導載入程序,該任務通常由Linux核心在通過位於SD卡上的引導載入程序從SD卡載入到記憶體後執行。

從記憶體“引導”的現代方式要求您編寫一個自定義的 initramfs 腳本,該腳本將檢測 Linux 從中引導的媒體(因為引導載入程序不提供這樣有用的資訊,儘管其中一些肯定可以檢測到它們引導的媒體),在只讀模式下“打開”它的文件系統,tmpfs為未來的根文件系統分配空間,然後將所有內容從媒體複製到它,然後只需切換根並/sbin/init從那裡執行。

您可以在此處找到一個很好的範例- 一個檢測從何處找到要複製的媒體的腳本,並且您需要創建 initramfs 映像,通常是手動創建,請參閱此腳本以獲取一些關鍵說明。

如果你不知道 initramfs 是如何工作的,你應該首先查看好的資訊,考慮閱讀Documentation/filesystems/ramfs-rootfs-initramfs.txt以及Linux From Scratch - About initramfs和Google“linux initramfs”。

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