您现在的位置: 万盛学电脑网 >> 操作系统 >> Linux教程 >> 正文

The Linux Bootdisk HOWTO 中译版

作者:佚名    责任编辑:admin    更新时间:2022-06-22

class="22066"> 作者:;Tom;Fawcett;(;[email protected])

译者:;朱汉农;
v4.0,;April;2000,;翻译日期:;27;July;2000;


--------------------------------------------------------------------------------
本文描述如何设计与建造你自己的;Linux;boot/root;磁片。这些磁片能用来当做救援磁片;(rescue;disks);,或是能用来测试新系统元件;(components);。在企图建造你自己的;bootdisk;之前,你应该要相当熟悉系统管理工作。如果你只是想要一张紧急时使用的救援磁片,请参考;Pre-made;bootdisks;。;
--------------------------------------------------------------------------------

1.;前言;--;Preface
1.1;版本注意事项;--;Version;notes;
1.2;尚未完成的事;
1.3;回应与感谢;--;Feedback;and;credits;
1.4;散布政策;--;Distribution;policy;

2.;简介;--;Introduction

3.;Bootdisks与开机流程;--;Bootdisks;and;the;boot;process
3.1;开机流程;--;The;boot;process;
3.2;磁碟类型;--;Disk;types;

4.;建立一个root;filesystem;--;Building;a;root;filesystem
4.1;概观;--;Overview;
4.2;制作;filesystem;--;Creating;the;filesystem;
4.3;移植档案系统;--;Populating;the;filesystem;
4.4;对;PAM;与;NSS;的提供;--;Providing;for;PAM;and;NSS;
4.5;模组;--;Modules;
4.6;一些最後的细节;--;Some;final;details;
4.7;Wrapping;it;up;

5.;选择一个;kernel;--;Choosing;a;kernel

6.;把它们放在一起:制作磁片(组);--;Putting;them;together:;Making;the;diskette(s)
6.1;用;LILO;传送;kernel;--;Transferring;the;kernel;with;LILO;
6.2;不使用;LILO;来传送;kernel;--;Transferring;the;kernel;without;LILO;
6.3;设定ramdisk;--;Setting;the;ramdisk;word;
6.4;传送root;filesystem;--;Transferring;the;root;filesystem;

7.;问题解决;--;Troubleshooting,;or;The;Agony;of;Defeat

8.;其它各种主题;--;Miscellaneous;topics
8.1;减少;root;filesystem;的;size;--;Reducing;root;filesystem;size;
8.2;Non-ramdisk;root;filesystems;
8.3;建造一张工具磁片;--;Building;a;utility;disk;

9.;How;the;pros;do;it

10.;常见问题;(FAQ);列表;--;Frequently;Asked;Question;(FAQ);list
Appendix

11.;资源与指示;--;Resources;and;pointers
11.1;预先做好的;Bootdisks;--;Pre-made;Bootdisks;
11.2;救援套件;--;Rescue;packages;
11.3;LILO;--;the;Linux;loader;
11.4;Linux;FAQ;与;HOWTOs;
11.5;Ramdisk使用方法;--;Ramdisk;usage;
11.6;Linux开机流程;--;The;Linux;boot;process;

12.;LILO;boot;error;codes

13.;Root;filesystem;列表样本;--;Sample;root;filesystem;listings

14.;工具程式磁片;(utility;disk);目录列表样本;--;Sample;utility;disk;directory;listing

--------------------------------------------------------------------------------


--------------------------------------------------------------------------------

1.;前言;--;Preface

这份文件可能已经过期了。;如果标题页上的日期距今已超过;6;个月,那麽请查阅;Bootdisk-HOWTO;homepage;看看是否已有较新的版本。;

虽然本文以;text;格式也是可以阅读,但是因为印刷符号的关系,;最好;还是以;Postscript;(.ps);、;PDF;或;HTML;的格式来阅读。;


1.1;版本注意事项;--;Version;notes;

Graham;Chapman;是原本;Bootdisk-HOWTO;的作者,他一直提供支援到;version;3.1;。;Tom;Fawcett;大约是在;kernel;v2;问市时成为合作作者。他是本文目前的维护者。;

文中资讯是给在;Intel;平台上运作的;Linux;使用。其中许多资讯也许能应用在其它平台的;Linux;,但是我们并没有尝试在其它平台制作;bootdisk;,也没有相关的资讯。如果你有在其它平台上制作;bootdisk;的经验,请与我们联络。;


1.2;尚未完成的事;

有任何自愿者吗;?;


请描述;(或是链结到另一份有叙述的文件)如何制作其它可开机的类磁片物品,诸如;CDROMs,;ZIP;disks;与;LS110;disks;。;
请描述如何处理巨大的;libc.so;共享函式库。基本上可选择获取较旧、较小的函式库,或是删减现有的函式库。;
重新分析;distribution;bootdisks;与更新;"How;the;Pros;do;it";这一节。;
删减叙述关於如何升级现有;distribution;bootdisks;的章节。;This;is;usually;more;trouble;than;it's;worth.;
重写;/;润饰;Troubleshooting;这一节。;

