Bagaimana saya bisa membatasi penggunaan RAM untuk pengguna atau proses tertentu?


8

Saya menggunakan layanan latar belakang yang bocor memori dari waktu ke waktu. Untuk mencegah penggunaan Alt+ SysRq REISUB[ 1 ], saya ingin membatasi penggunaan RAM untuk satu proses atau pengguna sistem.

Saya benar-benar ingin mengatakan: Pengguna x dapat menggunakan jumlah maksimum RAM 1 GB.

Apakah ini layak? Apakah saya memerlukan jenis mesin virtual untuk ini? Saya menggunakan Ubuntu 9,10.

Jawaban:


10

ulimit adalah temanmu Lihat bendera -m. Saya pikir Anda mengatur ini sebelum Anda memulai proses Anda dan itu berlaku sejak saat itu (dalam shell saat ini).


Terima kasih, petunjuk yang bagus! Seperti yang saya mengerti ulimit, itu membatasi semua memori pengguna / proses / konsumsi apa pun. Saya hanya ingin membatasi untuk satu pengguna / proses & subproses.
guerda

1
ulimit adalah perintah shell, dan hanya memengaruhi proses yang dimulai dari shell yang sama setelah ulimit dijalankan. Anda memulai proses dalam skrip shell dengan perintah ulimit untuk memengaruhi proses itu saja.
KeithB

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.