Задания Crontab не наследуют группы от crond, почему?Linux

Anonymous
Задания Crontab не наследуют группы от crond, почему?

Сообщение Anonymous »

Я пытаюсь изолировать процессор с помощью cpuset cgroup и установил для cpuset cgroup crond значение «изолированный», но задание crontab использует только корневую cgroup.
тестовая программа:

Код: Выделить всё

*/1 * * * * root cat /proc/self/cgroup >> /var/log/zctest
и результат такой:

Код: Выделить всё

10:hugetlb:/
9:perf_event:/
8:net_cgroup:/
7:cpuset,cpu,cpuacct:/
6:pids:/user.slice
5:devices:/user.slice
4:net_cls,net_prio:/
3:freezer:/
2:blkio:/user.slice
1:name=systemd:/user.slice/user-0.slice/session-598996.scope
группа crond:

Код: Выделить всё

#cat /proc/`pidof crond`/cgroup
11:memory:/isolate.slice/crond.service
10:hugetlb:/
9:perf_event:/
8:net_cgroup:/
7:cpuset,cpu,cpuacct:/isolate.slice/crond.service
6:pids:/isolate.slice
5:devices:/isolate.slice
4:net_cls,net_prio:/
3:freezer:/
2:blkio:/isolate.slice
1:name=systemd:/isolate.slice/crond.service
env:
cgroup v1, ядро ​​4.9, cronie-1.4.11
Я попытался выполнить gdb crond и обнаружил, что есть два разветвления при выполнении do_command, и сразу после первого разветвления cgroup просто наследует crond, но после этого cgroup переходит к новой. Теперь мне нужно найти системный вызов, который творит эту магию.

Подробнее здесь: https://stackoverflow.com/questions/787 ... -crond-why

Вернуться в «Linux»