ext3格式下的quota的实现

王朝other·作者佚名  2006-11-24
宽屏版  字体: |||超大  

ext3下的quota实现

superblood

ext3是由开放资源社区开发的日志文件系统,ext3被设计成是ext2的升级版本,ext3在ext2的基础上加入了记录元数据的日志功能,努力保持向前和向后的兼容性。这个文件系统被称为ext2的下一个版本。

ext3fs最大的优点是向下兼容ext2,而且ext3fs还支持异步的日志,这意味着它的性能可能比ext2还好。但是使用ext3文件系统时不支持磁盘限量功能。

red hat从kernel2.4.17-pre8以后支持ext3的磁盘quota,我选择了更为稳定的kernel2.4.18来实现。

<1.源文件>

kernel-2.4.18:http://www.kernel.org/pub/linux/kernel/v2.4/linux-2.4.18.tar.gz

quota:ftp://ftp.rpmfind.net/linux/redhat/7.3/en/os/i386/RedHat/RPMS/quota-3.03-1.i386.rpm

把档案放在/home/src下

<2.設定方法>

2-1-2)kernel升级过程:

#cd /home/src

#mkdir kernel_update

#cp ./linux-2.4.18.tar.gz ./kernel_update

#cd kernel_update

#tar zxvf linux-2.4.18.tar.gz

#cd linux

#make menuconfig

此时出现Linux Kernel v2.4.18 Configuration的窗口

Processor type and features --->

General setup --->

Memory Technology Devices (MTD) --->

Parallel port support --->

Plug and Play configuration --->

Block devices --->

Multi-device support (RAID and LVM) --->

Networking options --->

Telephony Support --->

ATA/IDE/MFM/RLL support --->

SCSI support --->

Fusion MPT device support --->

I2O device support --->

Network device support --->

Amateur Radio support --->

IrDA (infrared) support --->

ISDN subsystem --->

Old CD-ROM drivers (not SCSI, not IDE) --->

Input core support --->

Character devices --->

Multimedia devices --->

File systems --->

Console drivers --->

Sound --->

USB support --->

Kernel hacking --->

---

Load an Alternate Configuration File

Save Configuration to an Alternate File

以下都是kernel里的选项,可以根据server硬件的不同自行选择

与quota有关的设定如下

找到File systems ---> 的字样 (第22行) 按空格键

把第一行的Quota support前打上*号

[*] Quota support

Kernel automounter support

<*> Kernel automounter version 4 support (also supports v3)

< > Reiserfs support

Ext3 journalling file system support (EXPERIMENTAL)

[*] JBD (ext3) debugging support

< > DOS FAT fs support

< > Compressed ROM file system support

[*] Virtual memory file system support (former shm fs)

< > Simple RAM-based file system support

<*> ISO 9660 CDROM file system support

[ ] Microsoft Joliet CDROM extensions

[ ] Transparent decompression extension

< > Minix fs support

< > FreeVxFS file system support (VERITAS VxFS(TM) compatible)

< > NTFS file system support (read only)

< > OS/2 HPFS file system support

[*] /proc file system support

[*] /dev/pts file system for Unix98 PTYs

< > ROM file system support

<*> Second extended fs support

< > System V/Xenix/V7/Coherent file system support

< > UDF file system support (read only)

< > UFS file system support (read only)

Network File Systems --->

选定以后选择exit退出。

出现以下:

┌──────────────────────────────────────────────────────────┐

│ Do you wish to save your new kernel configuration? │

├──────────────────────────────────────────────────────────┤

│ < Yes > < No > │

└──────────────────────────────────────────────────────────┘

选择yes

然后出现以下字样:

Saving your kernel configuration...

*** End of Linux kernel configuration.

*** Check the top-level Makefile for additional configuration.

*** Next, you must run 'make dep'.

2-1-2)编译kernel

#make dep

#make clean

#make bzImage

#make modules

#make modules_install

2-1-3)cp新的kernel到启动区

#cp /home/src/kernel_update/linux/arch/i386/boot/bzImage /boot/vmlinuz-2.4.18

#mkinitrd /boot/initrd-2.4.18.img 2.4.18

#vi /etc/lilo.conf

在最后添加以下

image=/boot/vmlinuz-2.4.18 <= kernel的路径

label=newkernel <= 启动时的卷标

initrd=/boot/initrd-2.4.18.img <= kernelimg的路径

read-only

root=/dev/hda2 <= / 所在的区

#/sbin/lilo -m /boot/map

2-1-4)重新启动server

#reboot

重新启动进入时在redhat lilo的选择界面选择newkernel进入

2-2)设定quota

2-2-1)安装quota。

#cd /home/src

#rpm -ivv quota-3.03-1.i386.rpm

2-2-2)设定quota,以home为例

#vi /etc/fstab

LABEL=/home /home ext3 defaults 1 2

改成

LABEL=/home /home ext3 defaults,usrquota,grpquota 1 2

重启server

#/sbin/reboot

2-2-3)设定用户限定

#quotacheck -uvg /home

#edquota -u test

Disk quotas for user chenc (uid 694):

Filesystem blocks soft hard inodes soft hard

/dev/hda5 6000 5000 6000 3 5000 6000

在soft和hard下添上需要限制的磁盘大小(单位是K)

#edquota -t

Grace period before enforcing soft limits for users:

Time units may be: days, hours, minutes, or seconds

Filesystem Block grace period Inode grace period

/dev/hda5 1minutes 1minutes

设定soft quota和hard quota之间的时间。

启动quota

#quotaon -av

<3、测试>

用test帐号用ftp进行测试,当test目录达到了5M时,提示Disk quota exceeded.

欢迎志同道和者前来讨论。

mail:superblood@21cn.com

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有