Maison >Tutoriel système >Linux >Explication détaillée de la commande ulimit en utilisant CentOS 6.5 comme exemple

Explication détaillée de la commande ulimit en utilisant CentOS 6.5 comme exemple

WBOY
WBOYoriginal
2024-07-31 11:13:02627parcourir
Résumé : ulimit est utilisé pour limiter les ressources que chaque utilisateur peut utiliser, telles que le CPU, la mémoire, les handles, etc. Ce qui suit prend CentOS 6.5 comme exemple pour résumer.

ulimit est utilisé pour limiter les ressources que chaque utilisateur peut utiliser, telles que le processeur, la mémoire, les poignées, etc. Ce qui suit prend CentOS 6.5 comme exemple pour résumer.

1 Voir ulimit

Format de commande :

<span class="hljs-built_in">ulimit</span> [-SHacdefilmnpqrstuvx]
  • ParamètreS : Indique la limite souple Lorsque la valeur limite est dépassée, une alarme sera émise
  • .
  • ParamètreH : Représente une limite stricte, qui ne doit pas dépasser la valeur limite
  • Paramètre a : Toutes les limites de ressources seront répertoriées, telles que :

CentOS 6.5为例 ulimit命令详解

  • Paramètre c : Lorsqu'une erreur se produit dans certains programmes, le système peut écrire les informations du programme en mémoire dans un fichier (pour le débogage). Ce type de fichier est appelé fichier core. Cela limite la capacité maximale de chaque fichier principal
  • Paramètred : La valeur maximale de chaque segment de données de processus
  • Paramètref : La taille maximale du fichier pouvant être créé par le shell actuel
  • Paramètrel : La valeur maximale de la mémoire physique pouvant être verrouillée
  • Paramètrem : La valeur maximale de la mémoire résidente pouvant être utilisée
  • Paramètren : Le nombre maximum de descripteurs de fichiers que chaque processus peut ouvrir simultanément
  • Paramètrep : La valeur maximale du pipeline
  • Paramètress : la valeur maximale de la pile
  • Paramètret : La durée maximale pendant laquelle chaque processus peut utiliser le CPU
  • Paramètreu : Le nombre maximum de processus simultanés exécutés par chaque utilisateur
  • Paramètrev : La mémoire virtuelle maximale pouvant être utilisée par le shell actuel
2 Modifier ulimit

Format de commande :

<span class="hljs-built_in">ulimit</span> [-SHcdefilmnpqrstuvx] [<span class="hljs-built_in">limit</span>]

Ajoutez la valeur limite après la commande que vous consultez pour ajuster une certaine limite, mais cela n'est efficace que pour le shell de connexion actuel.

Le paramètre S signifie définir une limite souple ; le paramètre H signifie définir une limite stricte ; lorsque ni l'une ni l'autre n'est spécifiée, cela signifie définir à la fois la limite souple et la limite stricte aux valeurs spécifiées.

3 Modifier définitivement ulimit

所谓永久,是指每次登陆shell时,都会按配置重新设定ulimit ,以达到永久生效的效果。

  • 步骤一:修改/etc/security/limits.conf

添加如下内容:

关于该文件的配置方式请参考后文

[root@CentOS646506 ~]# vim /etc/security/limits.conf
<span class="hljs-bullet">* </span>hard nproc 64000
<span class="hljs-bullet">* </span>soft nproc 64000
<span class="hljs-bullet">* </span>hard nofile 64000
<span class="hljs-bullet">* </span>soft nofile 64000

以上内容表示,将-u-n 的软限制和硬限制同时修改为64000。

  • 步骤二:修改/etc/pam.d/login

添加如下内容:

[root<span class="hljs-variable">@CentOS646506</span> ~]<span class="hljs-comment"># vim /etc/pam.d/login</span>
session required pam_limits.so

以上内容表示,在登录时使用pam 管理limit

  • 步骤三:修改/etc/profile

添加如下内容

[root@CentOS646506 ~]<span class="hljs-comment"># vim /etc/profile</span>
<span class="hljs-built_in">ulimit</span> -u 64000
<span class="hljs-built_in">ulimit</span> -n 64000

每次登陆shell后,会初始执行这两条ulimit 命令,并使其生效。

  • 步骤四:使配置生效

重新登录或使用source /etc/profile 立即生效。

source使当前shell对指定文件内容生效。

3.1 /etc/security/limits.conf配置详解

格式:

<span class="hljs-tag"><<span class="hljs-name">domain</span>></span> <span class="hljs-tag"><<span class="hljs-name">type</span>></span> <span class="hljs-tag"><<span class="hljs-name">item</span>></span> <span class="hljs-tag"><<span class="hljs-name">value</span>></span>
  • domain 是指生效实体
    • 用户名
    • 也可以通过@group 指定用户组
    • 使用* 表示默认值
  • type 指限制类型
    • soft 软限制
    • hard 硬限制
  • item限制资源
    • core同ulimit -c
    • data同ulimit -d
    • fsize同ulimit -f
    • memloc同ulimit -l
    • nofile同ulimit -n
    • stack同ulimit -s
    • cpu 同ulimit -t
    • nproc同ulimit -u
    • maxlogins指定用户可以同时登陆的数量
    • maxsyslogins系统可以同时登陆的用户数
    • priority用户进程运行的优先级
    • locks用户可以锁定的文件最大值
    • sigpengding同ulimit -i
    • msgqueue同ulimit -q

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn