4.测试编译的内核是否正常启动

测试编译的内核是否正常启动,以及在启动过程中是否可看见优盘的相关信息。

建立优盘启动盘

1.将优盘分成两个分区

留给Linux分区容量大小完全取决于安装哪些系统维护工具,结果如下:

# modprobe usb-storage # fdisk -l /dev/sda Disk /dev/sda: 16 heads, 63 sectors, 126 cylinders Units = cylinders of 1008 * 512 bytes Device Boot Start End Blocks Id System /dev/sda1 1 102 51376+ 6 FAT16 /dev/sda2 103 126 12096 83 Linux

注意:如果需要使用优盘引导Windows 98,扇区大小必须设置为63个扇区,可以通过fdisk的x命令扩展修改heads、sectors和cylinders参数。

2.建立与生成ext2分区

# mke2fs -m 0 /dev/sda2 # mkdir -p /mnt/sda2 # mount /dev/sda2 /mnt/sda2 # cd /mnt/sda2

3.建立boot目录

将编译好的内核与initrd-2.4.20-usb.img文件拷贝到boot目录、编译好的模块拷贝到lib/modules目录,以及将/boot/grub的文件拷贝到boot目录,编辑boot/grub/menu.lst文件,内容如下:

timeout 10 color 0x17 0x70 default 0 title Windows 98 rootnoverify (hd0,0) makeactive chainloader +1 title GNU/Linux Redhat 8.0 (2.4.20-usb) root (hd0,1) kernel /boot/vmlinuz-2.4.20-usb ro root=/dev/sda2 initrd /boot/initrd-2.4.20-usb.img

安装grub,具体操作如下:

grub> root (hd1,1) grub> setup (hd1)

4.建立bin目录

根据自工作的需要拷贝系统维护工具,如insmod、fsck和mkdosfs等实用程序。一定要注意使用ldd命令检查那些共享库文件,这些文件需要按照原来的路径拷贝到lib目录。 由于受到磁盘空间的限制,使用busybox命令代替一些常见的Linux命令,主要原因就是busybox 文件非常小,并且是静态链接的,包括许多常见的Linux命令(如cat、init、ifconig、route)用ln -s busybox建立这些文件的符号联接。可以根据个人需要重新编译busybox,包括vi等命令,也可以使用小巧的e3代替vi。

另外,如果使用bash,还必须编辑与裁减/etc/termcap及如下文件:

/bin/bash /etc/termcap /usr/share/terminfo/l/linux /usr/share/terminfo/k/klone+acs /usr/share/terminfo/k/klone+color /usr/share/terminfo/k/klone+sgr

5.建立dev目录

使用cp -a命令拷贝常用的设备文件,包括console、tty1、tty2、tty3sda、sda1、sda2、hda、hdb和hda1等设备文件。

6.编辑etc/init.d/rcS

内容如下:

#!/bin/sh PATH=/sbin:/bin export PATH mount -n -t proc none /proc umount /initrd mount -n -o remount,rw / mount -n -o remount,rw -t proc none /proc ifconfig lo 127.0.0.1

7.编辑etc/fstab文件

内容如下:

/dev/sda2 / ext2 defaults 1 1 none /proc proc defaults 0 0

应用举例

举一个传送文件的例子。在一台正常工作的Linux机器A(IP=192.168.100.5)上执行:

$ tar cf - win98 | nc -l -p 5555

注意:可以在机器B上使用优盘启动机器,telnet登陆到机器A上执行以上命令。在机器B上使用优盘启动执行:

# mount -t vfat -o codepage=938,iocharset=cp936 /dev/hda5 /mnt/2dos # cd /mnt/2dos # modprobe eepro00 # ifconfig eth0 192.168.1.10 # route add default gw 192.168.1.1 # ping 192.168.10.5 # nc 192.168.10.5 5555 | tar xf -

如果这时使用format /s命令无法建立优盘Windows 98启动盘,可以采用变通的方式,具体操作如下:

# mkdosfs -F 16 /dev/sda1 # xxd -c 16 /dev/sda1 | less

这时记录下Boot Record的32~35字节内容(本例为60 91 01 00,这4个字节记录了FAT分区总的扇区数量),再使用朗科随盘提供的制作引导盘的工具制作Windows 98启动盘,然后使用Linux下bvi或者能够编辑二进制文件的工具修改Boot Record的32~35字节为原来的内容。这样,就能够实现名副其实的三启动方式(Windows双启动+Linux启动)。

