当前位置: 代码迷 >> Linux/Unix >> 「学习札记——Linux」磁盘配额(Quota)与高级文件系统管理
  详细解决方案

「学习札记——Linux」磁盘配额(Quota)与高级文件系统管理

热度:1813   发布时间:2013-02-26 00:00:00.0
「学习笔记——Linux」磁盘配额(Quota)与高级文件系统管理

磁盘配额(Quota)与高级文件系统管理

Table of Contents

  • 1 磁盘配额(Quota)的应用与实例
  • 2 软件磁盘阵列(RAID)
  • 3 逻辑卷管理员(Logic Volume Manager)

1 磁盘配额(Quota)的应用与实例

  • 什么是磁盘配额 : Linux 是多用户系统,磁盘配额是分配给每个用户的磁盘可用空间的限制。
  • 如何建立磁盘配额
    • 制作账号环境
      # !/bin/bash# Program:# This program is used to create account environment for "quota"# History:# 2013/2/5 on_1y First releasePATH=$PATHexport PATH# create a group,put the accounts which is need to be "quota" in itgroupadd myquotagrp for username in minix01 minix02 minix03do    useradd -g myquotagrp $username    echo "password:" | passwd --stdin $usernamedoneexit 0
    • 查看文件系统是否支持
      $ df -h /homeFilesystem      Size  Used Avail Use% Mounted on/dev/sda10       94G   37G   53G  41% /home$ mount | grep home/dev/sda10 on /home type ext4 (rw)

      注意不能对目录进入磁盘配额,要对文件系统,所以如果想对home进行磁盘配额,home 需要是一个独立的文件系统,如果不是,那么只能对/进行磁盘配额

      另外,VFAT文件系统不支持磁盘配额,所以还需要用mount查看一下文件系统类型

    • 增加quota支持 在/etc/fstab中的/home段的default后增加两个参数
      /home           ext4    defaults,usrquota,grpquota

      然后重新挂载/home

      # umount /home# mount -a# mount | grep home# /dev/sda10 on /home type ext4 (rw,usrquota,grpquota)
    • 扫描文件系统并建立Quota记录文件
      • quotacheck -avug
        • -a:扫描所有/etc/mtab内,含quota支持的文件系统
        • -v:显示扫描过程信息
        • -u:建立aquota.user,会出现在/home下
        • -g:建立aquota.group,会出现在/home下
    • Quota的启动,关闭与限制设定
      • 启动
        • quotaon -avug
        • -a:启动/etc/mtab下所有支持quota文件系统,-v:显示启动过程信息
        • -u:启动用户限制,-g:启动群组限制
      • 关闭
        • quotaoff
      • 设定用户配额
        • edquota
          # edquota -u minix01Disk quotas for user minix01 (uid 701)Filesystem blocks soft hard inodes soft hard/dev/sda10  80    0    0    10     0
          • blocks:磁盘容量
          • soft/hard:超过soft值会提醒,超过hard值会锁磁盘,单位KB,为0表示无限制
          • indoes:档案数
          • soft/hard:inodes的soft/hard
      • 复制给其它账号
        • edquota -p minix01 -u minix02
      • 设定组配额
        • edquota -g myquotagrp
    • Quota值的显示
      • quota -uvs minix01 minix02
        • 显示用户配额
        • -u:后面指定用户名
        • -v:显示每个用户在文件系统中quota值
        • -s:使用1024倍数显示大小单位
      • repquota -auvs
        • 显示文件系统配额

2 软件磁盘阵列(RAID)

  • RAID:Redundant Arrays of Inexpensive Disks 通过软件技术,把多个小磁盘组合成大磁盘,不仅有数据存储功能,还可以提供数据保护
  • 分级 RAID分成不同级别(level),每一级别有不同的数据存储和保护方式,各级具体信息可以查阅相关文档
  • 分类
    • 硬件磁盘阵列:通过磁盘阵列卡达到组合的目的
    • 软件磁盘阵列:
      • mdadm

3 逻辑卷管理员(Logic Volume Manager)

  • 作用:弹性调整文件系统容量
  • 基本思想:将几个实体分区(或磁盘)通过软件组合成一个独立的大磁盘,然后再将这个大磁盘 分割成可使用的分区(LV),最后就能挂载使用了。
  • 具体过程:
    1. PV:分出4个分区,将System ID设为8e,用pvcreae将这些分区转化为LVM最底层的物理卷(Physical Volumn,PV), 相关命令:pvcreate,pvscan,pvdisplay,pvremove,etc.
    2. VG:将PV整合成一个VG(Volumn Group,就是那个大磁盘) 相关命令:vgcreate,vgscan,vgdisplay,vgremove,vgextend,etc.
    3. LV:将全部VG给LV(Logic Volumn) 相关命令:lvcreate,lvscan,lvdisplay,lvremove,lvresize,etc.
    4. 将LV格式化成ext3文件系统,挂载到/mnt/lvm中
  • 增加LV容量
    1. fdisk新分区,System ID为8e
    2. pvcreate新的PV
    3. vgextend将新PV加入原来的VG
    4. lvresize将新PV内的PE(Physical Extend,相当于block概念,LVM最小存储块)加入原来的LV
    5. resize2fs将文件系统容量增加