The Linux Bootdisk HOWTO 中译版(13)



rdev;-r;KERNEL_OR_FLOPPY_DRIVE;;VALUE

如果你使用;LILO;,现在请把磁片;unmount; 。;


6.4;传送root;filesystem;--;Transferring;the;root;filesystem;

最後一步是要传送;root;filesystem; 。;


如果;root;filesystem;将被放置在做为;kernel;之;相同;磁片上,请使用;dd;指令及其;seek;选项传送它,这会指定要跳过多少个;blocks;:;
dd;if=rootfs.gz;of=/dev/fd0;bs=1k;seek=KERNEL_BLOCKS

如果;root;filesystem;会被放置在;第二张;磁片上,请自磁碟机中拿走第一张软碟片然後放入第二张磁碟片,接著将;root;filesystem;传送到其上:;
dd;if=rootfs.gz;of=/dev/fd0;bs=1k

恭喜你,已经完成了!;

在把;bootdisk;挪为紧急使用之前,请记得先测试它;!如果你的成品不能执行,请继续读下去 。;



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

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

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

当建造;bootdisks;时,开始的几次尝试结果常常是无法开机 。建造一张;root;disk;的一般方法是组合来自你现有系统的元件;(compnents);,接著尝试与得到这个以磁片为基础的系统;(diskette-based;system);,直到它在;console;上显示讯息 。一旦它开始与你交谈,这场战斗就结束一半了,因为你可以了解它在抱怨什麽,而且你可以解决个别的问题直至系统能平顺地运作 。如果系统停止运作而没有任何说明,要找到这原因会是一件困难的事 。为了让系统能启动到能与你交谈的阶段,这需要使用到好几种元件,而且这些元件要经过正确地组态 。以下是调查系统无法与你交谈之问题的建议程序:;


你会看到一行讯息像这样:;
kernel;panic:;VFS:;Unable;to;mount;root;fs;on;XX:YY

这是常见的问题,而它只有一些原因 。首先,请根据;device;code;清单检查;device;XX:YY;;它是正确的;root;device;吗;?如果不是,那你可能没有做过;rdev;-R;,或者是你是对错误的;image;执行rdev;-R 。如果;device;code;是正确的,那麽请仔细地检查被编译到你;kernel;内的;device;驱动程式 。请确定它有内建软碟片、;ext2;filesystem;支援 。;
如果你看到许多错误讯息像是:;
end_request:;I/O;error,;dev;01:00;(ramdisk),;sector;NNN

这是;ramdisk;driver;所报告的;I/O;错误讯息,可能是因为;kernel;正尝试写入超越了设备的结尾 。你的;ramdisk;因为太小而不能持有你的;root;filesystem; 。请检查你的;bootdisk;kernel;的初始化讯息,找一行像是:;
Ramdisk;driver;initialized;:;16;ramdisks;of;4096K;size

请针对;root;filesystem;未经压缩的;size检查上述的;size; 。如果;ramdisks;不够大,那就让它更大吧 。;
请检查;root;disk;实际上有包含你所认为应该被包含的目录 。;Copy;到错误的;level;是容易犯的错误,以致於到最後在你的;root;磁碟片上,你会有像是;/rootdisk/bin;的目录,而非;/bin 。;
请检查是否有;/lib/libc.so;,而它是否有与你硬碟内;/lib;目录中所显示之相同;link; 。;
请检查你既存系统;/dev;目录内的;symbolic;links;是否同时也存在於你的;root;磁碟片;filesystem;上,在此,那些;links;是连往你已包括在你;root;磁碟片上的;devices; 。尤其是在很多情况下,;/dev/console;links是最基本的 。;
请检查你是否已包括了;/dev/tty1,;/dev/null,;/dev/zero,;/dev/mem,;/dev/ram;与;/dev/kmem;这些档案 。;
请检查你的;kernel;组态设定;-;对於直到登录点;(login;point);所需之所有资源的支援必须被内建,不能使用模组 。所以;ramdisk;与;ext2;支援必须被内建; 。;
请检查你的;kernel;root;device;与;ramdisk;设定是否正确 。;
以上已经涵盖一般部分,以下是一些更特定的档案与检查项目:;

推荐阅读