磁盘配额的具体操作

磁盘配额:

linux的磁盘空间有两个方面:第一个是物理空间,也就是磁盘的容量

第二个inode号耗尽,也无法写入

linux根分区:根分区的空间完全耗尽,服务程序崩溃,系统也无法启动了。

为了防止有人恶意的占用磁盘空间,我们就有了磁盘配额的功能。

一个方面,限制用户占用磁盘的空间

另一个方面,限制用户创建文件的数量

xfs文件系统 xfs_quota进行管理

ext3/4文件 quota进行管理

限制容量:xfs_quota -x -c 'limit -u bsoft=80M bhard=100M cxk' /data1

xfs_quota

-x 表示启用专家模式,配额系统的所有管理命令都可以使用

-c 表示直接调用命令

-u 指定对象用户

bsoft:软限制,即使超过了也可以继续使用80M

bhard:硬限制,到了指定的配置就不可以继续写入了。100M

限制创建文件数:

xfs_quota -x -c 'limit -u isoft=4 ihard=6 cxk' /data1

isoft:创建文件的软限制

ihard:创建文件的硬限制

普通使用分区的磁盘容量限制20G-50G

创建文件数:100-200个。

取消配额:

root@localhost /\]# xfs_quota -x -c 'disable -up' /data1 磁盘配额的具体操作: 1、安装xfsprogs和quota两个软件包 ``` [root@localhost ~]# rpm -q xfsprogs quota xfsprogs-4.5.0-18.el7.x86_64 quota-4.01-17.el7.x86_64 [root@localhost ~]# yum -y install xfsprogs quota ``` 2、有普通挂载先解挂载 ``` [root@localhost ~]# umount /dev/zxc/qwe ``` 3、再用支持配额的方式进行挂载 ``` [root@localhost ~]# mount -o usrquota,grpquota /dev/zxc/qwe /data1 ``` 4、关闭防火墙 ``` [root@localhost ~]# systemctl stop firewalld [root@localhost ~]# setenforce 0 ``` 5、创建一个名为zxc的用户并设置登录密码 ``` [root@localhost ~]# useradd zxc [root@localhost ~]# passwd zxc 更改用户 zxc 的密码 。 新的 密码: 无效的密码: 密码少于 8 个字符 重新输入新的 密码: passwd:所有的身份验证令牌已经成功更新。 ``` 6、设置指定用户只能写入不超过100M的文件 ``` xfs_quota -x -c 'limit -u bsoft=80M bhard=100M zxc' /data1 ``` 7、设置文件的权限 ``` chmod 777 /data1 ``` 8、转换用户 ``` su -zxc ``` 9、在data1写入120M大小的文件 ``` [zxc@localhost data1]$ dd if=/dev/zero of=/data1/123/txt bs=10M count=12 ``` 10、只写入了100M大小的文件 ``` [zxc@localhost data1]$ ll -h 总用量 100M -rw-rw-r--. 1 zxc zxc 100M 5月 28 15:16 123.txt ``` 11、设置指定用户创建的文件数量 ``` [root@localhost /]# xfs_quota -x -c 'limit -u isoft=4 ihard=6 zxc' /data1 ``` 12、去被指定的用户创建8个文件 ``` [zxc@localhost data1]$ touch {1..8}.txt touch: 无法创建"7.txt": 超出磁盘限额 touch: 无法创建"8.txt": 超出磁盘限额 ``` 13、只创建了6个,7和8显示超出限额 ``` [zxc@localhost data1]$ ls 1.txt 2.txt 3.txt 4.txt 5.txt 6.txt ``` 补充:取消配额 ``` [root@localhost /]# xfs_quota -x -c 'disable -up' /data1 ``` 第二个:缩容 xfs文件系统是不能缩容的。 ext4可以缩容 ext4缩容的具体操作: 1、有挂载先解挂载 ``` [root@localhost /]# umount /dev/xz/gege ``` 2、缩去一定的内容 ``` [root@localhost /]# lvreduce -L -4G /dev/xz/gege WARNING: Reducing active logical volume to 5.00 GiB. THIS MAY DESTROY YOUR DATA (filesystem etc.) Do you really want to reduce xz/gege? [y/n]: y Size of logical volume xz/gege changed from 9.00 GiB (2304 extents) to 5.00 GiB (1280 extents). Logical volume xz/gege successfully resized. ``` 3、显示内存已经减少了4G ``` [root@localhost /]# lvdisplay xz --- Logical volume --- LV Path               /dev/xz/gege LV Name               gege VG Name               xz LV UUID               OYlc6Z-RYsP-ffHM-qMxL-5oN3-jwhI-OANFvj LV Write Access       read/write LV Creation host, time localhost.localdomain, 2024-05-28 15:58:21 +0800 LV Status             available # open                 0 LV Size               5.00 GiB Current LE             1280 Segments               2 Allocation             inherit Read ahead sectors     auto - currently set to     256 Block device           253:4 ​ ``` **重点:第一个:一定要会创建逻辑卷 动态扩容。卷组可以扩容,逻辑卷也可以扩容** **第二个:磁盘配额,容量 文件数量** 作业:永久挂载实现磁盘配额(有坑!!!) /dev/cxk/ky27 /opt/data xfs defaults,usrquota,grpquota 0 0 操作: 1、进入/etc/fstab文件 ``` vim /etc/fstab ``` 2、在最后一行加入磁盘配额的永久挂载 ``` /dev/zxc/qwe /data1 xfs defaults,usrquota,grpquota 0 0 ``` 其他操作与上面临时挂载的配额一样

相关推荐
Lu Zelin2 小时前
单片机为什么不能跑Linux
linux·单片机·嵌入式硬件
-dzk-3 小时前
【3DGS复现】Autodl服务器复现3DGS《简单快速》《一次成功》《新手练习复现必备》
运维·服务器·python·计算机视觉·3d·三维重建·三维
CS Beginner3 小时前
【Linux】 Ubuntu 开发环境极速搭建
linux·运维·ubuntu
ajassi20003 小时前
开源 C++ QT QML 开发(二)工程结构
linux·qt·qml
致宏Rex3 小时前
Docker 实战教程(7) | 镜像管理和仓库操作
运维·docker·容器
今天只学一颗糖4 小时前
Linux学习笔记--insmod 命令
linux·笔记·学习
摩羯座-185690305944 小时前
爬坑 10 年!京东店铺全量商品接口实战开发:从分页优化、SKU 关联到数据完整性闭环
linux·网络·数据库·windows·爬虫·python
irisart5 小时前
4.1 > Linux 文件/目录权限管理【理论】
linux
---学无止境---5 小时前
Linux中poll的实现
linux
wu~9706 小时前
web服务器有哪些?服务器和web服务器有什么区别
运维·服务器·前端