Show Table of Contents
2.8. 프로세스를 컨트롤 그룹으로 옮기기
cgclassify 명령을 실행하여 프로세스를 cgroup으로 옮길 수 있습니다:
~]# cgclassify -g cpu,memory:group1 1701cgclassify의 구문은 cgclassify -g subsystems:path_to_cgroup pidlist입니다. 여기서:
- subsystems은 콤마로 구분된 서브시스템 목록이거나 또는 사용 가능한 모든 서브시스템과 연결된 계층에 있는 프로세스를 시작하는
*입니다. 동일한 이름의 cgroup이 여러 계층에 존재할 경우,-g옵션을 지정하면 각 그룹에 프로세스가 생성되는 점에 유의하십시오. 여기서 지정된 서브시스템의 각 계층에 cgroup이 있는지 확인합니다. - path_to_cgroup은 계층 구조내에서 cgroup으로의 경로입니다.
- pidlist는 프로세스 식별자 (process identifier) (PID)의 공백으로 구분된 목록입니다.
--sticky 옵션을 pid 앞에 추가하여 모든 자식 프로세스를 동일한 cgroup에 속하게 할 수 있습니다. 이 옵션을 설정하지 않고 cgred 데몬이 실행 중인 경우, 자식 프로세스는 /etc/cgrules.conf에 있는 설정에 따라 cgroup을 할당하게 됩니다. 하지만, 프로세스 자체는 시작한 cgroup에 남아있게 됩니다.
cgclassify를 사용하면 동시에 여러 프로세스를 옮길 수 있습니다. 예를 들어, 이 명령은 PID가 1701 및 1138인 프로세스를 cgroup group1/로 옮깁니다:
~]# cgclassify -g cpu,memory:group1 1701 1138
옮겨야 할 PID가 공백으로 구분되어 있으며 지정된 그룹은 다른 계층에 있어야 함에 유의하십시오.
다른 방법
프로세스를 cgroup으로 옮기기 위해서는 PID를 cgroup의
tasks 파일에 기록합니다. 예를 들어, PID 1701로 프로세스를 /cgroup/lab1/group1/에 있는 cgroup으로 옮기려면 다음을 실행합니다:
~]# echo 1701 > /cgroup/lab1/group1/tasks2.8.1. cgred 데몬
Cgred는
/etc/cgrules.conf 파일에 설정된 매개변수에 따라 작업을 cgroup으로 옮기는 데몬입니다. /etc/cgrules.conf 파일의 항목은 다음 두 형태중 하나입니다:
- user hierarchies control_group
- user:command hierarchies control_group
예를 들어:
maria devices /usergroup/staff
이 항목은
maria라는 사용자의 프로세스를 /usergroup/staff cgroup에 지정된 매개 변수에 따라 devices 서브시스템을 액세스하도록 지정합니다. 특정 명령을 특정 cgroup에 연결시키려면, 다음과 같이 command 매개 변수를 추가합니다:
maria:ftp devices /usergroup/staff/ftp
이 항목은
maria라는 사용자가 ftp 명령을 사용할 때는 devices 서브시스템이 들어있는 계층의 /usergroup/staff/ftp cgroup에 프로세스가 자동으로 이동하도록 지정합니다. 하지만 이 데몬은 해당 조건이 충족될 경우에만 프로세스를 cgroup로 이동한다는 점에 유의하십시오. 따라서 ftp 프로세스가 잘못된 그룹에서 짧은 시간 동안 실행될 수 있습니다. 또한 프로세스가 잘못된 그룹에 있는 동안 자식 프로세스가 발생한 경우, 이는 이동되지 않을 수 있습니다.
/etc/cgrules.conf 파일에 있는 항목에 다음과 같은 표기법을 추가할 수 있습니다:
@문자가 사용자의 앞에 있으면, 개별 사용자가 아니라 그룹을 의미합니다. 예를 들어@admins은admins그룹내에 있는 모든 사용자를 의미합니다.*는 "전부"을 의미합니다. 예를 들어subsystem필드 안의*는 모든 서브시스템을 의미합니다.%는 한줄 위의 항목과 동일한 항목을 의미합니다. 예를 들어서:@adminstaff devices /admingroup @labstaff % %

Where did the comment section go?
Red Hat's documentation publication system recently went through an upgrade to enable speedier, more mobile-friendly content. We decided to re-evaluate our commenting platform to ensure that it meets your expectations and serves as an optimal feedback mechanism. During this redesign, we invite your input on providing feedback on Red Hat documentation via the discussion platform.