分享
 
 
 

巧用FreeBSD 5.3内核启动做了点手脚的麒麟2.1-01

王朝system·作者佚名  2006-05-22
窄屏简体版  字體: |||超大  

最近听到了一个“谣言”,就是某些人试图或已经向勇于揭开事件真相的人们施压,谣言说,这罪名是“泄露国家机密”。这个罪名可大了,我可不敢“泄露国家机密”啊,心中一阵惶恐。好不容易压了压惊,发现有些不解,到底人家是说国防科技大学提供下载麒麟操作系统是“泄露国家机密”啊?还是说我分析出了麒麟操作系统采用了大量FreeBSD源代码这件事情是“泄露国家机密”啊?如果是前者,那么还是要理解人家的嘛,毕竟人家民用一下也可以有些外快的;如果是后者,那还真是罪过啊,罪过。孰不知这个公开下载的系统中竟然存在着这样的“国家机密”。所以啊,我不知道我的站点还能存在多久,我也不知道我的人身安全是否受到了威胁。我只知道呢,如果大家觉得我写的文章还有点价值的话,请尽快保留吧,要不然哪天突然发现访问不了了再后悔莫及啊。呵呵。

开个玩笑,各位看官切莫当真。国防科技大学会这么无耻么?麒麟开发组会这么卑鄙么?我看不会吧。“厚德博学、强军兴国”,多好的校训啊,“厚德”是第一位的。况且拥有着章文嵩、杨灿群等这样的开源精英人物,说明这个学校应该还是开明的吧。而且麒麟开发组,他们也就是犯了一点儿小错,改了还是好同志,不至于对我这个无名小卒大动干戈吧。他们更不会愚蠢到用更大的错误来掩盖自己的小错的吧。毕竟地球人都知道,人家CNN和纽约时报也瞪大眼睛盯着呢,日盼夜盼的看中国什么时候搞出个什么丑闻来赚取个头条,如果这大错一犯,人家还不注意啊,到时候又爆出一篇xxxx掩盖事实真相的丑闻,多不好啊。家丑还是不要外扬的好,逼得人家报道不了的记者直接向国外投稿赚取美$,我们不说银子没捞着,自己的脸上也不好看啊。所以说,国防科技大学自然做不出来这么愚蠢的事情,我们还是应该相信他们的。

况且,他们不是说我做的分析是针对简化版而不准确了么,有更强大的完整版的。虽然至今为止也没有说完整版的内核都多了什么功能,我看好像这个简化版的内核也是蛮强大的,似乎863计划中的涉及内核的技术,在这里面包含的也差不多了。也真想知道这个完整版的内核多了什么功能(不是说应用哦,是说内核)。

那位看官你说什么?哦,你问我这拔了毛的鸡是不是变成鸭子了?啊,这个问题比较复杂嘛,达尔文同学告诉我们生物的进化是渐进的,不能拔个毛就把鸡说成是鸭子的。但是呢,我们不能忘记拔了毛的鸡还可以变成烤鸡啊。可别小看这“烤”,这可是很有技术含量的,这一烤啊,就看不出原来的样子了,猛一看呀,还真有可能和烤鸭很像呢。您说呢?

人家这半个月来不给回复,恐怕是在做一些“准备”工作。我相信他们还是有勇气去请FreeBSD的核心开发人员来替他们洗清“冤屈”的。这点大家也要给他们信心和思考的时间嘛。

不过万一有一天我的Blog(或者我Dancefire)真的消失了,或者关于麒麟操作系统的报道(直接的或者间接的)消失了,大家还是多多谅解,还是不要责怪他们的好,就当是由于某种“技术问题”所致吧。我只能为这种“技术问题”向大家提前说声抱歉了。

以上纯属对于无聊的“谣言”多说了几句无聊的话,各位觉得无聊大可不必当真。况且,我们也应该相信政府有关部门会关注此事,并进行调查,给关心中国科技发展的我们一个权威、完整、真实的调查报告。

=----------------------------------------------------------------------------------------------------------------------=

巧用FreeBSD 5.3内核启动做了点手脚的麒麟2.1-01

上回书说到,麒麟开发组在我的分析发布之后不久,就删除了网站上的2.0-14/21的光盘镜像,取而代之的是发布了一个新版本2.1-01。

如上回我所提到的那样,麒麟2.1-01相对于以前版本(2.0-14/21)进行了特殊化处理。主要是做了两件事情,一个是用objdump去掉了符号信息,strip了,而且还有一些额外的小动作,这样“成功的”回避了我那篇相似性分析中所用的分析方法;再一个就是修改了引导程序,所以用直接引导内核的方式已经是不可以用FreeBSD内核启动麒麟了,给大家尝试新版本情况下FreeBSD内核同麒麟内核的兼容性带来了一些障碍。

