LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 3301|回复: 26

想把文件系统换成Reiser4,但是只有最新的内核才支持Reiser4,这个怎么办呀[已解决,附谋杀

[复制链接]
发表于 2007-5-20 22:59:33 | 显示全部楼层 |阅读模式
重装系统 -> 创建文件系统 -> 不支持......

编译最新内核 -> 创建文件系统 -> 重装系统 -> 不能识别的文件系统......

呜呜呜,这个该怎么办呢?
-----------------------------------
问题已经解决,现在说一下解决的过程:

注意,以下过程,依次需要向内核打补丁,编译两个源代码,并安装。更重要的是,如果你想把root分区改成reiser4,你还需要将你的grub换成lilo!网上有grub的patch版本,但是我编不起来,而且编出来的也不知道能不能用。lilo最大的一个问题就是,貌似不能引导多个linux系统,知道的大侠请告诉我设置方法,拜谢!而且最重要的是,你手头必须有一个引导恢复光盘,例如debian最新的网络安装盘(etch发行版是非常好的一个光盘修复工具,f4进入,强烈推荐!),否则lilo安装失败,死都不知道怎么死的。

OK,现在开始。

因为到目前为止,reiser4还没有进入正式版本,所以使用前首先去www.kernel.org,下载最新的-mm patch,同时把patch对应的基线版本也下载下来[-mm patch 那一行“B“字母执向的连接就是]

cd到内核目录, patch -p1 < -mm patch [两个都要先解压]

在内核配置选项->文件系统->选择reiser4,这里ext4也有俄,想要的一起加上吧:)

编译内核,重启!

下面两个文件是使用reiser4系统必须的两份源代码,都是最新的,不相信自己去看

ftp://www.namesys.com/pub/reiser4progs/libaal-1.0.5.tar.gz
ftp://www.namesys.com/pub/reiser4progs/reiser4progs-1.0.6.tar.gz

先编译安装libaal,需要g++, libstdc++-dev没有的赶快去装呀

编译安装之后......还愣着干啥,reiser4已经可以使用啦

直接 mkfs.reiser4 /dev/xxx 就可以了,不要激动,这个命令相当于格式化硬盘,所以千万不要用错了对象

-----------------------------------
到目前为止,你的系统已经支持reiser4了,你可以创建reiser4文件系统,使用该文件系统的所有特性。但是对于那些想把root也改成reiser4的狂人们,继续跟我走:)

对于根目录安装的问题我最开始已经提过了,解决的方法有多种,我用的是操作系统大转移,这个linux起码debian可是100%的支持的,也就是把现在根目录的内容移到reiser4的新分区中。请放心,只要你不出错的话,一个告警,异常也不会有

创建一个新的分区,请用reiser4拜托...... 然后将根目录所有的文件文件夹拷贝过去, 不是所有,home一般不用拷吧:confused: ,proc,sys,dev也不能拷,你挂载分区的目录一定也不要拷。所以:
[sudo] umask 000; [sudo]  cp  -avx xxx yyy
sudo mkdir proc
sudo mkdir sys
sudo mkdir dev
sudo mkdir home

umask 000; cp -avx 组合可以正确的保留文件属性,不知道网上常用的cp -a是不是也有相同的功能

改fstab,将你新的分区作为/,文件系统也要改成reiser4
应该类似这个样子:
/dev/sda1       /               reiser4 defaults        0       1
改etc/lilo.conf,MBR目录不变,只要把root分区改成新建分区,运行liloconfig,选择按照配置重新安装lilo, 然后lilo -v -v看看安装的对不对,一切都正确无误的话,重启系统,就OK了!

货比三家,下面是网上相关的帖子,大家对照一下,应该更清楚才是:)
http://www.archlinux.org.cn/main/?q=node/15
http://www.dreamincode.net/forums/showtopic10701.htm

----------------------------------
写在最后:

现在的reiser4文件系统已经相当稳定,并且计划merge in内核版本2.6.22, 对于号称这个星球上跑的最快的文件系统,大家赶快来试试吧! 给我的第一个印象是,以前我的/ 1.3G,使用reiser4之后,变为1.0G了,注意,我用的是默认选项,没有使用他的压缩属性。快不好说,省空间可是实打实的!