1.3;回应与感谢;--;Feedback;and;credits;

我接受任何关於本文内容之回应,无论是好是坏。我/我们;已力求这份文件内的指令与资讯是正确而可靠的。如果你发现任何错误或遗漏,请让我知道。在撰写时,;请指出你所参考的文件之版本号码;。;

我们感谢许多协助修正与给予建议之人。他们的贡献使得本文比我们自己独立完成它时还来得更好。;

请各位利用上述的;email;地址,给予作者你的批评、指正与疑问。我不介意尝试回答任何问题,但是如果你有特定问题是关於你的;bootdisk;不能运作,那麽请先阅读;Troubleshooting;。;


1.4;散布政策;--;Distribution;policy;
Copyright;?;1995,1996,1997,1998,1999,2000;by;Tom;Fawcett;and;Graham;Chapman.;本文可以在;Linux;Documentation;Project;License;的条件下流通。如果你未能拿到此;license;,请与作者联络。;

本文是一份免费文件。我们发行它是希望它能有助於你,但是;不能给你任何保证;;本文也没有;具有商业能力;或;适合特定用途;的保证。;




--------------------------------------------------------------------------------


--------------------------------------------------------------------------------

2.;简介;--;Introduction

Linux;开机磁片;(boot;disks);在很多情况下是很有用的,诸如;

测试一个新的核心;(kernel)。;
从磁碟错误中复原;(这类错误从遗失开机磁区到磁碟读写头毁损都有可能);。;
修复一个瘫痪;(disabled);的系统;
安全地升级临界共用;(critical);的系统档案;(诸如;libc.so);。;
有好几种获得;boot;disks;的方法:;


使用发行套件;(distribution);像是;Slackware;所提供的。它至少能让你开机。;
使用救援套件;(package);建造用来做为救援磁片的磁片。;
学习每一种;disk;运作系统时所需的东西,然後自己制作。;
有些人选择最後一种方法,如此他们能靠自己动手做。这样子,如果某处发生问题,就能找出办法去解决问题。此外也可以学到很多有关;Linux;如何运作的知识。;

本文假设读者已熟悉基本的;Linux;系统管理观念。举例来说,你应该知道有关目录、;filesystems;与软碟片的议题。你也应该知道如何使用;mount;与;df;。你还应该知道;/etc/passwd;与;fstab;这两个档案的用途以及它们看起来像什麽。最後,你应该知道;HOWTO;文件内大部分的指令,都要以;root;的身份来执行。;

刚开始制作你自己的;bootdisk;是很复杂的。如果你未曾读过;Linux;FAQ;与相关文件,诸如;Linux;Installation;HOWTO;与;Linux;Installation;Guide;,那麽你不应该尝试建造开机磁片。如果你只需要紧急时用的;bootdisk;,下载一个别人事先完成的;bootdisk;拿来用会;更;为容易。请参考下面的;Pre-made;bootdisks;以得知在哪里可以找到这些东西。;



--------------------------------------------------------------------------------


--------------------------------------------------------------------------------

3.;Bootdisks与开机流程;--;Bootdisks;and;the;boot;process

bootdisk;基本上是放在软碟片内的一个小型而自足的;Linux;系统。它必须执行许多和完整又;full-size;的;Linux;系统相同的功能。在建造;bootdisk;之前,你应该了解基本的;Linux;开机流程。我们在此只做基本的介绍,但已足够让你了解本文之後的内容。很多细节与替代选项已被省略。;


3.1;开机流程;--;The;boot;process;

所有;PC;系统开始开机流程都是藉由执行;ROM;(明确地说,就是;BIOS);中的程式,从开机磁碟机的第;0;磁区、第;0;磁柱载入可供开机的磁区。开机磁碟机通常是第一台软碟机;(如;DOS;的;A槽;与;Linux;的;/dev/fd0)。接著;BIOS;会尝试执行这个磁区。在大部分可开机的;disks;上,第;0;磁区、第;0;磁柱包含以下两者之一:;


开机载入程式;(boot;loader;,如;LILO)的程式码,它会找出;kernel;所在位置,接著载入并执行它以启动开机程序。;
一个作业系统;kernel;的开头;(start);,诸如;Linux;。;
如果一个;Linux;kernel;已利用;raw-copied;的方式置入一张磁片内,那麽这张磁片的第一个磁区就是;Linux;kernel;本身的第一个磁区。这个磁区将从开机设备载入;kernel;的剩馀部分以继续开机流程。;

一旦;kernel;载入完毕,一些基本设备也完成初始化;(initialization);。然後系统将尝试从某个设备载入以及挂上;(mount);root;filesystem;。所谓的;root;filesystem;只是一个被挂上当作;``/'';目录的;filesystem;。;kernel;必须被告知可从哪里找到此;root;filesystem;;如果;kernel;在那里找不到一个可载入的影像档;(image);,系统就会停止运作;(halt);。;

在某些开机情况下;--;常常是