linux内核的编译( 七 )


怎麽组成的有关)在说明这个例子之後会讨论到 。
首先,从;boot/root;磁片或者是;rescue;磁片开机,然後将持有可运作核心的分割区
挂上来:
mkdir;/mnt
mount;-t;ext2;/dev/hda3;/mnt
如果;mkdir;指令显示该目录已经存在,忽略掉不必理会它 。现在,cd;到持有可运作核
心的地方(注意:;/mnt; ;/usr/src/linux;-;/usr;=;/mnt/src/inux;) 。把一张格式
化过的磁片放进;a:;磁碟机,(确定不是你的;boot/root;磁片!),把映像档倾倒到
磁片里去,然後配置你的根目录分割区 。
cd;/mnt/src/linux
dd;if=zImage;of=/dev/fd0
rdev;/dev/fd0;/dev/hda1
cd;到根目录;/;并且卸下标准;/usr;分割区:
cd;/
umount;/mnt
你现在应该可以从这张磁片正常的开机了 。在这次开机後不要忘记执行;lilo;(或是其
它无论你曾经做错的什麽事)!
如同前面曾经提过的,还有另外一种很普遍的变通方式 。如果情况是你有一个可以运作
的核心在放在;/;(例如;/vmlinuz;),你也可以使用它 。假定所有的条件都跟上面的
例子一样,而我的核心映像是;/vmlinuz;,只要对上面的例子做这些改变:
把;/dev/hda3;改成;/dev/hda1(;/;分割区),把;/mnt/src/linux;改成;/mnt;,并且
把;if=zImage;改成;if=vmlinuz; 。至於前面有关注意如何推导出;/mnt/src/linx;的那
个部分可以忽略 。
5.6.;系统表示”;Warning:;bdflush;not;running”
这可以算是一个相当严重的问题 。从;1.0;版以後的核心开始(我记不清楚确实的版本
了,但大概是在;1994;年;4;月,;20;日左右),有个会周期性地更新文件系统缓冲区的
程序叫做″;update;”被升级或取代掉了 。
取得″;bdflush;″的原始程序码(你应该可以从你取得核心的地方找到),然後编译
它(你可能会希望在旧版的核心下执行编译及安装) 。它会以″;update;″为名安装它
自己,而在此之後你的新核心应该会运作良好 。
5.7.;系统显示关於;obsolete;routing;requests;的奇怪讯息
取得新版的;route;程序,并且重新编译旧的要件 。;/usr/src/linux/route.h;(这是
/usr/src/linux;下的一个档案)已经做了修改 。
6.;□诀和技巧
6.1.;重导;make;或是;patch;指令的输出
如果你想要记录这些″;make;″或是″;patch;″;指令到底做了些什麽,你可以把萤幕
的输出重导到一个档案去 。首先,要知道你用的是是那一种;shell:″;grep;root
/etc/passwd″;然後寻找看起来像″;/bin/csh;″一类的东西 。
如果你使用的是;sh;或是;bash;,″;(command);2>&1;|;tee;(output;file); 。″将会
把一份;make;的输出放到″;(output;file);″这个档案去 。
如果是;csh;或;bash,你应该使用″;(command);|&;tee;(output;file);″这个语法 。
如果是;rc(注意:你应该不会是用;rc;),语法是″;(command);>[2=1]
|;tee;(output;file); 。"
7.;;Misc
7.1.;;Author
The;original;revision;was;-0.1;on;3;October;1994;by;Brian;Ward
(ward@blah.tu-graz.ac.at).;;Please;send;me;any;comments,;additions,
corrections,;or;computers.;;Corrections;are,;in;particular,;the;most
important;to;me!
Even;though;I;try;to;be;attentive;as;possible;with;mail,;please
remember;that;I;get;a;lot;of;mail;per;day,;so;it;may;take;a;little
time;to;get;back;to;you.;Especially;when;emailing;me;with;a;question,
please;try;extra;hard;to;be;clear;and;detailed;in;your;message.;I"d
like;to;thank;everyone;who"s;given;me;feedback.
7.2.;;History;and;other;forms;of;this;document
I;originally;wrote;this;in;ASCII,;then;I;put;some;TeX;around;it,;and
then;horrified;the;TeX;so;that;I;could;convert;the;TeX;into;SGML;with
a;perl;script.;Because;of;the;original;in;TeX,;the;first;version;of
this;document;that;appeared;on;sunsite;had;two;section;numbers;with
each;section;(It;wouldn"t;have;looked;that;bad;if;they;weren"t

推荐阅读