8挂一下,大家都去浏览一下Reiser Hans谋杀案的前因后果吧,堪称好莱坞大片级的剧情阿:
   影片的开始是Hans的妻子失踪了,警察在Hans的车上发现的血迹,而且警察发现Hans之前就买了一本关于犯罪调查的书。恩,警察对这样的案子估计已经司空见惯了,显而易见的结论就是:Hans的妻子已经死亡,Hans就是凶手。然而真的就这么简单吗,我们的天才+伟大的程序员同志就要在监狱度过余生吗?当然不会,就在Hans被定罪的前夕,警察突然发现Hans的妻子的前情夫,对,就是前情夫,据说他们分手的原因是,Hans的妻子忍受不了这个前情夫的变态的性行为,omg@@,呃,忘了说警察突然发现什么了,警察突然发现Hans的妻子的前情夫是一个系列杀人案的制造者,并且至少已经杀了8个人!。这个前情夫虽然承认自己杀了8个人,但坚决不承认自己杀了第九个,并要和Hans当面对质,呵呵,但是谁相信一个杀人犯的鬼话呢,何况Hans因为老婆出轨,还曾威胁过要杀了这个前情夫。恩,大家都知道试图去威胁一个系列杀人犯是很不好的行为。所以Hans是否是凶手还真不好说。然而故事远没有结束......,警察通过调查发现Hans的妻子具有明显的移民倾向,先后为自己和孩子办了俄罗斯的护照。很有可能,她只是躲起来,然后试图悄悄的溜走。所以,之前根据Hans的妻子失踪,就推断她已经死了的推断也不能成立。这个案子谁是主谋?Hans?Hasn的妻子?Hans的妻子的前情夫?谜团一个接着一个,剧情一步步走上高潮,并将在今天终结!

5.27, 庭审,真相。May reiser4 save Hans, Using the powerful FSCK function!
发表于 2007-5-22 15:45:12 | 显示全部楼层
似乎最新的都不支持吧,Reiserfs4.0
回复 支持 反对

使用道具 举报

发表于 2007-5-23 00:03:30 | 显示全部楼层
R4应该没有进入kernel代码吧。而且作者似乎被抓了,没前途……
回复 支持 反对

使用道具 举报

发表于 2007-5-23 00:36:42 | 显示全部楼层
Post by FireMeteor
R4应该没有进入kernel代码吧。而且作者似乎被抓了,没前途……

搞这么大?什么事啊
回复 支持 反对

使用道具 举报

发表于 2007-5-23 12:44:52 | 显示全部楼层
貌似是谋杀罪
回复 支持 反对

使用道具 举报

发表于 2007-5-28 19:00:04 | 显示全部楼层
干嘛非用Reiserfs4.0?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-5-28 21:04:02 | 显示全部楼层
Post by sungx
干嘛非用Reiserfs4.0?
呵呵,linux就是do your self。一个字,玩呗。怎么爽怎么来。如果有一天感到累了,我就换回window,老老实实的花钱买福享

当然最重要的就是,reiser4是一个相当优秀的文件系统,从我这三天的使用情况来看,非常节省空间,不同分区之间的cp非常的快,快的都有点不敢相信了,呵呵。当然我的机器不是服务器,稳定性还不好说。

真的非常非常好用,不相信的话,你就自己去试试 哈!
回复 支持 反对

使用道具 举报

发表于 2007-5-28 21:04:13 | 显示全部楼层
似乎是作者老婆的情人干的吧
回复 支持 反对

使用道具 举报

发表于 2007-5-28 21:42:46 | 显示全部楼层
...lilo最大的一个问题就是,貌似不能引导多个linux系统,知道的大侠请告诉我设置方法,...

嘿,偶不是大侠,不过被我乱搞一通居然成功了,呵呵.我电脑里面安装了Slackware和Debian两个系统.我安装的是Slackware的lilo,怎么用它引导Debian呢?
我曾经搜索了N久都没有发现类似的文章,可能用LILO的人少吧,或许你也已经解决了  切入正题:
1,把Debian的两个引导文件:vmliuz*,initrd*复制到Slackware的/boot文件夹里,就是TMD这一步重要.
2,编辑lilo.conf,呈上偶的以供参考:
  1. # Linux bootable partition config ends
  2. image = /boot/vmlinuz-2.6.18-4-486
  3.   initrd = /boot/initrd.img-2.6.18-4-486
  4.   root = /dev/hda5
  5.   label = Debian
  6.   read-only
  7. # Linux bootable partition config ends
复制代码

3,运行--> #lilo         就OK了.
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-5-29 12:05:09 | 显示全部楼层
Post by merlyn
嘿,偶不是大侠,不过被我乱搞一通居然成功了,呵呵.我电脑里面安装了Slackware和Debian两个系统.我安装的是Slackware的lilo,怎么用它引导Debian呢?
我曾经搜索了N久都没有发现类似的文章,可能用LILO的人少吧,或许你也已经解决了  切入正题:
1,把Debian的两个引导文件:vmliuz*,initrd*复制到Slackware的/boot文件夹里,就是TMD这一步重要.
2,编辑lilo.conf,呈上偶的以供参考:
  1. # Linux bootable partition config ends
  2. image = /boot/vmlinuz-2.6.18-4-486
  3.   initrd = /boot/initrd.img-2.6.18-4-486
  4.   root = /dev/hda5
  5.   label = Debian
  6.   read-only
  7. # Linux bootable partition config ends
复制代码

3,运行--> #lilo         就OK了.
it's so cool,我未来的ubuntu肯定用的到,多谢啦
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表