荔园在线

荔园之美,在春之萌芽,在夏之绽放,在秋之收获,在冬之沉淀

[回到开始] [上一篇][下一篇]


发信人: zzt (破网,烂网), 信区: Linux
标  题: Loadlin.exe装载程序
发信站: BBS 荔园晨风站 (Thu Nov 19 18:05:22 1998), 站内信件 (WWW POST)

By Bill Bennet  帆译

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

在Windows95的桌面上作个loadlin.exe按钮
    重起系统的时候,你曾经多少次的坐在那里等着Windows退出?多少次的瞪着"Please
wait..."的消息傻等?如果我现在介绍给你一个一分钟之内重起的方法,你会不会试试呢?
如果要解决上面的问题,就需要一个快速重新启动于windows以外的方法,这篇文章将会告
诉你如何安装loadlin作为你的linux boot程序,如何在1分钟之内退出Windows环境,进入
Linux的login提示符下。我希望没有人因为挖这个垄断的操作系统的墙角而埋怨我。
RedHat 5.1可以做到
    对于所有的Linux发布来说,他们都可以在DOS7.0的桌面上做一个loadlin按钮,唯一的
特殊就是RedHat;在/usr/local目录作的不错的时候,他们主张装入/usr目录。他们有一些
怪癖,其实我们每个人不是都有吗?这篇文章是针对RedHat 5.1的。
    RedHat的安装程序会给你一个机会加入"DOS and Windows connectivity",加入它。这
可以使你能从Linux上装入原先的DOS分区,也允许你把内核映像(vmlinuz)拷贝到dos分区的
一个目录中,由loadlin.exe来引导这个内核映象。

    正式的RedHat的LILO的位置是个不错的地方。他们通常要求把LILO放在主引导记录
(MBR)或第一分区的第一扇区上。这会给你的启动工作一个稳固的基础。他们也会让你跳过
LILO的安装。

Skip LILO跳过LILO
    要使用loadlin.exe,我们首先要跳过LILO。当RedHat的安装程序问你把LILO安装到哪
时,把星号放到“first partition”选项,然后按Tab移动到"skip"选项,按回车。
    当你startx时,控制面板的linuxconf程序(系统设置)会让你设置'Config-boot
mode-LILO defaults'(设置启动模式——LILO缺省),确认"LILO is used to boot this
system"(使用LILO启动系统)按钮是弹起的。

All hail thenerd and his incessant questions!
    (我从Portage la Prairie,Manitoba里的"thenerd"想起了一个点子。那些机器的所有
者不想在他们使用DOS的时候有任何改变,他们不想在他们启动机器的时候有任何变化。因
此,如果我们从DOS启动Linux,他们就不会知道或看到"LILO boot:"这条信息,他们也就不
会说什麽了)

做张启动盘
    RedHat的安装程序会问你是否要作一张启动盘,你要回答yes,不要跳过,直接回答
yes。如果你遇到了“signal 11”这个错误消息,那你就谢谢我吧(这在另一篇文章中介绍
了)。这张启动盘的有点是可以用来实验内核启动时的各选项。一旦你要重整Linux系统,
你可以用mkbootdisk命令来做启动盘。
在开始前系紧安全带
    安装完成以后,就是重启。把启动盘从软驱里拿出来,因为我们要回到DOS下设置启动
按钮。由于我们没把LILO装到MBR上,系统和平常一样,启动进入了DOS。这里我一直假设的
linux是在dos以后安装的。一旦MBR被dos重写,你就可以安装象Linux这样成熟的系统了。
关于PartitionMagic4.0的特别注意
    来自powerquest.com 的Will Erickson的技术支持指出:PartitionMagic4.0完全支持
Linux ext2分区,它可以毫无问题的改变分区大小。
    这个程序可以让你的FAT32的分区改变为更合适的大小,以作为linux web服务器和个人
linux工作站


“Gates老兄,这个目录下发生了非法操作”
The directory for your linux kernel is your choice. Make one called '
c:\linux\kernels' and you can copy the 'linux.bat' verbatim. Now that we have a
place for loadlin.exe to work, put it IN THE PATH. Do this by putting it in a
DIRECTORY that is in the path. I already have a 'c:\utils' directory on the
path and that is where you will find loadlin.exe.
选择一个目录来放置你的Linux内核,比如叫:c:\linux\kernels,你可以拷贝一个
Linux.bat.现在我们有了一个地方给loadlin.exe工作,把它放到路径中去。把它放到一个
已经在路径中的目录就可以作到这一点。我已经有了一个“c:\utils”目录在路径中去,我
就把loadlin.exe放到这里。
The batch批处理
写批处理文件用edit程序很好,notepad就行。这是一个小型的linux.bat文件:

rem This ensures that any unwritten disk buffers are flushed
smartdrv /C

rem This loads up the kernel and boots linux

loadlin c:\linux\kernels\vmlinuz root=/dev/hda2 ro