我之前不理解这种换门的行为有什么意义,有一位网友点醒的好,这叫做“迅雷不及掩耳盗铃”--(形容掩耳盗铃速度之快,呵呵)。

也有些人对我的“换门说”产生了质疑,怀疑是不是麒麟2.1真的在结构上有重大改进才导致的无法启动。那么好吧,今天,我们就来证实麒麟2.1确实是换了一个门而已。

系统引导

系统引导,一般为多级,大多数情况下,从MBR接过引导权后,稍加处理后,会转交给一个比较高级的引导程序,一般由这个引导程序来负责启动内核。在Windows NT/2000中是NT Loader;Linux中可能是Grub;在FreeBSD中是Boot Loader。有很多的引导程序比较高级具有多系统的引导能力,有的还具有传递引导权给下一级引导程序的能力。Grub就是其中之一。

麒麟的引导过程

麒麟为了多系统引导和图形化界面,采用了Grub作为第一级引导程序。在选择了"Kylin"后,Grub将加载第二级引导程序,对于2.0-14/21来说使用的是FreeBSD的Boot Loader,而2.1-01开始,麒麟开发组调整了这个引导程序,虽然大体上还是和FreeBSD的Boot Loader相同,但是修改了一些东西,导致这个Boot Loader属于Kylin 2.1-01专用的Boot Loader,既无法启动FreeBSD,也无法启动Kylin 2.0-14/21。也就所谓的自家人不认自家门了。呵呵。

在这个过程中,Boot Loader相当于一个点火器或者钥匙,只有和内核配套,遵循加载内核的约定,才能够成功的将内核加载起来。但是这个引导程序对于运行中的系统安全性和稳定性影响甚微,所以,修改其引导程序的目的,大家可以发挥想象力了。

证明我所说的换门问题很简单,我们只要将门再换回来就行了。今天我们所做的,就是使用FreeBSD的Boot Loader来帮助加载FreeBSD 5.3的内核,最后成功的挂载各个系统模块,并引导图形界面成功。

需求:

1、一个FreeBSD 5.3的内核。我建议重新编译一个内核(和上回一样,要是上回编译了就不用再编译了),加上Linux兼容等可选模块,这样更贴近麒麟的做法。不过最低要求不需要加很多,只要加上Linux兼容的部分就行,我建议至少加上下面的选项:

options COMPAT_LINUX

options LINPROCFS

device sound

2、一个可以运行的麒麟操作系统,是2.1-01版本。

操作步骤:

1. 将新编译的内核随便起一个名,在这个例子中,我将其命名为freebsd_5.3_sl,并存在home目录中。

2. 在FreeBSD 5.3中做下列准备工作:

mkdir ~/boot

mkdir ~/boot/kernel

cp ~/freebsd_5.3_sl ~/boot/kernel/

cp /boot/loader ~/boot/

echo "load /boot/kernel/freebsd_5.3_sl" > ~/boot/loader.rc

echo "boot" >> ~/boot/loader.rc

cd ~

tar -czvf boot.tar.gz boot

3. 将boot.tar.gz传到Kylin的/root目录下,然后在Kylin中开一个shell,执行:

cd /

tar -zxvf /root/boot.tar.gz

这样,就把FreeBSD的Boot Loader和内核已经放好位置了,并且也已经写好了启动脚本。装好了钥匙也装好了门,一切就绪了。

4. 下面,来开始我们的引导之旅吧。:)reboot 重新引导麒麟操作系统。

5. 在GRUB的引导界面移动光标到Kylin上后按e (如果默认就在Kylin上,就直接按e)

6. 将光标移动到第二行,kernel那行,然后按e

7. 我们会看到如下的行。

修改/boot/booter mute为/boot/loader。呵呵,人家从2.0-18的loader换成了booter就是为了不让我们能够启动FreeBSD,今天我们就给它换回来。

8. 回到这个页面后按b,将引导boot loader

9. 好,现在系统开始真正引导了,但是大家会从随后的几个画面发现,麒麟从2.0-01开始,再也不显示Copyright信息了,不但连加州大学的版本信息不显示,连他自己的版本信息也不显示了。据传闻,这样是为了让界面更加干净。嗯,确实挺“干净”。呵呵。不过谁要是特意的想看Copyright,还是可以从dmesg来看到的。

10. 成功的启动了X Window,进入图形界面的登录窗口。

11. 输入口令登录后,开始加载Gnome各个组件

12. 成功的启动了完整的图形界面,大家可以从uname中看到FreeBSD 5.3-RELEASE。

(其实也可以cat /proc/version的,这回抓图的时候忘了,不好意思,呵呵。)

至此,我们完成了仅仅替换为FreeBSD 5.3的内核和引导内核用的引导程序,就做到了完整系统的启动。虽然还有一些警告信息,但是系统服务基本都是正常启动的。和上回的2.0-14/18一样,麒麟开发组新发布的2.1-01同FreeBSD的“兼容性”依旧很不错啊。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有