仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 941|回复: 8
打印 上一主题 下一主题

[其他Linux] linux教程之技能:制造Linux操纵体系闪存启动盘

[复制链接]
山那边是海 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 16:48:41 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
初学阶段只要把上课时候学习过的命令练熟就可以了.单靠学习各种命令而成为高手是不可能的。
在U盘上创建Linux启动盘,关于体系保护职员具有加倍有用的意义,你可使用Linux创建玲珑的内核,创建收集情况,疾速地判别和扫除收集妨碍与传送文件。
下载相干软件:e3,bvi,Liuux内核。
1、编译内核
起首盘算机的主板必需要撑持USB硬盘的启动体例,而且所利用的优盘是启动型优盘。
以Linux-2.4.20为例申明。编译时必定要注重不要编译不用要的模块,如声卡驱动等驱动模块,使编译的内核尽量小一些。因为要撑持优盘启动,必需将SCSI设备、usbcore、usb-storage、Loopbackdevicesupport、RAMdisksupport和initrd等编译到内核中。
很多人会问,usb-storage模块已包含在内核了为何还要创建initrd.img文件?这是因为优盘的初始化历程比实行/sbin/init慢,招致内核已启动完成了,优盘还没有完成初始化事情,因而根文件体系没有加载,这时候实行/sbin/init命令一定不乐成。经由过程创建initrd.img文件,在启动内核时加载initrd.img文件到内存中,守候3秒使优盘完成初始化事情,再实行/sbin/init指令。详细操纵步骤以下。
1.创建initrd.img文件
#mkdir-p/mnt/initrd
#cd/tmp
#mkinitrd/tmp/initrd.gz2.4.20-usb

2.解压initrd.img文件,修正启动剧本linuxrc
#gunzipinitrd.gz
#mount-oloop/tmp/initrd/mnt/initrd
#cp/sbin/busybox/mnt/initrd/bin
#cd/mnt/initrd/bin
#ln-sbusyboxsleep
#vi/mnt/initrd/linuxrc

到场以下内容:
echowait3seconds.....
/bin/sleep3

3.从头天生initrd.img文件
因为缺省创建的initrd文件对照年夜(为4MB),为了加速优盘的启动,必需减小它。详细操纵以下:
#mkdir-p/mnt/initrdusb
#cd/tmp
#ddif=/dev/zeroof=/tmp/initrdusbbs=1Mcount=1
#mke2fs-m0initrdusb
#mount-oloop/tmp/initrdusb/mnt/initrdusb
#cp-a/mnt/initrd/*/mnt/initrdusb
#umount/mnt/initrd
#umount/mnt/initrdusb
#cd/tmp
#gzip-9initrdusb
#cpinitrdusb.gz/boot/initrd-2.4.20-usb.img

4.测试编译的内核是不是一般启动
测试编译的内核是不是一般启动,和在启动过程当中是不是可瞥见优盘的相干信息。
2、创建闪存启动盘
1.将优盘分红两个分区
留给Linux分区容量巨细完整取决于安装哪些体系保护工具,了局以下:
  #modprobeusb-storage
  #fdisk-l/dev/sda
  Disk/dev/sda:16heads,63sectors,126cylinders
  Units=cylindersof1008*512bytes
  DeviceBootStartEndBlocksIdSystem
  /dev/sda1110251376+6FAT16
  /dev/sda21031261209683Linux

注重:假如必要利用优盘引诱Windows98,扇区巨细必需设置为63个扇区,能够经由过程fdisk的x命令扩大修正heads、sectors和cylinders参数。
2.创建与天生ext2分区
  #mke2fs-m0/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文件,内容以下:
  timeout10
  color0x170x70
  default0
  titleWindows98
  rootnoverify(hd0,0)
  makeactive
  chainloader+1
  titleGNU/LinuxRedhat8.0(2.4.20-usb)