Root是什麽?
    /dev/hda2是假设你的Linux启动分区是第一硬盘的第二个分区。你要根据你自己的情况
把这句改为你自己的root分区名‘root=你的root分区’ro的意思是只读,readonly,这只
是一个标准的过程,如果你不知道会发生什麽,就不要轻易把它改为'rw'。
Special linux power
    我的RedHat5.1分区是从/dev/hdc9启动的,它没有到1024柱面的限制;实际上它是限制
在2G的容量内。它也是在一个扩展分区上。和主分区相对应,这个叫做逻辑分区。GNU的
Linux系统开始成为市场上最强有力和适应性强的操作系统。它可以从一个扩展分区的逻辑
分区启动,这个扩展分区可以是超过2G的,且突破1024柱面的限制的分区。这是因为
loadlin.exe是linux web hacker和内核开发人员以及LILO开发人员一起开发的。它是一个
强有力的开发模型。
什麽是vmlinuz?
    现在还没有vmlinuz。它是你的内核映象的名字。我们等会需要用一下启动盘来把内核
放到c:\linux\kernels目录中。
    把linux.bat保存到一个在PATH路径中的目录下,我已经有一个'c:\batches'目录专门
放.bat文件,我把linux.bat也放在这里。

The shortcut快捷方式
    在DOS7.0的桌面上(Windows95仅仅是Dos7.0的窗口管理器),单击鼠标右键,选择创建
快捷方式。用对话框中的“浏览”按钮的功能选择你刚才新建的linux.bat文件,然后点‘
open',它就成了这个快界方式执行的命令。
    在新的快界方式上点右键,选择“属性”。然后选择"program" "advanced"。你需要确
定一下这个新的批处理将在MS-DOS模式下运行。你还需要使用当前的设置。这个工作作完了


    M$让你选择不同的图标这一点还是值得称赞的。

The icon图标
    如果你右击你的新快界方式的话,在属性菜单项中你会看到“改变图标”这个按钮。按
这个按钮。我选择了一个炸弹的图标。可能你会选择一个闪电的图标。它要能足够的说明
Windows会迅速的发生什麽事。我的图标是个雷管和一些红色的炸药飞屑,并标着LINUX。它
看上去和不吉利,而且很诱惑,尤其是当Windows出故障的时候。
最后再看一眼来自Gates的消息。
    你知道吗,我们已经作好了Linux的按钮,现在可以用它来关闭Windows了。我们用这个
LINUX按钮就再也不用看那条消息了(please wait...)它说“现在你可以安全的关闭你的计
算机了”或者是“你的程序执行了一个非法操作,它即将被关闭”,这些消息可能是在一个
供应商和它的客户业务往来的历史中最烦人的消息。我们会仔细考虑对我们的同好者的礼貌
时,我们更加喜欢我们的linux。
Time to test our work:是检查一下我们工作的时候了
安装一套没有LILO的linux
做一张linux启动盘
启动dos
为内核建个目录
为loadlin.exe写个批处理文件
它这个批处理文件加到路径中去
把loadlin.exe拷过去
给这个批处理文件在桌面上建个快界方式
给这个快界方式选择一个很帅的图标
用最后一次选择“关闭windows”
读这篇文章的剩余部分
这篇文章剩余的部分
    现在用启动盘启动Linux,login。记住你的密码,现在人家都管你叫root了。敲入mc命
令回车。现在你使用mc(midnight commander)来完成工作。
    按方向键进入/boot目录,选择vmlinuz-2.0.34-0.6,然后按tab键,光标跳到了另一个
窗口。

    现在我们做一些linux上的工作,输入这个:

mkdir /dos

然后再输入:

mount -t vfat /dev/hda1 /dos

    这里假设/dev/hda1是你的dos分区,根据你自己的情况替换成你自己的dos分区。它会
把dos分区挂在你刚创建的/dos目录下。

    再输入这个:

cp /boot/vmlinuz-2.0.34-0.6 /dos/linux/kernels/vmlinuz

Oh yeah? Eat LeftAlt-F2!
    一旦这几个命令完成了,你就能通过/dos目录在linux下访问你的DOS分区了,酷吗?
    如果在mc的屏幕上的东西太多,你就使用Ctrl+o来会到shell提示符下,再按Ctrl+o回
到mc中。

    如果你想读一下文档,并来回切换的话,你可以按住左Alt和F2键来打开另一个控制台
。一个虚拟的控制台,左ALT+F3打开第三个,在linux里你可以有64个控制台。login,然后
在执行一个其他版本的mc或lynx或其他的什麽。要想回头一个控制台,按左Alt+F1,4、5个
控制台回让一个疯狂的读者感到高兴。

把kernel拷贝成vmlinuz
    mc的光标被放在kernel上。它在/boot目录里,在RedHat5.1下叫做“
vmlinuz-2.0.34-0.36”。按tab把光标移到另一个窗口中。这就是为什么有两个窗口的原因

