limits.conf 文件限制用户,在 Linux 中使用示例进行处理
Linux 可以完全控制系统。在本文中,我们将了解文件limits.conf 。 limit.conf 是一个配置,用于将资源限制为用户、组。现在让我们了解limits.conf的文件结构以及我们如何使用limits.conf来限制用户的资源。在继续之前,请注意要编辑此文件,您必须具有 root 权限。
limit.config 的完整路径是:
/etc/security/limits.conf
pam_module是一个模块,它使用 ulimit 命令来应用limits.conf 文件中的限制。
limit.conf 文件的基本语法是:
现在让我们逐个了解每个字段
领域
在这个领域,我们需要命名我们要限制的人。以下可以是该字段的值
- 用户名
- 团队名字
- * 指定所有
- 用户身份
- 组名
类型
在这个领域,我们提到了我们将应用到所提到的域的限制类型。该字段有两个值,软或硬
- 硬:用户不能跨越提到的值。
- 软:用户可以跨越提到的值,直到预先设定硬值。
物品
此字段提及我们将针对提到的域限制哪些资源。以下是此字段的一些值
- 核心:限制核心文件大小(以 KB 为单位)
- 数据:以 KB 为单位的最大数据大小
- fsize:最大文件大小 (KB)
- 堆栈:以 KB 为单位的最大堆栈大小
- cpu:最大 CPU 时间为分钟
要查看此字段的所有值,请阅读limits.conf 的手册
价值
此字段存储上述限制的值。
用户限制
现在让我们看看如何使用limits.conf 文件来限制用户。我们将通过一个例子来理解这一点。所以为了限制用户,我们需要提到 username 作为域字段。在本例中,GFG 是用户。之后我们不得不提到限制的类型,在这个例子中,我们设置了硬类型。现在首先设置项目,我们需要从可用项目中选择任何项目,因此在此示例中,我们选择使用 CPU 项目。现在我们必须提到值,项目 CPU 的值必须以分钟为单位,因此在此示例中,我们将值提及为 10 分钟。这是我们的限制:
gfg hard cpu 10
组限制
为了限制组,我们可以使用与 value 和 item 相同的格式和值,但不要使用用户名提及组名。这是员工组的一个示例
emplyee hard nproc 30
使用通配符应用限制
我们已经将一个域视为* (星号)。要将限制应用于整个系统,我们可以使用此通配符域。这是一个带有通配符的示例,用于在系统上应用有限数量的登录。
* - maxsyslogins 20
应用此限制后,系统的最大登录次数为 20。
为限制指定用户 ID 范围
当我们想为多个用户指定一个限制,但用户不属于同一组时,我们可以指定限制必须应用的用户范围。当我们提到用户 ID 范围时,所提到的限制将应用于属于该范围的用户 ID。要指定范围,请使用:操作。下面是一个例子:
1000:1020 hard nproc 50
此限制将应用于 1000 到 1020 范围内的用户 ID。
为限制指定组 ID 范围
与用户 ID 相同,当我们必须对多个组 ID 应用相同的限制时,我们可以指定组 ID 的范围。使用:运算符来提及范围。
@500:505 soft cpu 10000
此限制将应用于 500 到 505 之间的组 ID。
限制进程数
现在让我们探索比上面提到的更多的项目。有一项名为nproc的项目通过使用此选项我们可以限制用户或组 ID 的数量。因此限制用户 gfg 的进程数使用以下限制。
gfg hard nproc 50
应用此限制后,用户 gfg 将最多拥有 50 个进程。
限制 CPU 时间
还有一个叫做cpu 的项目,用于限制提到的用户或组的 CPU 时间。因此,要限制用户 gfg 的 CPU 时间 1000 个周期,请使用以下限制:
gfg soft cpu 0000
限制打开文件数
nofile是一个项目,通过使用它我们可以限制用户可以打开的最大文件数。 因此,要限制用户 gfg 可以打开的最大文件数为 227,请使用以下限制
gfg hard nofile 227
限制登录次数
默认情况下,系统允许我们在系统上无限制地登录,但这会造成安全问题。所以为了避免安全问题,我们可以限制用户或用户组的登录次数。我们可以使用 maxlogins 项来限制组用户登录系统的次数。因此,要限制用户组 gfg 的 10 次登录,我们可以使用以下限制:
@gfg - maxlogins 10
限制系统登录次数
在前面的例子中,我们看到了如何限制用户组登录系统的次数。现在为了限制整个系统的最大登录次数,我们可以使用maxsyslogins项。因此,要限制系统的最大登录次数为 50,请使用以下限制:
* - maxsyslogins 50
此限制适用于整个系统,而不适用于任何特定用户和用户组。
限制最大文件大小
我们可以通过使用 fsize 项来限制文件的文件大小。此限制可用于限制临时或类似使用类型的文件。因此,要限制单个文件大小为 4 GB 的 gfg,我们可以使用以下限制:
@gfg - fsize 4000000
文件大小以 KB 表示。使用不同的域和项目对用户、系统和组应用不同的限制。
现在要知道进程的限制,我们可以使用带有进程 PID 的 cat 命令来了解进程 PID 使用 ps 命令。
cat /proc/PID/limits
这是例子
输出与limits.conf 文件字段相同。要了解有关 limits.conf 文件设置的更多信息,请使用 man 命令
man limits.conf