2.7. Definindo Parâmetros
Defina os parâmetros de subsistemas rodando o comando
cgset
de uma conta de usuário com permissão para modificar o cgroup relevante. Por exemplo, se o /cgroup/cpuset/group1
existe, especifique os CPUs aos quais este grupo tem acesso com o seguinte comando:
cpuset]# cgset -r cpuset.cpus=0-1 group1
A sintaxe para
cgset
é: cgset -r
parameter=value path_to_cgroup
, onde:
- parameter é o parâmetro a ser definido, que corresponde ao arquivo no diretório ao cgroup dado.
- value é o valor para o parâmetro
- O path_to_cgroup é o caminho para o cgroup relativo ao root da hierarquia. Por exemplo, para definir o parâmetro ao grupo root (se o
/cgroup/cpuacct/
existe), execute:cpuacct]#
cgset -r cpuacct.usage=0 /
Alternativamente, por causa que o.
é relativo ao grupo root (que é, o próprio grupo root) você pode também executar:cpuacct]#
cgset -r cpuacct.usage=0 .
Note, entretanto que a/
é a sintaxe preferida.Nota
Somente um número pequeno de parâmetros podem ser definidos para o grupo root (tal como o parâmetrocpuacct.usage
mostrado nos exemplos acima). Isto é porque um grupo root possui propriedade sobre todos os recursos existentes, portanto, não faria sentido limitar todos os processos existentes definindo certos parâmetros, por exemplo o parâmetrocpuset.cpu
.Para definir o parâmetro dogroup1
, que é um subgroup de grupo root, execute:cpuacct]#
cgset -r cpuacct.usage=0 group1
A barra no final do nome do grupo (por exemplocpuacct.usage=0 group1/
) é opcional.
Os valores que você pode definir com o
cgset
pode depender de valores maiores ajustados em uma determinada hierarquia. Por exemplo, se o group1
é limitado para usar somente o CPU 0 em um sistema, você não pode definir o group1/subgroup1
para usar os CPUs 0 e 1 ou usar somente o CPU 1.
Você também pode usar o
cgset
para copiar os parâmetros de um cgroup para outro cgroup existente. Por exemplo:
~]# cgset --copy-from group1/ group2/
A sintaxe para copiar um parâmetro com o
cgset
é: cgset --copy-from
path_to_source_cgroup path_to_target_cgroup
, onde:
- path_to_source_cgroup é o caminho ao cgroup cujos parâmetros devem ser copiados, relativos ao grupo root da hierarquia.
- path_to_target_cgroup é o caminho ao cgroup de destino, relativo ao grupo root da hierarquia
Certifique-se que quaisquer parâmetros obrigatórios para os vários subsistemas são definidos antes de você copiar os parâmetros de um grupo ao outro ou o comando falhará. Para mais informações sobre parâmetros obrigatórios, consulte: Importante - Parâmetros obrigatórios .
Método alternativo
Para definir os parâmetros diretamente em um cgroup, insira os valores ao subsistema de pseudo-file relevante usando o comando
echo
. Por exemplo, este comando insere o valor 0-1
ao pseudofile cpuset.cpus
do cgroup group1
:
~]# echo 0-1 > /cgroup/cpuset/group1/cpuset.cpus
Com este valor, as tarefas neste cgroup são restringidas à CPUs 0 e 1 no sistema: