0505

磁盘配额

server

dd if=/dev/zero of=/mnt/studentfile bs=1M count=10

截取命令从无限零设备复制文件到/mnt/studentfile 共十份每个1M

dd:用指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换

if=文件名: 即指定源文件

of=文件名 :即指定的目的文件

bs=bytes:同时设置输出/读入的块的大小为byets个字节

count=blocks:  仅拷贝blosk个块

加载配额,

配额又称限额,针对的是分区,不是用户也不是文件,更不是整个硬盘

 fdisk /dev/vdb                    新建一个/dev/vdb1

Calling ioctl() to re-read partition table.      (列表已经自动重读)

Syncing disks.

[root@localhost ~]# partprobe 

                                (建立完成后partprobe加载列表)

mkfs.xfs /dev/vdb1    #####格式化/dev/vdb1

 

 mount -o usrquota /dev/vdb1 /mnt/        ####挂载设备

 chmod 777 /mnt/                        ###给设备权限

                                                          (注意并非给文件权限)

edquota -u student                    ###student用户设置配额    

 

Disk quotas for user student (uid 1000):

  Filesystem                   blocks       soft       hard     inodes     soft     hard

  /dev/vdb1                   20480          0      20480          1        0        0

 Blocks表示已存在的文件个数,是一个事实

Soft表示软件容量,超过后会受到警告

Hard表示写入最大额度

Inodes表示使用个数

Soft表示使用次数

Hard表示最大额度

 切换student用户


执行 dd if=/dev/zero of=/mnt/studentfile bs=1M count=10       ###配额可满足

                                                   

但执行dd if=/dev/zero of=/mnt/studentfile bs=1M count=21

dd: error writing ‘/mnt/studentfile’: Disk quota exceeded  ###配额不满足

 配额开机自动加载

root用户里执行

 vim /etc/fstab                         ###设置配额开机自动执行

 

 

/dev/vdb1 /mnt       xfs    defaults,usrquota          0      0

配额磁盘 挂载目录 挂载格式         用户配额      不检测   不备份

硬盘扩容分区

Lvm        ###

Pv          ###物理卷

Vg         ###物理卷组

 Pe          ###物理扩展(最小单元)

 做实验前卸载删除

保持实验环境纯净


 监控

[root@localhost ~]# watch -n 1 'pvs;vgs;lvs;df -h /mnt'

创立3个分区

[root@localhost ~]# fdisk /dev/vdb

 

t修改分区8e     修改为lvm

 

pvcreate /dev/vdb1              ####创建物理卷/dev/vdb1

WARNING: xfs signature detected on /dev/vdb1 at offset 0. Wipe it? [y/n] y    (需确认)

  Wiping xfs signature on /dev/vdb1.

  Physical volume "/dev/vdb1" successfully created           ####创建成功

 

 vgcreate vg0 /dev/vdb1       ####将物理卷创建为物理卷组vg0

  Volume group "vg0" successfully created

 

 lvcreate -L 300M -n lv0 vg0   ########### 在卷组vg0上创建一个名为lv0的逻辑卷大小为300M 设备接口为/dev/vg0/lv0

 

 mkfs.xfs /dev/vg0/lv0          格式化逻辑卷lv0     

                  

 mount /dev/vg0/lv0 /mnt/       将逻辑卷lv0挂载至/mnt/

 

 /dev/vg0/lv0 /dev/mapper/vg0-lv0这两个代表同一个东西

[root@localhost ~]# ll /dev/vg0/lv0                    

lrwxrwxrwx. 1 root root 7 May  4 23:01 /dev/vg0/lv0 -> ../dm-0

[root@localhost ~]# ll /dev/mapper/vg0-lv0

lrwxrwxrwx. 1 root root 7 May  4 23:01 /dev/mapper/vg0-lv0 -> ../dm-0

 

xfs扩容   此扩容方式不可缩减   在不卸载设备的情况下可扩容

lvextend -L 500M /dev/vg0/lv0        逻辑卷/dev/vg0/lv0增加 500M 空间

     

