Intereting Posts
mac terminal – как сделать каталог требует SUDO-доступа, чтобы удалить его? Проблема с получением файла tar.gz для рекомбинации и извлечения. Недействительный архив .gz При попытке открыть приложение через пересылку X11 через SSH, почему локальный экземпляр открытия приложения? Невозможно смонтировать общий ресурс nfs из netapp в centos 7 Как использовать команду find в Perl-скрипте? Создание AP на малине pi Это MAC или DAC vsftpd – ftp пользователь не может создавать папки Установите минимальную ширину системы xfce4, по умолчанию Перенести систему Fedora на другой компьютер Неверная роль и тип при входе в систему Эмуляция терминала VT100 для использования с 8-разрядным компьютерным эмулятором на базе Java Centos 7, я думал, что «yum install ___» тоже должен был получить все зависимости? Где хранятся токены AFS и как их заставить запускать сеанс экрана Логика по пути двоичной установки Postgres на Debian

Ограничение пользователей с помощью неработающих групп (для меня)

Я зарегистрировался, потому что мне не удалось управлять группами с несколькими учебниками / комментариями / тем, что вы найдете в Google. Я хочу ограничить количество ram, которое пользователь может использовать. Интернет говорит «cgroups». На моем сервере тестирования работает Ubuntu 14.04. Вы можете разделить упомянутые учебники на две категории. Непосредственно устанавливайте лимиты с использованием эха и используйте конкретную конфигурацию. Ни для меня не работает.

Установка пределов с использованием эха

cgcreate -g cpu,cpuacct,...:/my_group 

заканчивается без каких-либо уведомлений. Когда я пытаюсь запустить

 echo 100M > memory.limit_in_bytes 

он просто говорит «не разрешено» даже при использовании sudo. Я даже не дотягиваю до предела, ограничивая другого пользователя.

Установка ограничений с помощью конфигурации

Я читал о двух файлах конфигурации. Итак, вот мои файлы конфигурации:

cgconfig.conf

 mount { memory = /cgroup/memory; } group limit_grp { memory { memory.limit_in_bytes=100M; memory.memsw.limit_in_bytes=125M; } } 

cgrules.conf

 testuser memory limit_grp 

Когда я бегу

 cgconfigparser -l /etc/cgconfig.conf 

он монтируется в systemd. Теперь я вхожу в систему с testuser, запускаю интенсивную задачу памяти – и она работает, не заботясь о моем лимите.

Я попытался перезагрузить, ничего не изменилось. Даже некоторые странные попытки с использованием конфигурации ядра не работали. Я новичок в группах и не ожидал, что это будет сложно. Я был бы признателен за любые предложения по моей теме. Заранее спасибо!

Причина, по которой вы видите это поведение, вероятно, связана с тем, что ваш сеанс входа в систему уже имеет связанную с ним группу ограничений памяти, и процесс наследует это, в соответствии с конфигурацией systemd.

Проверьте свою текущую группу процессов с помощью:

 cat /proc/pid/cgroup 

… и вы можете увидеть что-то вроде:

 13:name=systemd:/user/0.user/2.session 12:debug:/ 11:pids:/ 10:net_prio:/user/0.user/2.session 9:perf_event:/user/0.user/2.session 8:net_cls:/user/0.user/2.session 7:freezer:/user/0.user/2.session 6:devices:/user/0.user/2.session 5:memory:/user/0.user/2.session 4:blkio:/user/0.user/2.session 3:cpuacct:/user/0.user/2.session 2:cpu:/ 1:cpuset:/ 

Предполагая, что вы не хотите этого поведения, вы можете использовать свою настраиваемую группу с контроллером памяти, редактируя /etc/systemd/logind.conf и удаляя memory из строки Controllers .