root(hd0,1)
  kernel/boot/vmlinuz-2.4.20-usbroroot=/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-sbusybox创建这些文件的标记连接。能够依据团体必要从头编译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
  exportPATH
  mount-n-tprocnone/proc
  umount/initrd
  mount-n-oremount,rw/
  mount-n-oremount,rw-tprocnone/proc
  ifconfiglo127.0.0.1

7.编纂etc/fstab文件
内容以下:
  /dev/sda2/ext2defaults11
  none/procprocdefaults00

3、使用举例
举一个传送文件的例子。在一台一般事情的Linux呆板A(IP=192.168.100.5)上实行:
$tarcf-win98|nc-l-p5555
注重:能够在呆板B上利用优盘启念头器,telnet上岸到呆板A上实行以上命令。
在呆板B上利用优盘启动实行:
  #mount-tvfat-ocodepage=938,iocharset=cp936/dev/hda5/mnt/2dos
  #cd/mnt/2dos
  #modprobeeepro00
  #ifconfigeth0192.168.1.10
  #routeadddefaultgw192.168.1.1
  #ping192.168.10.5
  #nc192.168.10.55555|tarxf-

假如这时候利用format/s命令没法创建优盘Windows98启动盘,能够接纳变通的体例,详细操纵以下:
  #mkdosfs-F16/dev/sda1
  #xxd-c16/dev/sda1|less

这时候纪录下BootRecord的32~35字节内容(本例为60910100,这4个字节纪录了FAT分区总的扇区数目),再利用朗科随盘供应的制造引诱盘的工具制造Windows98启动盘,然后利用Linux下bvi大概可以编纂二进制文件的工具修正BootRecord的32~35字节为本来的内容。如许,就可以够完成名不虚传的三启动体例(Windows双启动+Linux启动)。

</p>
Linux的常用命令find,察看man文档,初学者一定会觉得太复杂而不原意用,但是你一旦学会就爱不释手。
莫相离 该用户已被删除
沙发
发表于 2015-1-17 17:22:53 | 只看该作者
上课传授的不仅仅是知识,更重要的是一些道理,包括一些做人的道理,讲课时也抓住重点,循序渐进,让同学理解很快;更可贵的是不以你过去的成绩看问题.
变相怪杰 该用户已被删除
板凳
发表于 2015-1-30 10:09:38 | 只看该作者
一些显而易见的小错误还是用vi改正比较方便。以后的大一点的程序就得在Linux下调试了,因为有的头文件在VC里面说找不到。?
飘灵儿 该用户已被删除
地板
发表于 2015-2-6 09:56:37 | 只看该作者
在学习的过程中,我们用的是VM虚拟机,开始时真的不真的该怎么去做,特别是我的是命令窗口界面,别人的是图形界面,我都不知道怎么调过来。
柔情似水 该用户已被删除
5#
发表于 2015-2-15 22:39:29 | 只看该作者
一定要学好命令,shell是命令语言,命令解释程序及程序设计语言的统称,shell也负责用户和操作系统之间的沟通。
冷月葬花魂 该用户已被删除
6#
发表于 2015-3-4 16:37:39 | 只看该作者
一定要养成在命令行下工作的习惯,要知道X-window只是运行在命令行模式下的一个应用程序。在命令行下学习虽然一开始进度较慢。
admin 该用户已被删除
7#
发表于 2015-3-11 20:29:40 | 只看该作者
Linux是参照Unix思想设计的,理解掌握Linux必须按照Unix思维来进行。思想性的转变比暂时性的技术提高更有用,因为他能帮助你加快学习速度。
老尸 该用户已被删除
8#
发表于 2015-3-19 12:24:06 | 只看该作者
生成新的unispimsp.ksc。”另外得到回复后如果问题解决,向帮助过你的人发个说明,让他们知道问题是怎样解决的。
9#
发表于 2015-3-28 04:42:58 | 只看该作者
在学习linux的工程中,linux学习方法有很多种,这里是小编的学习心得,给大家拿出来分享一下。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-5-6 01:44

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表