Saya ingin membatasi proses apa pun dari penggunaan lebih dari 500 MB RAM. AFAIK ini dilakukan dengan menggunakan RSS di /etc/security/limits.conf tetapi proses yang disebut gnome-panel ternyata menggunakan VmRSS 618436 kB. Bagaimana ini bisa terjadi?
/etc/security/limits.conf * hard rss 512000
username @ debian: ~ $ cat / proc / 3002 / status Nama: gnome-panel Negara: S (sedang tidur) Tgid: 3002 Pid: 3002 PPid: 2910 TracerPid: 0 Uid: 1000 1000 1000 1000 Gid: 1000 1000 1000 1000 FDSize: 64 Grup: 20 24 25 29 44 46 112 116 117 1000 1002 1003 VmPeak: 916636 kB VmSize: 916636 kB VmLck: 0 kB VmHWM: 618436 kB VmRSS: 618436 kB VmData: 601972 kB VmStk: 104 kB VmExe: 516 kB VmLib: 29232 kB VmPTE: 1760 kB Thread: 1 SigQ: 0/14001 SigPnd: 000000000000000000 ShdPnd: 000000000000000000 SigBlk: 000000000000000000 SigIgn: 0000000020001000 SigCgt: 0000000180000000 CapInh: 0000000000000000 CapPrm: 000000000000000000 CapEff: 0000000000000000 CapBnd: ffffffffffffffff Cpus_allowed: 3 Cpus_allowed_list: 0-1 Mems_allowed: 00000000,00000001 Mems_allowed_list: 0 voluntary_ctxt_switches: 871965 nonvoluntary_ctxt_switches: 47553 PaX: PeMRs
username @ debian: ~ $ cat / proc / 3002 / limit Limit Soft Limit Hard Limit Unit Maks cpu waktu tak terbatas detik tak terbatas Ukuran file maks. Byte tanpa batas tak terbatas Ukuran data maks. Byte tak terbatas tak terbatas Ukuran tumpukan maksimum 8388608 byte tak terbatas Ukuran file inti maksimum 0 0 byte Penduduk maksimum mengatur 524288000 524288000 byte Max memproses 100 100 proses Maks membuka file 1024 1024 file Memori maks terkunci 65536 65536 byte Ruang alamat maks. Byte tak terbatas tak terbatas File maks mengunci kunci tak terbatas tak terbatas Maks. Sinyal tertunda 14001 sinyal 14001 Ukuran pesan maksimum 819200 819200 byte Maks prioritas bagus 0 0 Prioritas realtime maks. 0 0 Batas waktu realtime maksimum tidak terbatas, tanpa batas
as
(batas ruang alamat) harus melakukan trik, seperti yang dijelaskan @cib. Atur seperti yang Anda inginkanrss
.Saya tidak tahu cara untuk membatasi ini berdasarkan per proses, tetapi Anda dapat membatasi ukuran total RSS (dan lainnya) dari sekelompok proses dengan pengontrol sumber daya memori .
sumber
Batas RSS dalam limit.conf tidak akan berfungsi di kernel> 2.4.30.
Anda harus menggunakan Cgroup
sumber