Linux是多用户任务的操作系统, 所以就会出现多个用户共享磁盘的情况,如何解决不同用户合理使用磁盘的问题,就可以通过磁盘配额来解决。  

针对用户,设置 用户的磁盘配置。   

相关知识点

      开启或者取消配额:quotaon 、quotaoff
       直接编辑配额:edquota username
       在shell 中直接编辑:setquota usename 4096 5120 40 50 /home
        定义原始标准用户 :edquota -p user1 user2

       初始化数据库quotacheck -cug /home

warnquota -u  给所有超过限制的用户发邮件
          -g 当组的限制超出时,给组管理员发邮件,管理员需在/etc/quotagrpadmins 中指定 groupname: username

1.因为home是用户的家目录,所以要修改配额,就要修改家目录的默认选项,用户配额和组配                                                                                                                                                          wKiom1mhQrTwbzCWAAB7W1Utcek748.png

 2.启用 

wKiom1mhQx6yYN3nAAAbxLgBPT4282.png

3.启用配额

wKiom1mhQ0LRSZS2AABUW2NQt-Q328.png          

4.把王用户的软限制和硬限制设置一下

wKioL1mhQ5XhsySXAAAmRpQRzYg773.png

5.切换到王用户,创建文件,当文件大小超过软限制,就会发出警告,但文件依然会创建。

wKiom1mhQ6Thn1MqAABlnGKtEE4192.png

如果文件大小超过硬限制,文件就无法创建。

wKioL1mhQ5aCO8quAABgJy8vGM8422.png



逻辑卷lvm


 LVM 是什么?

         lvm是逻辑卷管理 LVM 可以弹性的更改LVM 的容量通过交换PE 来进行资料的转换,将原来LV 内的PE 转移到其他的设备中以降低LV 的容量,或将其他设备中的PE 加到LV 中以加大容量

优点:

         1.硬盘的多个分区由LVM统一为卷组管理,可以方便的加入或移走分区以扩大或减小卷组的可用容量,充分利用硬盘空间;
        2.文件系统建立在逻辑卷上,而逻辑卷可根据需要改变大小(在卷组容量范围内)以满足要求。

        3.文件系统建立在LVM上,可以跨分区,方便使用;

建立逻辑卷时一定要弄清楚pv.vg和lv的关系,小编在学习时就因为没弄清楚三者之间的关系而走了很多弯路。

   pv:物理卷,处于LVM最底层,可以是物理硬盘或者分区。

   vg:卷组,建立在PV之上,可以含有一个到多个PV

   lv:逻辑卷,建立在VG之上,相当于原来分区的概念。不过大小可以动态改变


    创建逻辑卷

 先创建pv:pvcreate /dev/sdb

 创建vg vgcreate vgtest1 /dev/sdb

 创建lv : lvcreate -L #[mMgGtT] -n 逻辑卷名 卷组名
            lvcreate -l 60%VG -n 逻辑卷名 卷组名

实验1 扩展逻辑卷
1.先检查需要扩展的大小,VG是否有足够可用空间

wKioL1mhaVKTTjdDAACLIHI5zfU948.pngwKioL1mhaCjyMUaiAACxSS2JTYQ736.png

如果不够则
pvcreate /dev/md2

wKioL1mhaGbzYOymAAAi1oZb2ec174.png

vgextend vgtest1 /dev/sdb

2.如足够则扩展逻辑卷大小
lvextend -L 1G/+1G  /dev/vgmage26/lvmage26_01

wKioL1mhaMChfRUqAAB8Ti1UBqc097.png

lvextend -l +100%FREE /dev/vgmage26/lvmage26_01

查看lv

到此为止,只是逻辑卷增大了,但是文件系统还没变化,所以要进行同步。

3.扩展文件系统大小
resize2fs /dev/vgmage26/lvmage26_01

resize2fs /dev/vgmage26/lvmage26_01 500M 只增加到500M的文件系统
如果是xfs文件系统 用xfs_growfs
xfs_growfs /dev/vg01/lv01

wKioL1mhZ3zSBALJAABR2qeuieE785.png

挂载

wKiom1mhar3g0oVjAADrzE0FjPE392.png


实验2 减小逻辑卷大小  仅支持Ext文件系统
1.umount  /mnt/lvmage26_0   减小之前一定要卸载

wKiom1mhc_Cx5J1WAACb1eOSs4M448.png

2.e2fsck -f /dev/vgmage26/lvmage26_01 对逻辑卷进行扫描

3.resize2fs /dev/vgmage26/lvmage26_01 300M

wKioL1mhdC2jl-sNAADJ7ZdwRGs903.png

4.lvreduce -L 300M /dev/vgmage26/lvmage26_01

5.mount

wKiom1mhdKyg026dAAARYCdFxug162.png

wKiom1mhdR-yQOWpAAAox2l7wmc360.png


实验3:将某块盘从LVM中分离出来 

1.先确保数据不在这块PV上
  用pvs查看

wKiom1mhdZ2Ajk_kAAA3uM8LEdc553.png

2.如果在这块PV上,则将数据转移到同卷组的其他PV上
 pvmove /dev/pv1名 /dev/pv2名(可以不指定)

3.将pv从Vg中移出
 vgreduce vg名 /dev/pv名

wKioL1mhdi_RFoyWAAAwe83nO5U881.png

4.删除该盘的pv属性
 pvremove /dev/pv名

wKioL1mhdl7xEDo8AABUfnMwN4Y861.png

实验4 将LVM迁移到其他主机
1.将数据移到目标磁盘对应的PV上。(该磁盘不要有其他与该PV无关的分区)
    pvmove /dev/pv1名 /dev/pv2名
    vgreduce vg名 /dev/pv(多余)  移动除要移动的PV以外的其他PV
2.确保要迁移的VG名与目的系统没有同名的VG
    vgrename vgmage26 vg02
    lvrename /dev/vg02/lvmage26_01 /dev/vg02/lv01 (非必须)
3.umount /mnt/lvmage26_01

4.vgchange -an vg02 禁用VG上的所有LVwKiom1mhdyiC9jO2AABihskZfJ0261.png
wKioL1mhd1OD-hWVAAB7F-i7eik401.png

5.vgexport vg名    设为导出状态。

wKioL1mhd47T48dyAAAm4ao5yOU320.png

关机(如果支持热插排,则不用关机),拔硬盘,插到目标主机上。

6.装到其他主机上

首先找到导出的磁盘把它复制到要用的地方(若安装到centos7,则复制到centos7文件夹里),在设置里添加一块硬盘,勾选使用现有磁盘,再浏览选择复制的磁盘就ok了。

7.但是我们并找不到刚刚的磁盘,需要敲echo '- - -' > /sys/class/scsi_host/host2/,再敲lsblk就有了。

wKioL1mibz3jOVC4AACl0x9MWCw617.pngpvscan 扫描pv     vgscan  扫描vg   lvscan    扫描lv

wKioL1mib8TBOInIAAByrcMVtkI804.png

vgimport vg名 导入vg
wKioL1mibvvjjLkSAACqzNtHngM142.png

vgchange -ay vg名 激活lvm
wKioL1mibpiiajMeAAAeITEjJAE436.png

之后就可以挂载使用了。