Gần đây tôi đã nâng cấp từ Mavericks lên Yosemite .... đau đầu xảy ra
Tôi khá chắc chắn rằng vấn đề của tôi nằm ở số lượng tệp tôi có thể mở - nhưng tôi không chắc cách giải quyết . Tôi cũng khá chắc chắn rằng tôi đã đọc mọi bài viết / mẹo về cách tạo /etc/sysctl.conf
tệp và /etc/launchd.conf
tệp
Để rõ ràng, đây là những gì cả hai hiện tại trông giống như nb (Tôi thậm chí không chắc đây có phải là những lệnh phù hợp để đưa vào chúng nữa hay không - tôi đã thử mọi thứ và mọi sự kết hợp. Ví dụ: giá trị cao hơn, giá trị thấp hơn , loại bỏ các lệnh, thêm các lệnh)
/etc/launchd.conf
limit maxfiles 16384 32768
limit maxproc 1000 2000
/etc/sysctl.conf
# Turn up maxproc
kern.maxproc=2048
# Turn up the maxproc per user
kern.maxprocperuid=512
Tôi cũng đã thử tăng giá trị ulimit của mình - cả trên toàn cầu và cục bộ cho phiên hiện tại của tôi ... không có bueno
ulimit -a
-t: cpu time (seconds) unlimited
-f: file size (blocks) unlimited
-d: data seg size (kbytes) unlimited
-s: stack size (kbytes) 8192
-c: core file size (blocks) 0
-v: address space (kbytes) unlimited
-l: locked-in-memory size (kbytes) unlimited
-u: processes 709
-n: file descriptors 4096
Ok - đây là lúc cơn đau đầu của tôi bắt đầu ... DB của tôi (percona-server 5.6.21-69.0 được cài đặt qua homebrew) bắt đầu nghẹt thở và chết, và trong mysql-error.log nó đã được lấp đầy với lỗi too many files open
.
2014-10-21 15:19:50 5190 [ERROR] /usr/local/Cellar/percona-server/5.6.21-69.0/bin/mysqld: Can't open file: './ie/tokenorder_products.frm' (errno: 24 - Too many open files)
2014-10-21 15:19:50 5190 [ERROR] /usr/local/Cellar/percona-server/5.6.21-69.0/bin/mysqld: Can't open file: './ie/tokenorders.frm' (errno: 24 - Too many open files)
2014-10-21 15:19:50 5190 [ERROR] /usr/local/Cellar/percona-server/5.6.21-69.0/bin/mysqld: Can't open file: './ie/tsdevices.frm' (errno: 24 - Too many open files)
2014-10-21 15:19:50 5190 [ERROR] /usr/local/Cellar/percona-server/5.6.21-69.0/bin/mysqld: Can't open file: './ie/tsracks.frm' (errno: 24 - Too many open files)
2014-10-21 15:19:50 5190 [ERROR] /usr/local/Cellar/percona-server/5.6.21-69.0/bin/mysqld: Can't open file: './ie/v_classunity_classlist.frm' (errno: 24 - Too many open files)
2014-10-21 15:20:48 5190 [ERROR] Error in accept: Too many open files
Đây là nơi ban đầu tôi bắt đầu thử và giải quyết vấn đề đó bằng cách "nâng cấp" ulimit, maxfiles, maxproc của mình, v.v ...
Cuối cùng - thất vọng, tôi tiếp tục và sẽ quay lại vấn đề đó sau. Vì vậy, sau đó tôi đã cố gắng sudo gem install nokogiri
lặp đi lặp lại nó sẽ thất bại và phát sinh ra lỗi tương tự này (rất nhiều lần lặp lại về trình xây dựng.rb không xây dựng tiện ích mở rộng riêng cho đá quý - tiếp theo là một loạt các stacktraces Logs Gist
lỗi cài đặt nokogiri
Tôi đã thử / googled một loạt các phương pháp khác nhau để giải quyết vấn đề này (ví dụ: cờ bổ sung, v.v.). Thật đáng kinh ngạc - và khi tôi bắt đầu nghĩ vấn đề này gắn liền với # tệp / quy trình mở là khi tôi kiểm tra top
trong khi cài đặt đá quý .... Tôi đã rất ngạc nhiên khi thấy những gì tôi tìm thấy
hàng đầu trong gem install nokogiri
Có vẻ như quá trình của tôi tiếp tục diễn ra, điều này có ý nghĩa đối với MỘT dòng này trong ảnh trước của tôi (xem "ảnh cài đặt lỗi nokogiri")
sh: fork: Resource temporarily unavailable
Vì vậy, tôi không có ý tưởng nào, nhưng tôi không thực sự chắc chắn làm thế nào để gỡ lỗi # của các tệp nữa?
CẬP NHẬT
Chà, tôi đã quản lý để cài đặt nokogiri. Thật không may, tôi không chắc chắn chính xác những gì đã sửa nó b / c Tôi đã thử rất nhiều thứ. Nhưng tôi nghĩ rằng nó đã phải đối phó với việc cài đặt lại ruby. Tuy nhiên, tôi vẫn gặp vấn đề tương tự khi DB của tôi phàn nàn về quá nhiều tệp được mở khi tôi sử dụng bất kỳ loại cơ sở dữ liệu nào không nhỏ.