大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。
Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺
文章目录
1. 实验要求
- 虚拟机新增一个硬盘,大小大于 10G ,使用 parted 工具对磁盘进行分区,分区类型为 ext4
- 对新增分区设置磁盘配额,限制 lisi 用户最多允许使用 200M 的容量大小并最多允许创建 10 个文件
2. 实验步骤
准备一个新虚拟机,我们用新环境进行实验
VMware 添加一块 20G 硬盘
echo "- - -" > /sys/class/scsi_host/host0/scan #扫描主机
fdisk -l #查看 /dev/sdb 是否添加成功
parted /dev/sdb
#过程-----------------------------------------
GNU Parted 3.1
使用 /dev/sdb
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) mklabel
新的磁盘标签类型? gpt
(parted) mkpart
分区名称? []? sdb1
文件系统类型? [ext2]? ext4
起始点? 0
结束点? 10G
警告: The resulting partition is not properly aligned for best performance.
忽略/Ignore/放弃/Cancel? Ignore
(parted) q
信息: You may need to update /etc/fstab.
#-----------------------------------------------
partprobe /dev/sdb #更新分区表
fdisk -l #查看是否有了一个 10G 的新分区叫 sdb1
mkfs -t ext4 /dev/sdb1
mkdir /test
#设置磁盘配额的方式挂载
echo "/dev/sdb1 /test ext4 defaults,usrquota,grpquota 0 0" >> /etc/fstab
mount -a
df -Th|grep sdb1 #查看 sdb1 是否挂载成功
setenforce 0 #临时关闭 selinux
yum -y install xfsprogs quota
quotacheck -cvu /dev/sdb1 #创建配额配置文件(或者 /test)
ll /test/ | grep aquota.user #查看配置文件是否创建成功
#进行配额
useradd lisi
echo "123456" | passwd --stdin lisi
#----------------------------------------------------
edquota -u lisi #该命令对用户进行磁盘配额
Disk quotas for user lisi (uid 1001):
Filesystem blocks soft hard inodes soft hard
/dev/sdb1 0 0 200M 0 0 10
#----------------------------------------------------
#开启配额功能
quotaon -uv /dev/sdb1 #开启配额功能,等于 quotaon -uv /test
quotaon -p /dev/sdb1 #查看(quotaoff 关闭配额功能)
chmod 777 /test
#验证容量限额
[lisi@c7-1 /test]$dd if=/dev/zero of=/test/test.txt bs=10M count=30
sdb1: write failed, user block limit reached.
dd: 写入"/test/test.txt" 出错: 超出磁盘限额
记录了21+0 的读入
记录了20+0 的写出
209715200字节(210 MB)已复制,0.531336 秒,395 MB/秒
#验证文件数量限额
[lisi@c7-1 /test]$touch {
1..30}.txt
sdb1: write failed, user file limit reached.
touch: 无法创建"10.txt": 超出磁盘限额
touch: 无法创建"11.txt": 超出磁盘限额
touch: 无法创建"12.txt": 超出磁盘限额
touch: 无法创建"13.txt": 超出磁盘限额
touch: 无法创建"14.txt": 超出磁盘限额
......
3. 我的一次实验步骤
[root@c7-1 ~]#parted /dev/sdb
GNU Parted 3.1
使用 /dev/sdb
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) help
align-check TYPE N check partition N for TYPE(min|opt) alignment
help [COMMAND] print general help, or help on COMMAND
mklabel,mktable LABEL-TYPE create a new disklabel (partition table)
mkpart PART-TYPE [FS-TYPE] START END make a partition
name NUMBER NAME name partition NUMBER as NAME
print [devices|free|list,all|NUMBER] display the partition table, available devices, free space, all found partitions, or a particular partition
quit exit program
rescue START END rescue a lost partition near START and END
resizepart NUMBER END resize partition NUMBER
rm NUMBER delete partition NUMBER
select DEVICE choose the device to edit
disk_set FLAG STATE change the FLAG on selected device
disk_toggle [FLAG] toggle the state of FLAG on selected device
set NUMBER FLAG STATE change the FLAG on partition NUMBER
toggle [NUMBER [FLAG]] toggle the state of FLAG on partition NUMBER
unit UNIT set the default unit to UNIT
version display the version number and copyright information of GNU Parted
(parted) mklabel gpt
(parted) mkpart
分区名称? []? primary
文件系统类型? [ext2]? ext4
起始点? 1
结束点? 10G
(parted) p
Model: VMware, VMware Virtual S (scsi)
Disk /dev/sdb: 21.5GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name 标志
1 1049kB 10.0GB 9999MB primary
(parted) q
信息: You may need to update /etc/fstab.
partprobe /dev/sdb
mkfs.ext4 /dev/sdb1
mkdir /test
[root@c7-1 ~]#mount /dev/sdb1 /test/
[root@c7-1 ~]#df -Th
文件系统 类型 容量 已用 可用 已用% 挂载点
devtmpfs devtmpfs 1.9G 0 1.9G 0% /dev
tmpfs tmpfs 1.9G 0 1.9G 0% /dev/shm
tmpfs tmpfs 1.9G 12M 1.9G 1% /run
tmpfs tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup
/dev/sda2 xfs 50G 1.7G 49G 4% /
/dev/sda5 xfs 40G 33M 40G 1% /data
/dev/sda1 xfs 2.0G 141M 1.9G 7% /boot
tmpfs tmpfs 378M 0 378M 0% /run/user/0
/dev/sdb1 ext4 9.1G 37M 8.6G 1% /test
#设置磁盘配额
[root@c7-1 ~]#yum -y install xfsprogs quota &> /dev/null
[root@c7-1 ~]#rm -rf /test/*
[root@c7-1 ~]#umount /test
[root@c7-1 ~]#echo "/dev/sdb1 /test ext4 defaults,usrquota,grpquota 0 0" >> /etc/fstab
[root@c7-1 ~]#mount -a
[root@c7-1 ~]#df -Th | grep sdb1
/dev/sdb1 ext4 9.1G 37M 8.6G 1% /test
[root@c7-1 ~]#useradd lisi
[root@c7-1 ~]#echo "123456" | passwd --stdin lisi
更改用户 lisi 的密码 。
passwd:所有的身份验证令牌已经成功更新。
[root@c7-1 ~]#setenforce 0
[root@c7-1 ~]#quotacheck -auvg &> /dev/null
[root@c7-1 ~]#ll /test
总用量 16
-rw------- 1 root root 6144 8月 24 12:04 aquota.group
-rw------- 1 root root 7168 8月 24 12:08 aquota.user
[root@c7-1 ~]#edquota -u lisi #设置配额
Disk quotas for user lisi (uid 1001):
Filesystem blocks soft hard inodes soft hard
/dev/sdb1 0 0 204800 0 0 10
[root@c7-1 ~]#quotaon -uv /test #开启配额功能
[root@c7-1 ~]#quotaon -p /test
group quota on /test (/dev/sdb1) is on
user quota on /test (/dev/sdb1) is on
[root@c7-1 ~]#chmod 777 /test/
[root@c7-1 ~]#su - lisi
[lisi@c7-1 ~]$cd /test
[lisi@c7-1 /test]$ls
aquota.group aquota.user
[lisi@c7-1 /test]$dd if=/dev/zero of=/test/test.txt bs=10M count=30
sdb1: write failed, user block limit reached.
dd: 写入"/test/test.txt" 出错: 超出磁盘限额
记录了21+0 的读入
记录了20+0 的写出
209715200字节(210 MB)已复制,0.208929 秒,1.0 GB/秒
[lisi@c7-1 /test]$touch {
1..20}.txt
sdb1: write failed, user file limit reached.
touch: 无法创建"10.txt": 超出磁盘限额
touch: 无法创建"11.txt": 超出磁盘限额
touch: 无法创建"12.txt": 超出磁盘限额
touch: 无法创建"13.txt": 超出磁盘限额
touch: 无法创建"14.txt": 超出磁盘限额
touch: 无法创建"15.txt": 超出磁盘限额
touch: 无法创建"16.txt": 超出磁盘限额
touch: 无法创建"17.txt": 超出磁盘限额
touch: 无法创建"18.txt": 超出磁盘限额
touch: 无法创建"19.txt": 超出磁盘限额
touch: 无法创建"20.txt": 超出磁盘限额
[lisi@c7-1 /test]$quota -u lisi
Disk quotas for user lisi (uid 1001):
Filesystem blocks quota limit grace files quota limit grace
/dev/sdb1 204800* 0 204800 10* 0 10
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/169742.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...