回答:
ulimit
コマンドによる変更:
$ ulimit -n 4096
$ ulimit -Hn 16384
現在のユーザーとセッションにのみ適用されます。永続的にするには/etc/security/limits.conf
、制限を追加して変更する必要があります。
* soft nofile 4096
* hard nofile 16384
ただし、ユーザーにはワイルドカード*
は適用されませんroot
。そのためには、明示的に述べる必要があります。
* soft nofile 4096
* hard nofile 16384
root soft nofile 4096
root hard nofile 16384
これらの制限は、再起動後に適用されます。
再起動せずに変更を適用する場合/etc/pam.d/common-session
は、ファイルの最後に次の行を追加して変更します。
session required pam_limits.so
次回ログインすると、更新された制限が表示されるはずです。それらを確認できます(ソフト制限とハード制限)。
$ ulimit -a
$ ulimit -Ha
/etc/pam.d/common-session-noninteractive
ために追加する必要がありました。
pam_limits.so
しており、で有効にしてい/etc/pam.d/common-session
ます。私はで構成されている/etc/security/limits.conf
ため、ハードとソフトリミット持っているxは、ユーザnofile
64000がsudo -u x
、その後ulimit -a
変更が適用されなかったことを私に示しています。私はそれを認識しsu
、sudo
異なるPAM構成を持っているので、それを適切に機能させるには、pam_limits.so
in を有効にする必要がありました/etc/pam.d/common-session-noninteractive
。ユースケースが何であるか疑問に思っている場合は、ansibleとsudoを使用してユーザーを変更します。