Bagaimana cara mengubah nilai ulimit default di Mac OS X 10.6?

42

Mac OS X membatasi jumlah proses hingga 266 dan membuka file hingga 256. Kadang-kadang ini masalah; 256 file terbuka dan 266 proses tidak banyak.

Bagaimana mungkin mengubah nilai ulimit default di Mac OS X 10.6.7?

(Semoga tidak ada perbedaan antara 10.6.7 dan rilis Snow Leopard lainnya.)

Pertanyaan terkait di serverfault. Sayangnya, jawabannya untuk Mac OS X 10.5, dan tidak berfungsi di 10.6.

Olli
sumber
Untuk perubahan cepat: ulimit -n 1024. Tapi itu tidak mengubah standarnya.
Cœur

Jawaban:

47

launchctl memiliki kendali atas hal itu sekarang.

Anda bisa melakukan

launchctl limit maxfiles 2048 2048 

untuk mengatur batas lunak dan keras untuk membuka file maksimum. Untuk informasi lebih lanjut lihat bagian 'batas':

http://developer.apple.com/library/mac/#documentation/Darwin/Reference/ManPages/man1/launchctl.1.html

Aaron Kangas
sumber
1
Ini masih berfungsi di OS X 10.9
Olli
Saya menjalankan 10.9.4 dan ketika saya launchctl limit maxfiles 2048 2048dan mongosaya masih mendapatkan soft rlimits too lowkesalahan. Ada lagi yang bisa saya coba?
Ryan
setelah mengubah batas dengan sudo launchctl dll., kemudian tutup / buka terminal dan atur ulimit -n 2048. kali ini seharusnya berfungsi. periksa dengan ulimit -n
chrismarx
4
Setelah melakukan 'launchctl limit maxfiles 2048 2048' Saya mendapat 'terlalu banyak file terbuka' di Mac saya ketika saya mencoba melakukan apa saja di shell, dan aplikasi Cocoa menunjukkan menu kosong. Sistem cukup banyak dipanggang. Sebuah reboot untungnya memperbaikinya.
Graham Wheeler
3
Jangan jalankan perintah ini di macOS Sierra. Perintah yang benar adalah launchctl limit maxfiles 2048 unlimitedmeskipun saya sarankan melihat pengaturan Anda saat ini dengan launchctl limit maxfilessebelum melakukannya, kalau tidak Anda akan benar-benar mengunci komputer Anda.
snowe2010
8

Ada jawaban di StackOverflow untuk yang ini. Rupanya ulimitmelakukannya sekarang.

atl
sumber
1
Anda dapat mengubah nilai dengan ulimit, tetapi itu tidak menyimpannya. Posting tertaut tidak menyertakan cara apa pun untuk menyimpan default.
Olli
3
Perbaikan cepat: Edit ~ / .bash_profile Anda dan tambahkan ini di baris: ulimit -n 1024 (menggunakan nomor apa pun yang Anda suka, tentu saja)
PapaFreud
2
@ PapaFreud Itu hanya dieksekusi ketika Anda membuka terminal / bash. Tidak semua program dijalankan dari terminal.
Olli
1

FYI.

.bash_profile pembaruan tidak membantu saya untuk OS v10.10.3, tetapi menginstal ulang NodeJS dari 0.10.35 hingga 0.12.3 membantu saya, dan kesalahan hilang.

Andrii Lundiak
sumber