使用 parted 对单个磁盘进行分区并进行配额「建议收藏」

使用 parted 对单个磁盘进行分区并进行配额「建议收藏」文章目录1.实验要求2.实验步骤3.我的一次实验步骤1.实验要求虚拟机新增一个硬盘,大小大于10G,使用parted工具对磁盘进行分区,分区类型为ext4对新增分区设置磁盘配额,限制lisi用户最多允许使用200M的容量大小并最多允许创建10个文件2.实验步骤准备一个新虚拟机,我们用新环境进行实验VMware添加一块20G硬盘echo”—“>/sys/class/scsi_host/host0/scan#扫描主机fdis

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新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 824 12:04 aquota.group
-rw------- 1 root root 7168 824 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
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/169742.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • JS prototype作用

    JS prototype作用 prototype可查看原型属性,还可对原型添加属性或方法functionCar(name){this.name=name;this.run=function(){console.log(this.height+’cm’+this.name+’isrun!’)…

    2022年7月22日
    4
  • 对猴子摘香蕉问题给出产生式系统描述_猴子接香蕉的编程

    对猴子摘香蕉问题给出产生式系统描述_猴子接香蕉的编程一个房间里,天花板上挂有一串香蕉,有一只猴子可在房间里任意活动(到处走动,推移箱子,攀登箱子等)。设房间里还有一只可被猴子移动的箱子,且猴子登上箱子时才能摘到香蕉,问猴子在某一状态下(设猴子位置为A,香蕉位置在B,箱子位置为C),如何行动可摘取到香蕉2.1猴子摘香蕉问题PEAS性能环境执行器感知器猴子站在箱香蕉MoveSite子上摘到香箱子ClimbHold蕉房间(a,b,c)PushOnGraspHangJump2.2定义谓词Site(x,w):物体x的位置是wHold(z):z手中拿着香蕉On(z):z

    2022年9月26日
    1
  • TensorFlow CNN 测试CIFAR-10数据集

    TensorFlow CNN 测试CIFAR-10数据集

    2021年9月12日
    105
  • 数据库 部分函数依赖 完全函数依赖 传递函数依赖 第一范式、第二范式、第三范式、BCNF范式区别

    数据库 部分函数依赖 完全函数依赖 传递函数依赖 第一范式、第二范式、第三范式、BCNF范式区别数据库部分函数依赖完全函数依赖传递函数依赖第一范式、第二范式、第三范式、BCNF范式区别在理解函数依赖之前,先来看一下函数依赖分析:在关系中,包括在任何候选码中的属性称为主属性;不包括在任何候选码中的属性称为非主属性。函数依赖只分析关系中的非主属性对主属性之间的依赖关系,并不分析主属性对主键(码)的依赖关系。具体关于部分函数依赖和完全函数依赖的定义,网上有很…

    2022年5月23日
    51
  • 数据结构二叉树中序遍历_数据结构二叉树先序

    数据结构二叉树中序遍历_数据结构二叉树先序二叉树中序遍历二叉树中序遍历的实现思想是:访问当前节点的左子树 访问根节点 访问当前节点的右子树图1二叉树以上图1为例,中序遍历的过程如下:访问该二叉树的根节点,找到1 遍历节点1的左子树,找到节点2 遍历节点2的左子树,找到节点4 由于节点4无左孩子,因此找到节点4,并遍历节点4的右子树 由于节点4无右子树,因此节点2的左子树遍历完成,访问节点2 遍历节点2的右子树,找到节点5 由于节点5无左子树,因此访问节点5

    2022年9月14日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号