分享
 
 
 

制作在软盘上跑的Linux引导器详细过程

王朝system·作者佚名  2008-05-31
窄屏简体版  字體: |||超大  

1. 软盘上安装引导器(grub)

一般制作软盘上跑的Linux引导器都使用sysLinux这个工具(这个工具不支持ext2分区格式,只能支持fat分区格式),因为我对grub比较熟悉,并且我在软盘上安装grub只用了132KB空间,不是很耗磁盘空间。

具体操作如下:

# mke2fs /dev/fd0

创建了 ext2 文件系统后,需要安装该文件系统:

# mount /dev/fd0 /mnt/floppy

现在,需要创建一些目录,并将一些关键文件(原先安装 GRUB 时已安装了这些文件)复制到软盘:

# mkdir /mnt/floppy/boot

# mkdir /mnt/floppy/boot/grub

# cp /boot/grub/stage1 /mnt/floppy/boot/grub

# cp /boot/grub/stage2 /mnt/floppy/boot/grub

再有一个步骤,就能得到可用的引导盘。

在Linux bash中,从 root 用户运行“grub”,该程序非常有趣并值得注意,因为它实际上是 GRUB 引导装入器的半功能性版本。尽管 Linux 已经启动并正在运行,您仍可以运行 GRUB 并执行某些任务,而且其界面与使用 GRUB 引导盘或将 GRUB 安装到硬盘 MBR 时看到的界面(即GRUB控制台)完全相同。

在 grub> 提示符处,输入:

grub> root (fd0)

grub> setup (fd0)

grub> quit

现在,引导盘完成了。

2. 安装根文件系统

一套Linux系统要正常启动,根文件系统要包括下列文件夹:

/bin /etc /proc /tmp /var /dev /mnt

要包括下列基本的设备文件:

/dev/console /dev/fd0 /dev/null /dev/ram0 /dev/tty /dev/tty0

要包括下列配置文件:

/etc/rc.d/inittab /etc/rc.d/rc.sysinit /etc/fstab

要实现基本的功能,还要包括一些常用工具:如:sh,ls,cd,cat等。其中,前面三个部分不要多少空间的,但是常用工具会占用很多空间,要是用原来系统中的这些命令,就是全部用静态编译,不是用动态连接库,大概有2MB~3MB,放不进软盘。网络上解决的方案是使用BusyBox工具。具体可以到官方网站:www.busybox.net看看。下载BusyBox工具的源代码。

注意:

(1) 译的时候要静态编译,修改 Makefile 中的 DOSTATIC 参数,从false 改为 true,这样,编译出来的代码就不要依赖glibc了。

(2) 因为我们用的是 BusyBox 上的 init,与一般所使用的 init 不太一样,会先执行 /etc/init.d/rcS 而非 /etc/rc.d/rc.sysinit,为了做出来的 FloppyLinux 架构与 Redhat 的架构一样,所以修改了 BusyBox 中的 init.c底下是修到的部分内容∶

#ifndef INIT_SCRIPT

#define INIT_SRCIPT "/etc/rc.d/rc.sysinit"

#endif

具体操作如下:

(1) 官方网站上下载BusyBox的最新版本:busybox-0.60.5.tar.gz解开,按照上面的注意点修改源代码。

(2) 运行下列命令:

#make

#make install

(3) 译好的可势行文件放在 ./_install 文件夹里的。

#cp ./_install /tmp/floppy-Linux -r

(4) 动建立其它的文件或文件夹:

#cd /tmp/floppy-Linux

# mkdir dev etc etc/rc.d proc mnt tmp var

# chmod 755 dev etc etc/rc.d bin mnt tmp var

# chmod 555 proc

# cd dev

# mknod tty c 5 0

# mknod console c 5 1

# chmod 666 tty console

# mknod tty0 c 4 0

# chmod 666 tty0

# mknod ram0 b 1 0

# chmod 600 ram0

# mknod fd0 b 2 0

# chmod 600 fd0

# mknod null c 1 3

# chmod 666 null

(5) 建启动配置文件:(inittab,rc.sysinit,fstab)

initab:

::sysinit:/etc/rc.d/rc.sysinit

::askfirst:/bin/sh

rc.sysinit:

#!/bin/sh

mount -a

# chmod 755 rc.sysinit

fstab:

proc /proc proc defaults 0 0

(6) 作Ramdisk的镜像文件:

# dd if=/dev/zero of=/tmp/initrd bs=1k count=4096

# losetup /dev/loop0 /tmp/initrd

# mke2fs -m 0 /dev/loop0>

# mount -t ext2 /dev/loop0 /mnt

# cp -r /tmp/floppy-Linux/* /mnt

# umount /mnt

# losetup -d /dev/loop0

# dd if=/tmp/initrd | gzip -9 > /tmp/initrd.gz

# rm -f /tmp/initrd

# sync

3.编译内核:

这部分内容不详细讲述,主要是去掉了一些不需要的选项,减小内核,编译出来的内核是725920Byte。里面包含了必要的网卡驱动和网络协议栈。

4.整合启动盘

现在所用到了的东西全部搞好了,下面就是整合一下:

全部文件(文件夹)如下:

/lost+found/

/boot/

/boot/grub/

/boot/grub/stage1 =========èGrub启动时用到的两个文件

/boot/grub/stage2

/boot/grub/menu.lst =========èGrub的配置文件指向grub.conf

/boot/grub/grub.conf

/boot/kernel =============è内核

/initrd.gz ===============è内存镜像文件

这样这张软盘就能启动一套Linux系统了,占用1.213MB。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有