xfs_growfs /dev/vg0/lv0       格式化逻辑卷 /dev/vg0/lv0 

 pvcreate /dev/vdb2                    删除物理卷 /dev/vdb2  

 

 vgextend vg0 /dev/vdb2     向卷组 "vg0" 中添加物理卷/dev/vdb2 

 

 lvextend -L 1500M /dev/vg0/lv0    逻辑/dev/vg0/lv0增加 1500M 空间

 

 xfs_growfs /dev/vg0/lv0       格式化逻辑卷 /dev/vg0/lv0 


 Ext4扩容方式,可拉伸可缩减

先卸载挂载的设备

 umount /dev/vg0/lv0

 

mkfs.ext4 /dev/vg0/lv0     格式化/dev/vg0/lv0 为ext4格式

挂载设备至/mnt/ 

 lvextend -L 1800M /dev/vg0/lv0                           罗辑卷/dev/vg0/lv0增加 1500M 空间

 

resize2fs /dev/vg0/lv0                 对逻辑卷进行扩容

 

 

 

设备缩减

先卸载   umount /mnt/

扫描       e2fsck -f /dev/vg0/lv0


缩减文件系统   resize2fs /dev/vg0/lv0 1000M


再挂载        mount /dev/vg0/lv0 /mnt/

缩减设备      lvreduce -L 1000M /dev/vg0/lv0

 

迁移vg

Pvs查看设备使用情况

若设备正在使用,需先将设备迁移至一块闲置的设备

pvmove /dev/vdb1 /dev/vdb2   ###将设备1的数据迁移到设备2

 

vgreduce vg0 /dev/vdb1         ####将设备1闲置出来

 

pvremove /dev/vdb1           ####将闲置出来的设备1取出

 

设备快照

快照时设备空闲的空间不够时需先配额一下

先在/mnt/下建立九个文件


umount /mnt/          ####将设备卸载 

 lvcreate -L 50M -n lv0backup -s /dev/vg0/lv0    ###快照

.显示可用空间不够,此时应该配额


[root@localhost ~]# pvcreate /dev/vdb1

  Physical volume "/dev/vdb1" successfully created

[root@localhost ~]# vgextend vg0 /dev/vdb1

  Volume group "vg0" successfully extended

配额成功后再快照

lvcreate -L 50M -n lv0backup -s /dev/vg0/lv0


 

[root@localhost ~]# mount /dev/vg0/lv0backup /mnt/       ###装载快照至/mnt/

[root@localhost ~]# cd /mnt/

[root@localhost mnt]# ls                            #####查看文件快照过来了

hello1  hello3  hello5  hello7  hello9

hello2  hello4  hello6  hello8  lost+found

 

 

删除所有东西,并卸载设备


 

[root@localhost ~]# lvremove /dev/vg0/lv0backup            ###删除逻辑卷(快照)

                                                              


 

 

 

 

[root@localhost ~]# lvcreate -L 50M -n lv0backup -s /dev/vg0/lv0    ####再次进行快照

  Rounding up size to full physical extent 52.00 MiB

  Logical volume "lv0backup" created

[root@localhost ~]# mount /dev/vg0/lv0backup /mnt/   ####将快照加载到/mnt/

[root@localhost ~]# cd /mnt/              ####查看文件,在,快照成功

[root@localhost mnt]# ls

hello1  hello3  hello5  hello7  hello9

hello2  hello4  hello6  hello8  lost+found

 

 

 

 

 

删除配额

[root@localhost ~]# umount /mnt/              #####先卸载设备

[root@localhost ~]# lvremove /dev/vg0/lv0backup  ####删除 /dev/vg0/lv0backup逻辑卷


[root@localhost ~]# lvremove /dev/vg0/lv0  ####删除/dev/vg0/lv0逻辑卷

 


 

[root@localhost ~]# vgremove vg0            ####删除vg0


 

[root@localhost ~]# pvremove /dev/vdb{1..2}         ###删除磁盘/dev/vdb12


删除完成


猜你喜欢

转载自blog.csdn.net/awoyaoc/article/details/80230529
今日推荐