/etc/security/limits.conf không được áp dụng


11

Tôi có /etc/security/limits.conf, điều đó dường như không được áp dụng:

a soft nofile 1048576 # default: 1024
a hard nofile 2097152
a soft noproc 262144  # default 128039
a hard noproc 524288  

Trong trường hợp alà tên người dùng của tôi, khi tôi chạy ulimit -Hnulimit -Sn, nó cho thấy:

4096
1024

Chỉ có một tệp khác trong /etc/security/limits.dnội dung đó là:

scylla  -  core     unlimited
scylla  -  memlock  unlimited
scylla  -  nofile   200000
scylla  -  as       unlimited
scylla  -  nproc    8096

Tôi cũng đã thử nối các giá trị /etc/security/limits.confđó để khởi động lại và thực hiện điều này:

echo '
session required pam_limits.so
' | sudo tee -a /etc/pam.d/common-session

nhưng nó không hoạt động. Hệ điều hành của tôi là Ubuntu 17.04.


Câu trả lời:


11

/superuser/1200539/cannot-increas-open-file-limit-past-4096-ubfox/1200818# =

Có một lỗi từ Ubuntu 16 rõ ràng.

Về cơ bản:

  1. Chỉnh sửa /etc/systemd/user.confcho giới hạn mềm và thêm DefaultLimitNOFILE=1048576.
  2. Chỉnh sửa /etc/systemd/system.confcho giới hạn mềm và thêm DefaultLimitNOFILE=2097152.

Tín dụng đến @mkasberg .


Sau những cài đặt này, chúng ta có cần khởi động lại không?
Mahesh

1
Có, một khởi động lại được yêu cầu khi tôi thử nó.
daniel.gindi

6

Một thay thế cho những người không muốn chỉnh sửa mặc định /etc/systemd/system.conf/etc/systemd/user/confcác tập tin:

  1. tạo một tệp mới /etc/systemd/system.conf.d/limits.confvới các nội dung sau:

    [Manager]
    DefaultLimitNOFILE=1048576:2097152
    DefaultLimitNPROC=262144:524288
    
  2. chạy systemctl daemon-reexecnhư root

  3. đăng xuất và đăng nhập lại

  4. kiểm tra giới hạn mới của bạn với một trong hai ulimit -ahoặc ulimit -nulimit -ucho các tập tin mở tối đa và quy trình tối đa, tương ứng.

Tham khảo systemd-system.conftrang hướng dẫn để biết chi tiết.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.