โอ้ แต่กลุ่ม cg นั้นง่ายมาก :) ติดตั้งแพ็คเกจ libcgroup สร้าง /etc/cgconfig.conf:
mount {
cpu = /cgroup/cpu_and_mem;
cpuacct = /cgroup/cpu_and_mem;
memory = /cgroup/cpu_and_mem;
}
group sshd {
cpu {
cpu.shares="500";
}
cpuacct {
cpuacct.usage="0";
}
memory {
memory.limit_in_bytes="1G";
}
}
group nosshd {
cpu {
cpu.shares="500";
}
cpuacct {
cpuacct.usage="0";
}
memory {
memory.limit_in_bytes="1G";
}
}
เริ่มcgconfig
กระบวนการที่จะสร้างลำดับชั้นกลุ่ม cg และตั้งค่าขีด จำกัด หากประสบความสำเร็จคุณมีสองกลุ่ม cg ซึ่งทั้งคู่มี 50% ของ CPU ที่กำหนดและ 1G ของหน่วยความจำที่มีอยู่ (ไม่ทราบว่าจำนวนหน่วยความจำที่แท้จริงของคุณคือ; สมมติว่าเป็น 2G ในตัวอย่างนี้) ตอนนี้คุณเพียงแค่ต้องย้ายงานทั้งหมด (เช่นกระบวนการทั้งหมดที่ทำงานบนระบบ) จากกลุ่มรากไปยังกลุ่ม nosshd:
cgroup]# cat tasks >> nosshd/tasks
cgroup]# echo > tasks
จากนั้นคุณเพียงแค่ต้องได้รับ PID ของsshd
กระบวนการและย้ายข้อมูลไฟล์ sshd task:
cgroup]# echo $PID >> sshd/tasks
Ta-da คุณทำเสร็จแล้ว ตอนนี้คุณสามารถมั่นใจได้ว่า sshd จะมี CPU 50% และหน่วยความจำ 1G เสมอ