Red Hat Training
A Red Hat training course is available for Red Hat Enterprise Linux
2.7. 매개변수 설정하기
해당 cgroup을 수정하기 위해 권한을 갖는 사용자 계정에서
cgset
명령을 실행하여 서브시스템 매개 변수를 설정합니다. 예를 들어, /cgroup/cpuset/group1
이 존재하는 경우 다음과 같은 명령으로 그룹에 액세스할 수 있는 CPU를 지정합니다:
cpuset]# cgset -r cpuset.cpus=0-1 group1
cgset
의 구문은 cgset -r
parameter=value path_to_cgroup
입니다. 여기서:
- parameter는 설정해야 할 매개 변수로 특정 group의 디렉토리에 있는 파일에 해당합니다.
- 값은 매개변수에 지정할 값입니다
- path_to_cgroup는 계층의 root에 관련된 cgroup으로의 경로입니다. 예를 들어, root 그룹의 매개 변수를 설정하려면 (
/cgroup/cpuacct/
가 존재하는 경우) 다음 명령을 실행합니다:cpuacct]#
cgset -r cpuacct.usage=0 /
또한.
은 root 그룹과 관련되어 있기 때문에 (즉, root 그룹 자체이므로) 다음 명령을 실행할 수 있습니다:cpuacct]#
cgset -r cpuacct.usage=0 .
하지만/
는 권장 구문이라는 점에 유의하십시오.참고
root 그룹에 소수의 매개 변수 만을 설정할 수 있습니다 (예: 위의 예제에서cpuacct.usage
매개 변수 등). root 그룹이 기존의 모든 자원을 소유하기 때문입니다. 따라서cpuset.cpu
매개 변수와 같은 특정 매개 변수를 정의하여 모든 기존 프로세스를 제한하는 것은 의미가 없습니다.root 그룹의 하위 그룹인group1
의 매개 변수를 설정하려면 다음 명령을 실행합니다:cpuacct]#
cgset -r cpuacct.usage=0 group1
그룹 이름의 끝에 있는 슬래시 (예:cpuacct.usage=0 group1/
)는 옵션입니다.
cgset
으로 설정할 수 있는 값은 특정 계층의 상위 계층에 설정된 값에 따라 달라집니다. 예를 들어, group1
이 시스템에서 CPU 0만 사용하도록 제한된 경우, CPUs 0과 1 또는 CPU 1 만을 사용하도록 group1/subgroup1
을 설정할 수 없습니다.
cgset
을 사용하여 서로 다른 cgroup 간의 매개 변수를 복사할 수 있습니다. 예:
~]# cgset --copy-from group1/ group2/
cgset
으로 매개 변수를 복사하기 위한 구문은 다음과 같습니다: cgset --copy-from
path_to_source_cgroup path_to_target_cgroup
여기서:
- path_to_source_cgroup은 매개 변수가 복사된 계층의 root 그룹과 관련된 cgroup으로의 경로입니다.
- path_to_target_cgroup은 계층의 root 그룹과 관련하여 대상 cgroup으로의 경로입니다.
한 그룹에서 다른 그룹으로 매개 변수를 복사하기 전 다양한 서브시스템의 필수 매개 변수가 설정되어 있는지 확인합니다. 필수 매개 변수가 설정되지 않은 경우 명령은 실패하게 됩니다. 필수 매개 변수에 대한 자세한 내용은 중요 — 필수 매개 변수 에서 참조하십시오.
다른 방법
cgroup에서 매개 변수를 설정하려면
echo
명령을 사용하여 관련 서브시스템 가상 파일로 값을 추가합니다. 예를 들어, 다음 명령은 0-1
값을 cgroup group1
의 cpuset.cpus
가상 파일에 추가합니다:
~]# echo 0-1 > /cgroup/cpuset/group1/cpuset.cpus
이 값이 지정되면 cgroup 내의 작업은 시스템의 CPU 0와 1에서만 수행되도록 제한됩니다.