Linux 用户组磁盘配额管理:为实习生设置限制

本文将指导您如何在 Linux 系统中创建用户组和用户,并为其设置磁盘配额限制,以确保数据安全和合理资源分配。

场景: 企业招聘实习生承担项目测试任务,需要为他们在 Linux 中创建专门的用户组 'train',目前有 2 个实习生 'size1' 和 'size2',用户密码统一为 '123'。为了数据安全,需要将他们限制于新增加磁盘的第一个逻辑分区 'sdb5' 中,并且有容量限额要求。

任务: 在 Linux 操作系统中,配置并验证以下任务:

1.1 创建相应的用户和用户组。

1.2 以磁盘限额方式挂载 sdb5 分区到 /mnt/part5。

1.3 查看挂载情况。

1.4 针对用户 size1,只允许使用 10M 大小空间,超过 8M 告警。

1.5 针对用户 size2,只允许使用 50M 大小空间,超过 45M 告警。

1.6 验证配置,切换 size1 用户,创建 7M 文件,进行测试。

1.7 验证配置,切换 size2 用户,创建 55M 文件,进行测试,如失败,创建 35M 文件进行测试。

1.8 切换回 root 用户,查看 size1 和 size2 两个用户的磁盘配额使用情况。

详细步骤:

1.1 创建相应的用户和用户组

  1. 创建名为 'train' 的用户组:
sudo groupadd train
  1. 创建两个实习生的用户账户,分别为 'size1' 和 'size2':
sudo useradd -m -g train -s /bin/bash size1
sudo useradd -m -g train -s /bin/bash size2

这些命令将创建两个用户账户,并将它们添加到 'train' 用户组中。

  • '-m' 选项将为每个用户创建一个家目录。

  • '-g' 选项将指定用户组。

  • '-s' 选项将指定 shell 类型。

1.2 以磁盘限额方式挂载 sdb5 分区到 /mnt/part5

  1. 查看可用的磁盘分区:
sudo fdisk -l

注意,这里我们已经假定磁盘分区为 'sdb5'。

  1. 创建目录,将 sdb5 分区挂载到该目录:
sudo mkdir /mnt/part5
  1. 将 sdb5 分区挂载到 /mnt/part5 目录中,并启用磁盘配额:
sudo mount -o usrquota,grpquota /dev/sdb5 /mnt/part5
  • '-o' 选项用于启用磁盘配额。

  • 'usrquota' 选项用于指定用户磁盘配额。

  • 'grpquota' 选项用于指定用户组磁盘配额。

1.3 查看挂载情况

使用以下命令检查分区是否已成功挂载:

df -h

这将列出所有已挂载分区的信息。确保 'sdb5' 分区已挂载到 '/mnt/part5' 目录中。

1.4 针对用户 size1,只允许使用 10M 大小空间,超过 8M 告警

为用户 'size1' 设置磁盘配额:

sudo setquota -u size1 10240 8192 0 0 /mnt/part5

这条命令将为用户 'size1' 设置磁盘配额。

  • 第一个数字 '10240' 表示用户的硬限制,即用户允许使用的最大磁盘空间,以 KB 为单位。

  • 第二个数字 '8192' 表示用户的软限制,即警告用户已使用超过的磁盘空间,以 KB 为单位。

  • '/mnt/part5' 表示我们要为用户设置磁盘配额的目录路径。

1.5 针对用户 size2,只允许使用 50M 大小空间,超过 45M 告警

为用户 'size2' 设置磁盘配额:

sudo setquota -u size2 51200 45056 0 0 /mnt/part5

这与上一步类似,第一个数字 '51200' 表示用户的硬限制,第二个数字 '45056' 表示用户的软限制,'/mnt/part5' 表示要设置磁盘配额的目录路径。

1.6 验证配置,切换 size1 用户,创建 7M 文件,进行测试

  1. 切换到用户 'size1':
su - size1
  1. 创建一个 7M 的文件:
dd if=/dev/zero of=testfile bs=1M count=7

这将创建一个名为 'testfile' 的 7M 文件。

因为配额软限制为 8M,所以这个操作应该不会收到警告。如果您想测试警告功能,请创建一个更大的文件。

1.7 验证配置,切换 size2 用户,创建 55M 文件,进行测试,如失败,创建 35M 文件进行测试

  1. 切换到用户 'size2':
su - size2
  1. 创建一个 55M 的文件:
dd if=/dev/zero of=testfile bs=1M count=55

因为配额硬限制为 50M,所以这个操作应该会失败,并显示“磁盘空间不足”错误。这个错误是由于我们在第 5 步中设置的配额限制引起的。

如果您想测试警告功能,请创建一个 35M 文件。这应该会触发软限制警告。

1.8 切换回 root 用户,查看 size1 和 size2 两个用户的磁盘配额使用情况

  1. 切换回 root 用户:
su -
  1. 检查用户磁盘配额的使用情况:
sudo repquota -a /mnt/part5

这将列出所有用户的磁盘配额信息,包括硬限制、软限制、已使用空间等等。'-a' 选项表示列出所有用户的信息,'/mnt/part5' 表示要检查磁盘配额使用情况的目录路径。

至此,我们已经完成了为企业招聘实习生创建 'train' 用户组,并为其中的 'size1' 和 'size2' 用户设置磁盘配额的任务。

注意:

  • 在实际应用中,您可能需要根据您的需求调整磁盘配额限制。

  • 确保您理解磁盘配额的概念,并正确设置硬限制和软限制。

  • 定期检查和维护磁盘配额,以确保资源分配合理。

Linux 用户组磁盘配额管理:为实习生设置限制

原文地址: https://www.cveoy.top/t/topic/mJP8 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录