Saya di Ubuntu 17.04. Mencoba meningkatkan batas file terbuka, dan tidak ada instruksi yang saya temukan online berfungsi. Saya bisa naik ke 4096, tetapi tidak bisa melewati itu.
$ ulimit -n
1024
$ ulimit -n 4096
$ ulimit -n
4096
Itu bekerja. Ini tidak:
$ ulimit -n 4097
bash: ulimit: open files: cannot modify limit: Operation not permitted
Tampaknya karena batas keras:
$ ulimit -Hn
4096
Saya sudah mencoba menambahkan baris ini ke /etc/security/limits.conf:
* hard nofile 65535
* soft nofile 65535
root soft nofile 65535
root hard nofile 65535
Juga menambahkan baris ini ke /etc/pam.d/common-session dan /etc/pam.d/common-session-noninteractive:
session required pam_limits.so
Sejak melakukan itu, saya telah mem-boot ulang komputer saya. Perubahan untuk membatasi.conf tampaknya tidak mempengaruhi apa pun. Batas keras masih tertahan di 4096, mencegah saya naik lebih tinggi. Bagaimana cara meningkatkan batas file terbuka saya?
Berikut beberapa info konfigurasi tambahan:
$ cat /proc/sys/fs/file-max
1624668
sumber
DefaultLimitNOFILE=65535
melakukan trik. Tapi mengapa itu tidak/etc/security/limits.conf
berhasil?/etc/systemd/system.conf
) yang tidak tergantung pada konfigurasi normal untuk sesi terminal (/etc/security/limits.conf
). Saya tidak cukup tahu tentang systemd untuk tahu mengapa itu diterapkan dengan cara ini.root
pengguna tidak dapat ditentukan oleh*
atau grup penentu.root
literal harus ditentukan secara eksplisit.Tidak perlu mengubah apa pun di
/etc/security/limits.conf
file, itu diabaikan jika Anda menggunakan systemd.(mereproduksi jawaban yang dimodifikasi untuk pertanyaan lain di jaringan ...)
Alternatif bagi mereka yang memilih untuk tidak mengedit default
/etc/systemd/system.conf
dan/etc/systemd/user/conf
file:buat file baru
/etc/systemd/system.conf.d/limits.conf
dengan konten ini:jalankan
systemctl daemon-reexec
sebagai rootlogout dan login lagi
periksa batas baru Anda dengan
ulimit -n
.Lihat halaman
systemd-system.conf
manual untuk detailnya.sumber
/etc/systemd/system.conf
. Membuat perubahan di sana tampaknya telah berhasil, terima kasih.Menggunakan Ubuntu 17.04 saya mendapat batas keras yang dijelaskan:
Saya bisa menurunkannya menggunakan
ulimit
, tetapi tidak menambahnya, seperti pertanyaan yang menggambarkannya.ulimit
manual menjelaskan:Jadi saya mencoba menetapkan batas yang lebih tinggi
/etc/security/limits.conf
seperti ini:dan info masuk baru seperti
ssh localhost -l user
memberi saya batas baru:Saya harap ini juga bekerja untuk Anda.
sumber
edit /etc/systemd/system/sonar.service
tambahkan dua baris ini di bawah Layanan
[Layanan]
LimitMEMLOCK = tak terbatas
LimitNOFILE = 65535
ini bekerja untuk saya.
sumber
TL; DR Saya merasa perlu memusatkan jawaban, sehingga lebih mudah ditemukan. Butuh waktu lama bagi saya untuk mengumpulkan semua bagian agar berfungsi dengan benar ...
Ada 2 lokasi yang harus dipertimbangkan.
Sesi GUI
atau lebih baik di sini:
lingkungan shell
atau lebih baik di sini:
Setelah mengubah pengaturan pada file di atas, reboot dan kemudian periksa batasannya dengan:
ulimit -n -Hn -Sn
sumber