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

一. 磁盘配额(Quota)的应用于实战

1. Quota 的一般用途

针对 WWW server ,例如:每个人的网页空间的容量限制!

针对 mail server,例如:每个人的邮件空间限制。

针对 file server,例如:每个人最大的可用网络磁盘空间 (教学环境中最常见!)

限制某一群组所能使用的最大磁盘配额 (使用群组限制)

限制某一使用者的最大磁盘配额 (使用使用者限制)

Link 的方式,来使邮件可以作为限制的配额 (更改 /var/spool/mail 这个路径)


2. Quota 的使用限制

 仅能针对整个 filesystem:

核心必须支持 quota

Quota 的记录档:

只对一般身份使用者有效:

 

3. Quota 的规范配置项目:

 容量限制或文件数量限制 (block 或 inode):

柔性劝导与硬性规定 (soft/hard):

会倒数计时的宽限时间 (grace time):


实践Quota流程:

1. 创建 quota 记录档

Quota 是透过分析整个文件系统中,每个使用者(群组)拥有的文件总数与总容量, 再将这些数据记录在该文件系统的最顶层目录,然后在该记录档中再使用每个帐号(或群组)的限制值去规范磁盘使用量的。

quotacheck :扫瞄文件系统并创建 Quota 的记录档

[root@www ~]# quotacheck [-avugfM] [/mount_point]选项与参数:

-a  :扫瞄所有在 /etc/mtab 内,含有 quota 支持的 filesystem,加上此参数后,

      /mount_point 可不必写,因为扫瞄所有的 filesystem 了嘛!

-u  :针对使用者扫瞄文件与目录的使用情况,会创建 aquota.user

-g  :针对群组扫瞄文件与目录的使用情况,会创建 aquota.group

-v  :显示扫瞄过程的资讯;

-f  :强制扫瞄文件系统,并写入新的 quota 配置档 (危险)

-M  :强制以读写的方式扫瞄文件系统,只有在特殊情况下才会使用。

 

2. Quota 启动、 关闭与限制值配置

(1)quotaon :启动 quota 的服务

 [root@www ~]# quotaon [-avug]

[root@www ~]# quotaon [-vug] [/mount_point]选项与参数:

-u  :针对使用者启动 quota (aquota.user)

-g  :针对群组启动 quota (aquota.group)

-v  :显示启动过程的相关信息;

-a  :根据 /etc/mtab 内的 filesystem 配置启动有关的 quota ,若不加 -a 的话,

      则后面就需要加上特定的那个 filesystem 喔!


(2)quotaoff :关闭 quota 的服务

[root@www ~]# quotaoff [-a]

[root@www ~]# quotaoff [-ug] [/mount_point]选项与参数:

-a  :全部的 filesystem 的 quota 都关闭 (根据 /etc/mtab)

-u  :仅针对后面接的那个 /mount_point 关闭 user quota

-g  :仅针对后面接的那个 /mount_point 关闭 group quota


3)edquota :编辑帐号/群组的限值与宽限时间

edquota 是 edit quota 的缩写,所以就是用来编辑使用者或者是群组限额的命令罗。我们先来看看 edquota 的语法吧, 看完后再来实际操作一下。

[root@www ~]# edquota [-u username] [-g groupname]

[root@www ~]# edquota -t  <==修改宽限时间

[root@www ~]# edquota -p 范本帐号 -u 新帐号选项与参数:

-u  :后面接帐号名称。可以进入 quota 的编辑画面 (vi) 去配置 username 的限制值;

-g  :后面接群组名称。可以进入 quota 的编辑画面 (vi) 去配置 groupname 的限制值;

-t  :可以修改宽限时间。

-p  :复制范本。那个 范本帐号 为已经存在并且已配置好 quota 的使用者,

      意义为『将 范本帐号 这个人的 quota 限制值复制给 新帐号 』!

 

3. Quota 限制值的报表

1) quota :单一用户的 quota 报表

[root@www ~]# quota [-uvs] [username]

[root@www ~]# quota [-gvs] [groupname]选项与参数:

-u  :后面可以接 username ,表示显示出该使用者的 quota 限制值。若不接 username

      ,表示显示出运行者的 quota 限制值。

-g  :后面可接 groupname ,表示显示出该群组的 quota 限制值。

-v  :显示每个用户在 filesystem 的 quota 值;

-s  :使用 1024 为倍数来指定单位,会显示如 M 之类的单位!

 

2)repquota :针对文件系统的限额做报表

[root@www ~]# repquota -a [-vugs]选项与参数:

-a  :直接到 /etc/mtab 搜寻具有 quota 标志的 filesystem ,并报告 quota 的结果;

-v  :输出的数据将含有 filesystem 相关的细部资讯;

-u  :显示出使用者的 quota 限值 (这是默认值);

-g  :显示出个别群组的 quota 限值。

-s  :使用 M, G 为单位显示结果

 

二.软件磁盘阵列(Software RAID)

1.什么是 RAID

磁盘阵列全名是『 Redundant Arrays of Inexpensive Disks, RAID 』,英翻中的意思是:容错式廉价磁盘阵列。 RAID 可以透过一个技术(软件或硬件),将多个较小的磁碟整合成为一个较大的磁碟装置; 而这个较大的磁碟功能可不止是储存而已,他还具有数据保护的功能

 

2. 等级:

RAID-0 (等量模式, stripe):效能最佳

RAID-1 (映射模式, mirror):完整备份

