此处的要点是,无论你已加入什麽;I/O;支援到你的;kernel;内以支援备份,你同时也应该把它们加入到你的;boot/root;kernel;中 。;
实际建造;kernel;的程序详述在随附於;kernel;的文件中 。你可以轻易地照著指示进行,所以可以;/usr/src/linux;为起点 。如果你在建造;kernel;上有困难,你或许不应该企图不择手段地建造;boot/root;systems; 。请记得用;``make;zImage""压缩;kernel; 。;
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
6.;把它们放在一起:制作磁片(组);--;Putting;them;together:;Making;the;diskette(s)
进行到这里,你已经有一个;kernel;与一个压缩的;root;filesystem; 。如果你正在制作一张;boot/root;磁片,请检查它们的;size;,以确定它们都能放在同一张磁片上 。如果你正在制作一套两张磁片的;boot; ;root;磁片组 。请检查;root;filesystem;以确定它能放在一张磁片上 。;
你应该决定是否使用;LILO;以启动;bootdisk的;kernel; 。替代的方法是直接把;kernel;copy;到磁片上,然後不使用;LILO;开机 。使用;LILO;的好处在於让你能够提供一些参数给;kernel;,这些参数对初始化硬体来说可能是必要的(请检查你系统上的;/etc/lilo.conf;档 。如果这个档存在,而且有一行像``append=..."",你可能需要这个特点;(feature)) 。使用;LILO;的缺点在於建造;bootdisk;变得更为复杂,并且占用稍嫌较多的空间 。你将必须设定一个小型而独立的;filesystem;,我们称之为;kernel;filesystem,在其中你传送;kernel;以及一些;LILO;所需的其它档案 。;
如果你将要使用;LILO;,请继续读下去;如果你要直接传送;kernel;,先跳过此,直接到;Without;using;LILO;这一节 。;
6.1;用;LILO;传送;kernel;--;Transferring;the;kernel;with;LILO;
你所必须做的第一件事是为;LILO;编写一个小型的组态档 。这个档看起来像这样:;
--------------------------------------------------------------------------------
boot;;;;;;=/dev/fd0
install;;;=/boot/boot.b
map;;;;;;;=/boot/map
read-write
backup;;;;=/dev/null
compact
image;;;;;=KERNEL
label;;;;;=Bootdisk
root;;;;;;=/dev/fd0
--------------------------------------------------------------------------------
关於这些参数的说明请看;LILO"s;user;documentation; 。你或许也会想从你硬碟上的;/etc/lilo.conf;档,加入一行;append=...;到这个组态档中 。;
把这个组态档存成;bdlilo.conf; 。;
现在你必须制作一个小型的档案系统,我们称之为;kernel;filesystem;,有别於;root;filesystem; 。;
首先,指出这个;filesystem;应该会有多大 。用;blocks;计算你;kernel;的;size;(这个;size;用;``ls;-l;KERNEL"";显示出来,是被;1024;所除并强迫进位),然後加;50; 。这个;50;blocks;是估计的空间,为;inodes;与其它档案所需 。如果你想要,你可以精确地计算这个数字,或是就用;50;就好了 。如果你正在制作两张磁片的磁片组,你会高估这个空间,因为无论如何第一张磁片只给;kernel;使用 。我们称这个数字会;KERNEL_BLOCKS; 。;
请把软碟片放入软碟机;(为求简便,我们假设是;/dev/fd0),然後在其上制作;ext2;kernel;filesystem; 。;
mke2fs;-i;8192;-m;0;/dev/fd0;KERNEL_BLOCKS
``-i;8192"";指定我们想要每;8192;bytes;一个;node; 。接下来,;mount;这个;filesystem;,移除;lost found;目录,然後为;LILO;造出;dev;与;boot;这两个目录:;
mount;/dev/fd0;/mnt
rm;-rf;/mnt/lost found
mkdir;/mnt/{boot,dev}
再来,造出设备档;/dev/null;与;/dev/fd0; 。不用寻找设备号码,你只要从你的硬碟上用;-R;copy它们:;
cp;-R;/dev/{null,fd0};/mnt/dev
LILO;需要一份它的;boot;loader;的;copy;,;boot.b;,你可以从你的硬碟得到它 。它通常是放在;/boot;目录内 。;
推荐阅读
- Linux 指令篇:DOS相容指令--mdeltree
- Linux 指令篇:档案目录管理--cat
- Linux 指令篇:档案目录管理--cd
- Linux 指令篇:档案目录管理--chmod
- Linux 指令篇:档案目录管理--chown
- Linux 指令篇:档案目录管理--cp
- Linux 指令篇:档案目录管理--cut
- Linux 指令篇:档案目录管理--less
- Linux 指令篇:档案目录管理--ln
- Linux 指令篇:档案目录管理--locate
