tentukan ulimit untuk pengguna root

8

kami yakin kami telah meningkatkan deskriptor file terbuka maksimal untuk pengguna root. Ini dilakukan dengan menambahkan baris ini ke /etc/security/limits.conf:

*         -    nofile            2048

Kami pikir kami telah mengkonfirmasi bahwa batas pengguna root ditingkatkan karena kami dapat memberitahu (tidak dijelaskan di sini) bahwa aplikasi kami (solr - yang dijalankan oleh root) memiliki 1098 file yang terbuka. Namun, kami tidak dapat memastikan berapa banyak file terbuka yang diizinkan oleh pengguna root. Kami berharap perintah ini berfungsi, tetapi sepertinya tidak:

$ sudo -u root -s "ulimit -Sn"
1024

Ada ide? Terima kasih!

andersonbd1
sumber
Apakah ada entri lain untuk nofile di limit.conf? Mungkin diganti. Bagaimana dengan kemungkinan parsing kesalahan dari membatasi.conf Bisakah Anda melampirkan seluruh file Anda?
Andrew Case
Apakah Anda menjalankan selinux? Apa output dari: ls -lZ /etc/security/limits.conf
Andrew Case

Jawaban:

6

Dapatkan PID dari proses yang solrsedang berjalan dan kemudian cat /proc/$SOLR_PID/limits- ini akan memberi tahu Anda batas sebenarnya dari proses tersebut.

Saya akan merekomendasikan untuk menjalankan hal-hal seperti solrsebagai pengguna tidak terpisahkan yang terpisah. Saat melakukan ini, Anda memiliki beberapa opsi ( limit.conf atau tambahkan ulimit -n 2048ke skrip init, ...). Yang terakhir tidak terlalu mengkilap tetapi berfungsi untuk pengaturan cepat dan memulai ulang daemon

RANT: jangan bilang bahwa Anda tidak dapat memulai kembali karena Anda akan kehilangan layanan. Jika demikian, Anda tetap harus memiliki pengaturan HA :)

Martin M.
sumber
5

Setelah mengubah jumlah file yang terbuka /etc/security/limits.conf, pengguna harus keluar dan masuk kembali agar berlaku. Jadi, coba ini:

$ sudo su -
# ulimit -Sn
kuanta
sumber
2

Saya tahu pertanyaan ini memiliki jawaban, tetapi itu lebih mirip pekerjaan, bukan solusi nyata.

Menurut ubuntu ini bukan bug tetapi masalah dokumentasi, lihat: https://bugs.launchpad.net/ubuntu/+source/pam/+bug/65244

Terima kasih atas laporan Anda. Seperti yang Anda katakan ini bukan bug di pam tetapi masalah dokumentasi. Fakta untuk mengizinkan secara eksplisit mengizinkan batasan untuk root pengguna telah diatasi beberapa waktu yang lalu (30 Agustus 2000) tetapi Anda perlu secara eksplisit memberi nama root pengguna untuk menerapkan batasan tersebut.

Jadi jika Anda ingin mengubah ulimit pada semua pengguna, termasuk pengguna root, Anda harus menentukan:

*         -    nofile            2048
root      -    nofile            2048
Zunderscore
sumber