ulimit
là nội trang hệ vỏ như cd
, không phải là một chương trình riêng biệt. sudo
tìm kiếm nhị phân để chạy, nhưng không có mã nhị phân ulimit
, đó là lý do tại sao bạn nhận được thông báo lỗi. Bạn cần phải chạy nó trong một trình bao.
Tuy nhiên, trong khi bạn cần phải root để nâng giới hạn lên 65535, có thể bạn không muốn chạy chương trình của mình dưới dạng gốc. Vì vậy, sau khi bạn tăng giới hạn, bạn nên chuyển về người dùng hiện tại.
Để làm điều này, hãy chạy:
sudo sh -c "ulimit -n 65535 && exec su $LOGNAME"
và bạn sẽ nhận được một lớp vỏ mới, không dùng root, nhưng với những giới hạn đó lên. exec
làm cho trình bao mới thay thế quy trình bằng các đặc quyền sudo
, vì vậy sau khi thoát khỏi trình bao đó, bạn sẽ không vô tình bị kết thúc lại thành root.
Câu hỏi về ** phần cứng và phần mềm tính toán chung ** không có chủ đề cho Stack Overflow trừ khi chúng liên quan trực tiếp đến các công cụ được sử dụng chủ yếu cho lập trình. Bạn có thể được trợ giúp về [Unix & Linux] (http://unix.stackexchange.com). –
Câu hỏi này hữu ích cho mongodb, đã thêm thẻ đó. – jcollum
Câu hỏi mới về unix: http://unix.stackexchange.com/questions/81843/sudo-ulimit-command-not-found –