手机做linux启动盘,教你制作Linux操作系统的USB启动盘相关推荐

  1. linux系统制作usb启动盘,教你制作Linux操作系统的USB启动盘

    USB闪存存储装置(优盘)由于具有轻巧精致.使用方便.便于携带等优点,特别是对比软盘具有容量较大.安全可靠.读取速度较快等特性,越来越多人使用这种装置取代了软驱与软盘,在PC之间交换文件.目前新出的主 ...

  2. 如何制作linux系统硬盘,教你制作Linux操作系统的Boot/Root盘

    boot/root盘由两部分组成,即核心和根文件系统.要把这两部分都放到一个1.44MB的软盘上去,通常要对内核和根文件系统进行压缩,压缩核心的最好方法是进行重新编译内核,将一些不必要的支持去掉,如对 ...

  3. dmg镜像如何写入u盘_手把手教你制作Linux系统安装U盘,小白都能轻松上手

    随着电脑更新换代,家里闲置或在用的电脑渐渐多了,总想折腾一下:有时电脑用久了,变得慢起来了,也时不时会想要重装一下系统,因为懒得去装所谓的垃圾清理或优化软件.于是决定制作一个操作系统的安装U盘,以备日 ...

  4. usb启动计算机boss设置方法,教程方法;U盘装系统中bios设置USB启动图文教程电脑技巧-琪琪词资源网...

    琪琪词资源网-教程方法;U盘装系统中bios设置USB启动图文教程电脑技巧,以下是给大家带来的教程方法;U盘装系统中bios设置USB启动图文教程,大家可以了解一下哦! 总的来讲,设置电脑从U盘启动一 ...

  5. Linux如何制作efi启动盘,教你制作macOS+Ubuntu+WindowsPE超级启动盘(仅支持UEFI)

    对于多系统用户,有没有觉得每一个系统一个U盘很麻烦而且浪费U盘,本文会教你如何制作macOS+Ubuntu+WindowsPE多系统启动盘.注意:建议使用博主分享的PE,其他PE文件结构或许不同,不确 ...

  6. amd装linux不进pe,amdu盘启动,详细教您amd主板怎么设置u盘启动

    要让电脑开机从U盘启动,就像用光盘给电脑装秋叶系统要让电脑从光盘启动一样,必须在电脑开机时进行设置,因为电脑主板的差异所以设置的方法也是各不相同,那么amd主板bios怎么设置u盘启动咧?下面,小编就 ...

  7. 制作kali live usb启动盘-win10下

    一.准备 工具 DiskGenius U盘分区工具 Universal-USB-Installer iso系统镜像烧录工具 kali live iso 镜像下载 u盘(最好usb3.0以上,大小64G ...

  8. python应用程序无法正常启动0xc0000022_应用程序无法正常启动0xc0000022 教你应用程序无法正常启动0xc0000022...

    使用电脑时会遇到软件打不开的问题,弹出提示应用程序无法正常启动0xc0000022,其实出现应用程序无法正常启动0xc0000022的原因是你的机子的Windows/system32/下的某个.dll ...

  9. linux系统装u盘自启动,UNetbootin_制作linux自启动U盘/将Linux系统装进U盘里 V6.08版

    UNetbootin这个小程序的作用是帮您将Linux系统装进U盘里,硕大的Linux系统居然被装进了U盘里,当然了您最好选择一部移动硬盘,U盘的会可能会有点卡,这是因为U盘读写IO的问题,比较慢,经 ...

  10. u盘启动蓝屏 索尼vaio_笔记本u盘启动,详细教您索尼笔记本怎么设置u盘启动

    我们在用u盘装系统的时候,除了直接按启动快捷键选择u盘启动之外,还能够在bios中设置u盘启动,但很多用户反映说在索尼笔记本bios中设置u盘启动一直不成功,究其原因是不知道怎么设置u盘启动,为此,小 ...

最新文章

  1. mac 终端快捷命令
  2. 如何跟项目经理和开发人员反馈安全测试报告的问题
  3. 高并发编程-重新认识Java内存模型(JMM)
  4. 服务器lIS绑定网站,DataList 中动态绑定服务器子控件的代码
  5. 获取32R的图像的直方图的一个算法
  6. 下列python语言、返回结果不是uc_MKAN1-UC 5103作业代写、代做Analytics作业、Java,Python,c/c++程序语言作业代做...
  7. yii2 调用未定义函数_Python 函数(三) 使用规则
  8. markdown常见问题
  9. Numpy——常用的排序函数
  10. 开发人员,请不要抱怨项目没有文档
  11. 软件基本功:工作目标经常变化,要及时跟进
  12. Python制作经典的吃豆豆小游戏
  13. 整理学习之深度可分离卷积
  14. 计算机办公软件基础知识题库,办公软件基础知识试题试卷--题库.doc
  15. 中央推进城镇化建设 六行业分享25万亿蛋糕
  16. phpMyAdmin4.8.1漏洞复现及利用
  17. linux ipcs 命令详解
  18. 炉石传说强化机器人,炉石传说:这6张机械卡是最强势的,奇利亚斯只排在了最后一名...
  19. 程序员的节日1024
  20. 9008刷机模式写入超时刷机帮_高通9008刷机大法,避坑指南,救砖前提

热门文章

  1. GoC全教程(附各种下载、教程链接)
  2. 超详细中文车牌识别开源库EasyPR入门实战(win10_VS2019_opencv34)
  3. 记录一次由于流的read(byte[3 * 1024], 0, len); 读取不足定义的长度,引发的线上bug
  4. Java JDK下载安装及环境配置超详细图文教程
  5. 介绍一本好书《海量数据库解决方案》
  6. 贡献十本经典的java教程,都是pdf完整版
  7. Android应用程序开发实用案例50则
  8. C语言游戏编程之反弹小球
  9. 运维工具之轻量级自动化运维工具Fabric源码安装
  10. mysql主键和外键的连接_MySQL的主键和外键