構建自己的 LINUX 系統(二)

2021-07-23 06:29:34 字數 2220 閱讀 1976

這次我們要來定製一下 tiny core 的引導介面,要用到 syslinux。

mkdir syslinux_moduels

cd syslinux_modules/

wget

/bxtlinux/raw

/dev/boot

/isolinux/boot.cat

wget

/bxtlinux/raw

/dev/boot

/isolinux/isolinux.bin

wget

/bxtlinux/raw

/dev/boot

/isolinux/ldlinux.c32

wget

/bxtlinux/raw

/dev/boot

/isolinux/libcom32.c32

wget

/bxtlinux/raw

/dev/boot

/isolinux/libutil.c32

wget

/bxtlinux/raw

/dev/boot

/isolinux/reboot.c32

wget

/bxtlinux/raw

/dev/boot

/isolinux/vesamenu.c32

cd ..

sudo cp syslinux_modules/* boot/isolinux/ -fv

syslinux 配置檔案路徑為mylinux/boot/isolinux/isolinux.cfg,可以使用 vim、nano、gedit 之類的文字編輯器進行編輯修改,我這裡做了如下修改:

ui vesamenu.c32

default mylinux

prompt 0

menu title mylinux boot menu

timeout 120

menu hshift 0

menu vshift 0

menu width 78

menu rows 14

menu margin 10

menu tabmsgrow 18

menu timeoutrow 20

label mylinux

menu label ^mylinux

linux /boot/vmlinuz

initrd /boot/core.gz

label coremode

menu label ^core mode

linux /boot/vmlinuz

initrd /boot/core.gz

label reboot

menu label ^reboot

com32 /boot/isolinux/reboot.c32

ui vesamenu.c32指定為 vesamenu 模式的 ui,比較漂亮。default mylinux預設採用 mylinux 標籤所指定的啟動項。

menu title mylinux boot menuui 標題。timeout 120等待時長。menu hshift 0 ... ...一些 ui 配置。

label mylinux

menu label ^mylinux --> 名稱

linux /boot/vmlinuz --> 核心映象

initrd /boot/core.gz --> 檔案系統映象

label coremode

menu label ^core mode

linux /boot/vmlinuz

initrd /boot/core.gz

label reboot

menu label ^reboot

com32 /boot/isolinux/reboot.c32 --> 使用 reboot 模組用以重啟

構建自己的 LINUX 系統(一)

實驗目標 基於tiny core構建一款迷你的 linux 發行版系統。技能要點 準備工具 乙個 linux 開發環境 如 ubuntu debian makefile 在內的常用開發工具 虛擬機器 qemu 或 virtualbox 都可以 syslinux utils debian ubuntu...

構建自己的Linux 之二 BusyBox移植

busybox是乙個整合了一百多個最常用linux命令和工具的軟體,他甚至還整合了乙個http伺服器和乙個telnet伺服器,而所有這一切功能卻只有區區1m左右的大小.我們平時用的那些linux命令就好比是分立式的電子元件,而busybox就好比是乙個積體電路,把常用的工具和命令整合壓縮在乙個可執行...

構建自己的根檔案系統

說明 本篇文章是筆者自己用的,可以參考,由於環境不同,所以可能讀者不是太理解。根檔案系統的命令都是busybox的連線命令比如執行ls與執行 busybox ls 是同樣的效果 一 最小根檔案系統 1 dev console dev null 2 init程式 於busybox 3 etc init...