Linux——系统配额与高级文件系统管理

一、磁盘配额Quota

1、获得文件系统支持

1Quota仅针对整个文件系统进行规划,检查是否为独立的文件系统

df -h /home

 

2VFAT文件系统不支持Quota功能,坚持文件系统的类型

mount | grep home

3、将文件系统获得Quota支持

a、只在本次开机中获得支持

mount -o remount,usrquota,grpquota /home

b、每次开机均获得支持

vi /etc/fstab

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

umount /home

mount -a

 

2、新建Quota配置文件

quota […] [/mount_point]

-a:扫描所有的文件系统,/mount_point不用写

-u:针对用户扫描文件和目录,会新建aquota.user

-g:针对用户组扫描,会新建aquota.group

-v:显示扫描信息

 

3Quota启动、关闭与限制值设置

quotaon […]

-u:针对用户启用quota

-g:针对用户组启用

-a:对所有的文件系统

启用quota

 

quotaoff […]

-a:对所有的文件系统

-u:后接用户

-g:后接用户组

关闭quota

 

edquota [-u 用户名] [-g 用户组名]

//只修改softhard值,限制容量和限制文件数量都可以,一般限制容量

edquota -t

//修改宽限时间

edquota -p 范本账号 -u 新账号

//表示按照范本账号的限制情况对新账号加以限制

对用户或用户组修改配额限制

4、显示限制报表

quota […] [用户名/用户组名]

-u:后接用户名

-g:后接用户组名

-v:显示quota

-s:以M等做单位

对用户/用户组做限制报表

 

repquota -a [-vugs]

 

对文件系统做限制报表

454

 

 

 

二、软件磁盘阵列

相关命令

mdadm --detail /dev/md0

查看后面磁盘阵列的详细信息

 

mdadm --create --auto=yes /dev/md[0-9] --raid-devices=N\

> --level=[015] --spare-devices=N /dev/hdx

--create:表示新建RAID

--auto=yes:后面接新建的RAID设备名称

--raid-devices=N:表示用几个磁盘创建磁盘阵列

--spare-devices=N:表示用几个磁盘作为备用

--level=5:表示创建的磁盘阵列类型为RAID-5

创建RAID

过程

1mdadm --create --auto=yes /dev/md0 --level=5\

> --raid-devices=4 --spare-devices=1 /dev/had{6,7,8,9,10}

//表示用/dev/had{6,7,8,9,10}5个设备创建了一个名为/dev/md0,类型为RAID-5的磁盘阵列,其中一个为备用磁盘

 

2mdadm --detail /dev/md0

//查看创建结果

 

3、格式化并挂载磁盘阵列

 

磁盘出错救援

mdadm --manage /dev/md0 --add /dev/hda11 --remove /dev/hda8

加入新的磁盘,并删除出错的磁盘

设置磁盘阵列开机挂载

1、查看磁盘阵列的UUID

mdadm --detail /dev/md0 | grep -i uuid

2、设置磁盘阵列的配置文件,添加相关信息

vi /etc/mdadm.conf

3、设置开机挂载

vi /etc/fstab

umount /dev/md0

mount -a

 

关闭磁盘阵列

1、删除开机配置文件中的相关信息

umount /dev/md0

vi /etc/fstab

2、直接关闭/dev/md0

mdadm --stop /dev/md0

3、删除磁盘阵列配置文件中的相关信息

vi /etc/mdadm.conf

 

 

三、逻辑卷管理器

实现流程

1、修改普通分区系统标识符为8e

fdisk /dev/hda

 

2、创建PV

pvcreate:将物理分区创建为PV

pvscan:查询系统内任何具有PV的分区

pvdisplay:更详细的显示PV状态

pvremove:删除分区上的PV状态

pvscan

 

pvcreate /dev/had{6,7,8,9}

 

3、由PV创建VG

vgcreate [-s N[mgt]] VG名称 PV名称

-s:后面接PE的大小

vgscan:查看系统上是否有VG存在

vgdisplay:查看vg的详细信息

vgextend:为vg添加pv

vgreduce:在vg中删除pv

vgchange:设置vg是否启动

vgremove:删除一个vg

 

vgcreaate -s 16M vbirdvg /dev/hda{6,7,8}

//注意:PV名称要是完整的路径

 

vgextend vbirdvg /dev/hda9

 

4、由VG分割出LV

lvcreate […] [-n LV名称] VG名称

-L:后接容量,单位为m\g\t,但注意大小必须为PE的整数倍

-l:后接PE个数

lvscan:查看已存在的LV

lvdisplay:查看LV详细信息

lvextend:增加LV容量

lvreduce:减小LV容量

lvremove:删除一个LV

lvresize:对LV进行容量调整

lvcreate -l 356 -n vbirdlv vbirdvg

 

5、将LV格式化并挂载

 

放大LV容量

过程:

1、用fdisk设置新的具有8e systemID的分区;

2、用pvcreate构建PV

3、用vgextendPV加入VG

4、用lvresize将新加入VG中的PE加入LV中;

5、用resize2fs将文件系统中的容量确实增加(这个不要忘了)

fdisk /dev/hda (t)

//修改分区的系统标识符

 

pvcreate /dev/hda10

//创建pv

 

vgextend vbirdvg /dev/hda10

//pv加入到vg

 

lvreszie -l +179 /dev/vbirdvg/vbirdlv

//调整lv容量

 

resize2fs /dev/vbirdvg/vbirdlv

//这一步并不需要先卸载,再挂载,可直接在线操作

缩小LV容量

过程:

与上面相反

resize2fs /dev/vbirdvg/vbirdlv 6900M

//降低文件系统容量

 

lvresize -l -89 /dev/vbirdvg/vbirdlv

//降低lv容量

 

vgreduce vbirdvg /dev/hda10

//vg中移出lv

 

pvremove /dev/hda10

//取消pv属性

 

fdisk /dev/hda (t)

//修改分区的系统标识符

LVM的系统快照

新建快照区

过程:

1、查看vg中剩余的PE

vgdisplay

 

2、创建快照区

lvcreate -l 60 -s -n vbirdss /dev/vbirdvg/vbirdlv

 

3、将快照进行挂载

 

利用快照区恢复原文件系统

过程:

1、创建一个备份文件

mkdir -p /backups

cd /mnt/snapshot

tar -jcv -f /backups/lvm.tar.bz2 *

 

2、将快照卸载并删除

umount /mnt/snapshot

lvremove /dev/vbirdvg/vbirdss

 

3、将原文件系统格式化

umount /mnt/lvm

mkfs -t ext4 /dev/vbirdvg/vbirdlv

mount /dev/vbirdvg/vbirdlv /mnt/lvm

 

4、将备份文件复制到挂载点

tar -jxv -f /backups/lvm.tar.bz2 -C /mnt/lvm

 

将原文件进行快照后,所有的操作在快照中进行,并不影响原文件

 

删除LVM

过程:

1、先卸载系统上的LVM文件系统(包括快照)

2、用lvremove删除LV

3、用vgchange -an VGname让这个VG不再具有active标志

4vgremove删除VG

5、用pvremove删除PV

6、用fdisk修改ID

 

P488

 

 

你可能感兴趣的:(Linux命令)