Linux
如何從核心原始碼製作一個最小的可啟動 linux(僅限終端)?
我想製作一個非常小的 linux 作業系統,它只有一個終端界面和基本的命令/應用程序(busybox 是我對命令/應用程序的選擇)。我不想在我的作業系統上安裝安裝選項。我只是希望它完全從 RAM 啟動和執行。我打算使用 ISO-Linux 作為引導載入程序。沒有網路,沒有虛擬化支持,沒有不必要的驅動程序等。我希望它是非常非常基本的作業系統。我已經從 kernel.org 下載了最新的穩定核心 (v4.5) 原始碼並準備好建構環境。
我的另一個困惑是,預設情況下核心是否有任何使用者界面(shell、終端等),我可以在其中鍵入命令並查看輸出?
從技術上講,您可以實現這一點。雖然,核心沒有任何內置的使用者界面。
您需要按照以下步驟操作:
1. Create a initramfs with static busybox and nothing else. This initramfs will have few necessary directories: like proc, sys, tmp, bin, usr, etc 2. Write a "/init" script, whose main job will be: a. mount the procfs,tmpfs and sysfs. b. Call busybox's udev i.e. mdev c. Install the busybox command onto virtual system by executing busybox install -s d. Calling /bin/sh 3. Source the initramfs directory while compiling the kernel. You can do so by flag: CONFIG_INITRAMFS_SOURCE 4. Compile your kernel. 5. Boot off this kernel and you will get the shell prompt with minimal things.
不過,我以非常正式的方式寫了上面的筆記。您可以按照自己的意願對其進行微調。
更新:
按照此連結獲取一些指南。