RAID 0+1,RAID 1+0

   RAID-0 的效能佳但是数据不安全,RAID-1 的数据安全但是效能不佳,那么能不能将这两者整合起来配置 RAID 呢? 可以啊!那就是 RAID 0+1 或 RAID 1+0。所谓的 RAID 0+1 就是: (1)先让两颗磁碟组成 RAID 0,并且这样的配置共有两组; (2)将这两组 RAID 0 再组成一组 RAID 1。

RAID 5:效能与数据备份的均衡考量.

Spare Disk:预备磁盘的功能:

 

3..磁盘阵列的优点

数据安全与可靠性:指的并非资讯安全,而是当硬件 (指磁碟) 损毁时,数据是否还能够安全的救援或使用之意;

读写效能:例如 RAID 0 可以加强读写效能,让你的系统 I/O 部分得以改善;

容量:可以让多颗磁碟组合起来,故单一文件系统可以有相当大的容量。

 

4.软件磁盘阵列的配置

[root@www ~]# mdadm --detail /dev/md0

[root@www ~]# mdadm --create --auto=yes /dev/md[0-9] --raid-devices=N \

> --level=[015] --spare-devices=N /dev/sdx /dev/hdx...选项与参数:

--create :为创建 RAID 的选项;

--auto=yes :决定创建后面接的软件磁盘阵列装置,亦即 /dev/md0, /dev/md1...

--raid-devices=N :使用几个磁碟 (partition) 作为磁盘阵列的装置

--spare-devices=N :使用几个磁碟作为备用 (spare) 装置

--level=[015] :配置这组磁盘阵列的等级。支持很多,不过建议只要用 0, 1, 5 即可

--detail :后面所接的那个磁盘阵列装置的详细资讯

 

5.关闭软件 RAID(重要!)

# 1. 先卸载且删除配置档内与这个 /dev/md0 有关的配置:

[root@www ~]# umount /dev/md0

[root@www ~]# vi /etc/fstab/dev/md0    /mnt/raid     ext3    defaults      1 2# 将这一行删除掉!或者是注解掉也可以!

# 2. 直接关闭 /dev/md0 的方法!

[root@www ~]# mdadm --stop /dev/md0

mdadm: stopped /dev/md0  <==不罗唆!这样就关闭了!

 

[root@www ~]# cat /proc/mdstat

Personalities : [raid6] [raid5] [raid4]

unused devices:  <==看吧!确实不存在任何阵列装置!

 

[root@www ~]# vi /etc/mdadm.confARRAY /dev/md0 UUID=7c60c049:57d60814:bd9a77f1:57e49c5b# 一样啦!删除他或是注解他!

 

三.逻辑卷轴管理员 (Logical Volume Manager)

1.概述

LVM 的重点在于可以弹性的调整 filesystem 的容量,LVM 可以整合多个实体 partition 在一起, 让这些 partitions 看起来就像是一个磁盘一样!而且,还可以在未来新增或移除其他的实体 partition 到这个 LVM 管理的磁碟当中。 

2.什么是 LVM: PV, PE, VG, LV

Physical Volume, PV, 实体卷轴

Volume Group, VG, 卷轴群组

Physical Extend, PE, 实体延伸区块

Logical Volume, LV, 逻辑卷轴 

3.实现流程

11.磁盘配额(Quota)与高级文件系统管理_第1张图片


PV 阶段

pvcreate :将实体 partition 创建成为 PV ;

pvscan :搜寻目前系统里面任何具有 PV 的磁盘;

pvdisplay :显示出目前系统上面的 PV 状态;

pvremove :将 PV 属性移除,让该 partition 不具有 PV 属性。


VG 阶段

vgcreate :就是主要创建 VG 的命令啦!他的参数比较多,等一下介绍。

vgscan :搜寻系统上面是否有 VG 存在?

vgdisplay :显示目前系统上面的 VG 状态;

vgextend :在 VG 内添加额外的 PV ;

vgreduce :在 VG 内移除 PV;

vgchange :配置 VG 是否启动 (active);

vgremove :删除一个 VG 啊!

 

LV 阶段

lvcreate :创建 LV 啦!

lvscan :查询系统上面的 LV ;

lvdisplay :显示系统上面的 LV 状态啊!

lvextend :在 LV 里面添加容量!

lvreduce :在 LV 里面减少容量;

lvremove :删除一个 LV !

lvresize :对 LV 进行容量大小的调整!

 

5.放大 LV 容量

fdisk 配置新的具有 8e system ID 的 partition

利用 pvcreate 建置 PV

利用 vgextend 将 PV 加入我们的 vbirdvg

利用 lvresize 将新加入的 PV 内的 PE 加入 vbirdlv 中

透过 resize2fs 将文件系统的容量确实添加!

 

6. LVM 拥有快照功能,快照可以记录 LV 的数据内容,并与原有的 LV 共享未更动的数据,备份与还原就变的很简单;  

 

7.LVM 相关命令汇整与 LVM 的关闭

任务

PV 阶段

VG 阶段

LV 阶段

搜寻(scan)

pvscan

vgscan

lvscan

创建(create)

pvcreate

vgcreate

lvcreate

列出(display)

pvdisplay

vgdisplay

lvdisplay

添加(extend)

 

vgextend

lvextend (lvresize)

减少(reduce)

 

vgreduce

lvreduce (lvresize)

删除(remove)

pvremove

vgremove

lvremove

改变容量(resize)

 

 

lvresize

改变属性(attribute)

pvchange

vgchange

lvchange

 

你可能感兴趣的:(Linux)