• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

制作软盘Linux

发布: 2007-7-01 23:30 | 作者: admin | 来源: | 查看: 11次 | 进入软件测试论坛讨论

领测软件测试网


如何制作软盘Linux

版权信息:该文章版权由岳光所有.可在非商业目的下任意传播和复制.对于商业目的下对本文的任何行为需经作者同意.联系方式:[email protected]

制作软盘Linux(即在软盘上放一个Linux系统)的目的在于可以深入了解Linux的结构,可利用软盘起动机器修复系统,抢救数据.注意!!:软盘Linux和Linux启动盘不同,后者只是将核心放于软盘,引导硬盘上的Linux系统,而前者是存在于软盘上的Linux系统.

成功的制作有用的软盘Linux在于:
1)编译一个足够小而且有一定功能的内核.
2)采用busybox并适当的编译它.(busybox是一个微小的程序可以让系统提供ls,ash,rm,cp,init等多种服务,它只有一个很小的busybox文件,用ls,rm,init联接他,执行这些联接就可运行相应的服务)
3)创建系统必需的目录和文件(如/dev,hda,inittab等)
4)配置引导程序GRUB
5)将以上三点恰当的组织在软盘上.
本文将按照以上顺序介绍制作软盘Linux的方法.

准备:创建/tmp/floppy目录存放临时文件.

I.)编译内核
make mrproper
拷贝../SRC/configs/i386-BOOT(类似文件)到.../SRC/.config
make menuconfig(最好去掉第二项中所有的*以去掉对模块的支持.必需使核心支持RamDisk其余选项自定)注意:!!完全去掉网络功能可能造成编译失败(2.4.20-8内核即如此),但可部分去掉.)
make dep
make clean
make bzImage
../SRC/arch/i386/boot/bzImage即为内核
编译成功的内核应不超过1M
II.)编译busybox
busybox源程序可在RedHat的网站上(ftp://ftp.redhat.com/pub/redhat/linux/9/en/os/i386/SRPMS)找到相应的软件包.假设安装后源码目录为/../src/busybox
修改/../src/busybox/Config.h文件,在不用的功能前加//
修改/../src/busybox/Makefile文件,将DOSTATIC=true
执行 make (生成的名为busybox的文件大小应在650K左右)
make PREFIX=/tmp/floppy install(此时在/tmp/floppy目录下即有Linux启动运行所必须的目录和文件了)
III.)创建系统必需的目录和文件
1.在/tmp/floppy目录下
mkdir proc mnt etc dev
在etc目录下创建inittab文件和rc.S文件(用vi)
执行chmod 777 inittab
chmod 777 rc.S
inittab内容为:
::sysinit:/etc/rc.S
::askfirst:/bin/sh
rc.S文件内容为:
#!/bin/sh
mount -t proc /proc /proc
2.在dev目录下创建设备文件
应创建的设备文件有:console,hda,hda1,hda2,hda3...(根据硬盘分区数而定),hdb,hdc,hdd,tty,tty0,tty1,fd0,null,loop0,ram0,tty5
相应的文件在/dev下都可找到但不能复制,须自己创建:
这里采用mknod命令语法如下:
mknod 文件名 类型 MAJOR MINOR
类型 MAJOR MINOR可用ls -l在/dev下查找.(权限串的前一位即为"类型")
如创建console文件须在/tmp/floppy/dev下执行:mknod console c 5 1
IV.)配置grub并组织软盘.
1.取一张格式化为ext2的空盘.在其上创建boot boot/grub目录
拷贝/boot/grub/stage1和stage2到软盘的boot/grub下
执行:grub
root (fd0)
setup (fd0)
quit
至此grub安装成功!
在软盘的boot/grub目录下创建grub.conf文件
内容为:
default=0
timeout=10
title Linux
root (fd0)
kernel /bzImage
initrd /image.gz
grub配置成功!
拷贝bzImage到软盘根目录下.
2.cd /tmp
dd if=/dev/zero of=image bs=1k count=2048
losetup /dev/loop0 image
mke2fs -m 0 /dev/loop0
mount -t ext2 /dev/loop0 /mnt
cp -R floppy/* /mnt
umount /mnt
losetup -d /dev/loop0
sync
dd if=image|gzip -9>image.gz
拷贝image.gz到软盘根目录下.

至此,软盘Linux制作成功!重新启动用软盘引导看看自己制作的Linux吧!

文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:[email protected] 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网