当前时区为 UTC + 8 小时



发表新帖 回复这个主题  [ 5 篇帖子 ] 
作者 内容
1 楼 
 文章标题 : [原创]编译带 reiser4 和 ck 补丁的内核
帖子发表于 : 2007-09-21 16:31 
头像

注册: 2006-07-02 11:16
帖子: 12522
地址: 廣州
送出感谢: 0 次
接收感谢: 8
编译带 reiser4 和 ck 补丁的内核
http://bigsnakecat.blogspot.com/2007/09/reiser4.html

给新电脑安装上 ubuntu 7.10 的最小系统后, 继续 DIY 计划, 启用 reiser4. 但默认的 ubuntu 内核是不带 reiser4 的, 所以要自己编译一个内核.
参见这篇文章.

首先安装编译内核需要的东西:
代码:
sudo apt-get install linux-kernel-devel fakeroot kernel-wedge kernel-package
sudo apt-get build-dep linux-source


然后下载内核和补丁, 我用的是2.6.22.6的内核:
http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.22.6.tar.bz2
reiser4 for 2.6.22:
ftp://ftp.namesys.com/pub/reiser4-for-2.6/2.6.22/reiser4-for-2.6.22-2.patch.gz
提高桌面性能的 ck 补丁, 貌似以后不会出了:
http://www.kernel.org/pub/linux/kernel/people/ck/patches/2.6/2.6.22/2.6.22-ck1/patch-2.6.22-ck1.gz

为了保证文件完整, 还下载了 sign 文件进行检验, 如果不知道 gpg 是什么就可以无视这句.

另外, 经过N次失败得出结论: Ubuntu 的 linux-source 包提供的源码是不行的, 一定要 vanilla 内核才可以.

现在材料都准备好, 可以开始:
1. 解压
代码:
tar xfv linux-2.6.22.6.tar.bz2 && cd linux-2.6.22.6

2. 打补丁. 注意 ck 补丁直接打是不行的, 要先修改第5160行, 把 "-EXTRAVERSION =" 改成 "-EXTRAVERSION = .6". 然后
代码:
zcat /somepath/reiser4-for-2.6.22-2.patch.gz | patch -p1
cat /somepath/patch-2.6.22-ck1 | patch -p1

当然, 保险的做法是要先 --dry-run.

3. 配置并编译
代码:
make mrproper
make oldconfig


提示的选项我这样选
代码:
Support for prefetching swapped memory (SWAP_PREFETCH) [Y/n/?] y
...
Timer frequency
  1. 100 HZ (HZ_100)
  2. 250 HZ (HZ_250_NODEFAULT)
> 3. 300 HZ (HZ_300)
  4. 1000 HZ (HZ_1000)
  5. 1500 HZ (HZ_1500)
  6. 2000 HZ (HZ_2000)
  7. 3000 HZ (HZ_3000)
  8. 4000 HZ (HZ_4000)
  9. 5000 HZ (HZ_5000)
  10. 7500 HZ (HZ_7500)
  11. 10000 HZ (HZ_10000)
choice[1-11?]: 3
...
Reiser4 (EXPERIMENTAL) (REISER4_FS) [Y/n/m/?] y
  Enable reiser4 debug mode (REISER4_DEBUG) [N/y/?] n
...

然后
代码:
make menuconfig

按需配置. 我删了很多无用的东西, 经实验如果按默认配置编译要44min, 删掉无用的驱动后就只需11min... -_-!..

4. 好了, 现在可以开始编译
代码:
(time make-kpkg --rootcmd fakeroot --initrd \
--append-to-version=-ac-20070920 \
kernel_image kernel_headers linux_image linux_headers modules_image) 2>&1 | tee ../makelog


5. 编译成功后, 安装内核和头文件
代码:
cd ..
sudo dpkg -i linux-headers-2.6.22.6-ck1-ac-20070920_2.6.22.6-ck1-ac-20070920-10.00.Custom_i386.deb \
linux-image-2.6.22.6-ck1-ac-20070920_2.6.22.6-ck1-ac-20070920-10.00.Custom_i386.deb


重启到新内核, 一切正常 :-) . 接着搞reiser4, 方法参见
http://www.namesys.com/install_v4.html

打了补丁的内核,配置文件,makelog可以在这里找到:
http://ubuntu:ubuntuftp@ftp.ubuntu.org.cn/AutumnCat/packages/kernel/


_________________
^_^ ~~~
要理解递归,首先要理解递归。

地球人都知道,理论上,理论跟实际是没有差别的,但实际上,理论跟实际的差别是相当大滴。


页首
 用户资料  
 
2 楼 
 文章标题 :
帖子发表于 : 2007-09-21 17:06 
头像

注册: 2007-03-13 17:26
帖子: 2254
送出感谢: 0 次
接收感谢: 1
看起来也很累,懒得编译


你按 ubuntu 的默认选项编译一个 SMP的通用内核出来,让大家共享一下


页首
 用户资料  
 
3 楼 
 文章标题 :
帖子发表于 : 2007-09-21 17:08 
头像

注册: 2006-04-12 20:05
帖子: 8495
地址: 杭州
送出感谢: 0 次
接收感谢: 8
呃,先加精再看...
这样的文章瞄一眼就知道可以加精了 :lol: :lol:


_________________
关注我的blog: ε==3


页首
 用户资料  
 
4 楼 
 文章标题 :
帖子发表于 : 2007-09-21 17:09 
头像

注册: 2006-07-02 11:16
帖子: 12522
地址: 廣州
送出感谢: 0 次
接收感谢: 8
bones7456 写道:
呃,先加精再看...
这样的文章瞄一眼就知道可以加精了 :lol: :lol:

....Orz..


_________________
^_^ ~~~
要理解递归,首先要理解递归。

地球人都知道,理论上,理论跟实际是没有差别的,但实际上,理论跟实际的差别是相当大滴。


页首
 用户资料  
 
5 楼 
 文章标题 :
帖子发表于 : 2008-03-20 9:12 
头像

注册: 2007-10-06 18:40
帖子: 4313
送出感谢: 0 次
接收感谢: 5
引用:
^_^ ~~~
Linux不用吃飯...但女朋友不是Linux...

难道... :oops:


页首
 用户资料  
 
显示帖子 :  排序  
发表新帖 回复这个主题  [ 5 篇帖子 ] 

当前时区为 UTC + 8 小时


在线用户

正在浏览此版面的用户:没有注册用户 和 2 位游客


不能 在这个版面发表主题
不能 在这个版面回复主题
不能 在这个版面编辑帖子
不能 在这个版面删除帖子
不能 在这个版面提交附件

前往 :  
本站点为公益性站点,用于推广开源自由软件,由 DiaHosting VPSBudgetVM VPS 提供服务。
我们认为:软件应可免费取得,软件工具在各种语言环境下皆可使用,且不会有任何功能上的差异;
人们应有定制和修改软件的自由,且方式不受限制,只要他们自认为合适。

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
简体中文语系由 王笑宇 翻译