share facebook facebook facebook twitter twitter menu hatena pocket slack

2020.08.11 TUE

[Amazon Web Services]低スペックのEC2インスタンスでユーザのnproc値がある一定の値以上に増やせない場合の対応方法

木檜 和明

WRITTEN BY 木檜 和明

一般ユーザのnproc値を変更しようと以下のソフトリミット設定を行ったが、スペックの低いEC2インスタンスだとある一定の値以上に増やせない。

$ cat /etc/security/limits.d/20-nproc.conf
:
*          soft    nproc     4096
root       soft    nproc     unlimited

$ ulimit -u
3791

またrootユーザもunlimitedに設定されているにもかかわらず、同様にulimit -uの値が一般ユーザと同じになってしまう。

$ sudo su
# ulimit -u
3791

これはnprocのハードリミットが設定されておらずカーネルによって設定された値がハードリミットとなり、この値がulimit -uの上限(上記の例では3791)になるためである。

$ man limits.conf
:
    <type>
        hard
            for enforcing hard resource limits. These limits are set by the superuser and enforced by
            the Kernel. The user cannot raise his requirement of system resources above such values.
:

この制限を外すには、以下のように設定してハードリミットを増やしてあげればよい。

$ cat /etc/security/limits.d/20-nproc.conf
:
*          hard    nproc     4096

同様に、rootユーザのulimit -uをunlimitedにするには以下のように設定すればよい。

$ cat /etc/security/limits.d/20-nproc.conf
:
root       hard    nproc     unlimited

元記事はこちら

低スペックのEC2インスタンスでユーザのnproc値がある一定の値以上に増やせない場合の対応方法

木檜 和明

木檜 和明

遠くのクラウドと手元のIoTデバイス、両エッジをつないだものづくりがしたいと妄想中。Arduinoのコミュニテイやってます。

cloudpack

cloudpackは、Amazon EC2やAmazon S3をはじめとするAWSの各種プロダクトを利用する際の、導入・設計から運用保守を含んだフルマネージドのサービスを提供し、バックアップや24時間365日の監視/障害対応、技術的な問い合わせに対するサポートなどを行っております。
AWS上のインフラ構築およびAWSを活用したシステム開発など、案件のご相談はcloudpack.jpよりご連絡ください。