“你可以看到你在做什么”
到/dos/linux/kernels目录。确认光标在kernel上,按tab到那里。
kernel在/boot这个窗口中是加亮的,另一个窗口是/dos/linux/kernels。

按F5拷贝过去
    按F5,瞧!一个拷贝窗口提示出来,你要做的就是按回车。结果是什麽?你以错误的名
字把内核拷贝到了dos分区上。
要做的好一点,在按回车以前,输入你的内核的新名字。
/dos/linux/kernels/vmlinuz

命令行应该是这样的:
cp /boot/vmlinuz-2.0.34-0.6 /dos/linux/kernels/vmlinuz

但是我已经那样做了
Caught me again. Yes, I got you to do something two different ways. Welcome to
linux. Forgive me. I need you to open up your 'brain pathways', you see. The
very best part of linux for me and a whole crew of other linuxians is that the
computer is fun again. Isn't that why you got one in the first place?
跟着我,我会教你如何用两种不同的方法做的。欢迎来到linux,原谅我吧。我需要你开动
脑筋,你明白。对我和所有linux使用者来说,linux最好的方面就是计算机又好玩了。这不
就是你当初为什么拿到了一份的原因吗?
The force is with you
    好了,我们已经吧'vmlinuz'内核映象放到了dos分区上,可以重起了。
    别用reset键,你的文件系统需要被干净的umount。linux可以用'fsck'来修理它,但是
我们为什么要冒这个险呢?

    敲入下面这个命令:

shutdown -r "now" (没有引号也行) 这会重起系统。

或shutdown -h "now" (这个是用来挂起你的系统,等待关机)

一些来自经常崩溃的操作系统的用户可能习惯使用Ctrl-Alt-Del来重起。

启动dos,再启动linux
    在Windows95的机器,你可以选择启动到普通的dos模式。如果你仅仅着急想看看结果,
你就启动到dos模式。
敲入这个命令:
linux

如果你想看看有趣的东西,就让DOS启动图形模式,一直到桌面。

"Thar she blows"
     在你的桌面上,面对M$的最后的侮辱,按下那个按钮,你将毁掉这个垄断了15年的贪
婪的东西,按下这个按钮来宣告你自由表白的权利。按下这个按钮,站起来。按下这个按钮
启动Linux。
     告别这个桌面,一路平安。炸毁这个还在吃奶的小子!


参考文献和站点连接:
BootPrompt-HOWTO - 所有的linux用户都应该读一读
Bootdisk-HOWTO

Loadlin+Win95 mini-HOWTO

RedHat Linux安装支持的FAQ——一份不错的材料

The Boycott Microsoft Page at www.vcnet.com/bms/

The home of RedHat at www.redhat.com

The home of PartitionMagic 4.0 at www.powerquest.com

The place to get ComputerHelperGuy easy-install files

The electronic mailbox of Bill Bennet

Window的注解
    在按你的LINUX按钮前关闭所有的程序是个好注意。启动进程在展开linux内核映象以前
要花3秒钟,一直到显示login提示符要花去58秒钟。你的情况可能会不同,你的DOS文件系
统会完好的留在那里,当然是umounted的。
    例:我的启动组里有7个小程序,我又加上了NetScape和一个编辑器。当我按下LINUX按
钮的时候,一直到linux的提示符出来花了65秒钟。

    在你按这个按钮的时候,确认保存了你的工作!

启动注解
    如果不能用mount -t vfat来装入/dos分区,那可能是在/lib/modules/preferred里找
不到模块相关文件。不用着急,敲入这个:
man symlink
读一下symlink的手册页,然后cd到/lib/modules目录中,建一个叫preferred的连接指向
/lib/modules/“你的kernel名”
命令是这样的:

ln -s /lib/modules/your_kernel_directory_name_here(这空一格)
/lib/modules/preferred

用mc来作这个非常简单。用mc命令启动mc。到/lib/modules目录下。

把光标放在"/lib/modules/你的内核名"上

按F9,再按f(意思是文件),然后按s(意思是symlink),然后按下到‘Symbolic link
filename:'那里

输入:
/lib/modules/preferred

再输入:
depmod -a

完成了。
如果你愿意的话,删掉它重做。也可以按两次Esc来取消这个Symlink窗口。



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

用GNU Emacs 20.2.1在i486/RedHat 5.1 Linux 2.0.35-2制作
在测试这些过程的时候没出什麽意外
所有关于Gates先生的言论都是出于无意


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

版权所有 (C) 1998, John Kacur
出版于第34期《Linux公报》1998年11月 中文版第一期

--
☆ 来源:.BBS 荔园晨风站 bbs.szu.edu.cn.[FROM: 192.168.0.101]


[回到开始] [上一篇][下一篇]

荔园在线首页 友情链接:深圳大学 深大招生 荔园晨风BBS S-Term软件 网络书店