荔园在线

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

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


发信人: cycker (TryToDoEverythingOnLinux), 信区: Linux
标  题:  在RedHat 7.x 上实现reiserfs & quota
发信站: 荔园晨风BBS站 (Thu Jun  5 21:01:06 2003), 站内信件

 在RedHat 7.x 上实现reiserfs & quota

作者: aqian@yeah.net
每一次写这种东西,不知道怎么发表到网站上,请版主如果有条件帮我发一下。

一、本文的目的
RedHat 7.x是最常用也是取容易取得的linux发行版,由于rh公司的原因,日记文件默
认支持的是ext3,虽然其内核也支持reiserfs文件系统,但是无论如果配置都无法quota
(配额)。而对于File /mail/cache
Server,使用reiserfs文件系统是最佳的选择,为此在网上搜了一下有关的文章,还真
没有完整的介绍,这就是本文的目的。
二、关于本文的作者
本人无任何专业的编程经验,对于linux只是了解皮毛,所以的编译过程全部
是依靠readme & install文件,有不当之处请指正。
三、准备与基本知识
1、独立按rh的安装向导,定制并选择编译程序(compile tools)的包
,建议安装7.2以上的版本。
2、可以使用rpm 命令安装/删除/查找包及包内的文件;
3、可以通过tar ball(*.tar.gz)的readme & install文件安装程序。
4、可以用vi编辑文件

四、基本的假设
你已有一台已安装了rh 7.2以上版本的机器,在安装过程中你已为准备使用reiserfs&
 quota而设立了独立的分区,可以使用gcc,你了解你的机器包括但不限于以下配置:
网卡的芯片、scsi的芯片(如果有)、cpu的类型。

五、安装新的内核
根据www.reiserfs.org的说明,你需要下载最新的kernel 2.4.20,并安装最新quota
for 2.4.20的补丁。
cd /tmp
wget -c --passive-ftp ftp://ftp.jp.kernel.org/pub/linux/k...-2.4.20.tar.bz2
(jp的速度比较快)
bzip2 -df linux-2.*.bz2 |tar -zxvf //超过了150M
mv linux-2.4.20 /usr/src/
cd /usr/src
rm linux
ln -s linux-2.4.20 linux

下载补丁:
cd /tmp
wget -c --passive-ftp ftp://ftp.namesys.com/pub/reiserfs-...g/quota-2.4.20/*
gzip -d 01*.gz
gzip -d 02*.gz
gzip -d 03*.gz
gzip -d 04*.gz
mv *.diff /usr/src/ //必须是这个目录
cd /usr/src
patch -p0 < 01-*.diff
patch -p0 < 02-*.diff
patch -p0 < 03-*.diff
patch -p0 < 04-*.diff

建立新的链接:
cd /usr/include
rm -r asm linux scsi
ln -s /usr/src/linux/include/asm-i386 asm
ln -s /usr/src/linux/include/linux linux
ln -s /usr/src/linux/include/scsi scsi

编译新的内核:
cd /usr/src/linux
make menuconfig //需要以下的两个包:ncurses & ncurses-devel
本文仅涉及 reiserfs & quota 的部分配置,其它的配置请阅读其它相关的文件(为本安
装过程的顺畅,记到将网卡和scsi卡和其它你认为需要的都编译上,不然后安装后你也干
不了什么)
file system ->
[*] quota support
<*>Old quota format support
[*] Compatible quota interface
<*>Kernel automounter support
<*>Kernel automounter vesion 4 support
<*>Reiserfs support
[]Enable reserfs debug mode //不需要
[*]Stats in /proc/fs/reiserfs
<*>Ext3 Jornalling files system support // 这是rh需要的

编译内核开始,大约要半个小时,你大可去喝杯茶。
make dep ;make clean ; make zImage ;make bzImage ; make modules ;make
 modules_install

