참고한 것들
TL;DR
- 구체적인 설명은 나중에 하도록 하고, 그냥 간단하게 cgroup 으로
ls를 실행하는 방법에 대해 알아보자. - 우선
cgcreate로 cgroup 을 생성한다.- 여기서
memory,cpu는 memory 와 cpu 를 cgroup 으로 제한한다는 의미라고 생각하면 된다.- 하나만 제한하고자 한다면 그놈만 적어주면 된다.
- 그리고 이름은 아래 예제에서는
/mygroup이라고 했는데, 다른식으로 적어줘도 된다.- 즉,
mygroup처럼/를 빼도 되고 mygroup.slice처럼 뒤에.slice를 붙이기도 한다.
- 즉,
- 여기서
sudo cgcreate -g memory,cpu:/mygroup- 실행 후 아무것도 안뜨면 정상이다.
- 그리고
cgexec으로 프로세스 (즉,ls) 를 실행한다.
sudo cgexec -g memory,cpu:/mygroup ls /- 그럼 다음과 같이 나온다.

- 마지막으로 다음과 같이 생성한 cgroup 을 지운다.
sudo cgdelete -g memory,cpu:/mygroupcgexec sudo 없이 사용하기
- shellscript 등에서
cgexec을 sudo 없이 사용하는 경우가 있는데, 이때는 cgroup 을 생성할 때 이렇게 해주면 된다. - 일단
cgcreate에서-a와-toption 을 준다.
sudo cgcreate -t $USER:$USER -a $USER:$USER -g memory,cpu:/mygroup- 그럼 sudo 없이 cgexec 을 해도 잘 된다.
cgexec -g memory,cpu:/mygroup ls /