下面就是安装了,本处假设你是用grub做为启动(lilo的启动我没有试,网上就有)
cp System.map /boot/System.map-2.4.20
cp arch/i386/boot/bzImage /boot/vmlinuz-2.4.20
cd /boot
rm System.map vmlinuz module-info //以下5步我觉得没有也可,都是按网上来的
ln -s System.map-2.4.20 System.map
ln -s vmlinuz-2.4.20 vmlinuz
cp module-info-2.4.7-10 module-info-2.4.20
ln -s module-info-2.4.20 module-info // 到此
下面就是生成 initrd.img (这是干什么的我也不清楚,照葫芦画瓢,网上可以找到
说明)
cd /usr/src
mkinitrd /boot/initrd-2.4.20.img 2.4.20 (你需要mkinitrd*.rpm )

修改启动程序
vi /boot/grub/grub.conf (下面的是我机器上的文件)
# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE: You have a /boot partition. This means that
# all kernel and initrd paths are relative to /boot/, eg.
# root (hd0,0)
# kernel /vmlinuz-version ro root=/dev/sda3
# initrd /initrd-version.img
#boot=/dev/sda
default=1
timeout=10
splashimage=(hd0,0)/grub/splash.xpm.gz
title Red Hat Linux (2.4.7-10)
root (hd0,0)
kernel /vmlinuz-2.4.7-10 ro root=/dev/sda3
initrd /initrd-2.4.7-10.img

title Red Hat Linux (2.4.20)
root (hd0,0)
kernel /vmlinuz-2.4.20 ro root=/dev/sda3
initrd /initrd-2.4.20.img
重新启动机器,看启动后系统是否正常,如果有问题需要以旧内核重启后重新编译内核。

六、安装新的reiserfs 工具
rpm -e reiserfs-utils //删除已有的工具
cd /tmp
wget -c --passive-ftp ftp://ftp.namesys.com/pub/reiserfsp...gs-3.6.5.tar.gz
tar -zxvf reiserfsprogs*.gz
cd reiserfsprogs-3.6.5
./configure
make & make install
在 /usr/local/sbin/下会有几个文件,要用到的mkreiserfs

init 1 //进入单用户模式
假设你的要将 /home --/dev/sd5 设为reiserfs & quota,你还没有建立除root外
的用户。
#umount /dev/sd5
#mkreiserfs /dev/sd5 // 按提示 yes
修改 /etc/fstab ,将 /home的一行修改为:
/dev/sd5 /home reiserfs default, usrquota 1,2

对你/var分区,也可以用以上的方法,进入单用户, 假设/var 对应/dev/sd6
cd /
tar -czvf var.tar.gz /var
umount /dev/sd6
mkreiserfs /dev/sd6
再按上面的修改/etc/fstab,重启进入单用户,
tar -zxvf var.tar.gz //把var目录恢复
重启后会有出现timestamp错误,没关系的,再重启就没能问题了。
 七、配置quota
我没有安装新的quota,用的还是rh 自带的quota,用关quota的
配置有更详细的文档支持,我这只说几点注意:
cd /home
touch quota.user
rh重启后,rc.sysinit在执行到quota的脚本会出错,不用管它。
/sbin/quotacheck -avug
/sbin/quotaon -avug
再次重启后rc.sysinit就没有问题了,现在可以加用户并配置quota文件:
edquota -u yourname
修改block hard soft inode hard soft 下面对应的数字就可以了。

八、关于作者的义务 (email:aqian@yeah.net)
作者只就实现以上功能就一般的配置将本人的安装过程做一描述,本人无法保障在您的系
统可以现实,不承担因按本文操作而对您及您的关联人、关联法人造成直接或间
接损失的一般及连带责任。

--

Welcome to CYCKER'S LINUX_SOFT FTPD ftp://192.168.36.220

※ 来源:·荔园晨风BBS站 bbs.szu.edu.cn·[FROM: 192.168.36.220]


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

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