FreeBSD 7.2-RELEASE не реагирует на лимиты в классах

Проблемы установки, настройки и работы Правильной Операционной Системы

Модератор: terminus

Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
M@}{
проходил мимо

FreeBSD 7.2-RELEASE не реагирует на лимиты в классах

Непрочитанное сообщение M@}{ » 2009-07-15 13:18:28

Добрый день!
Столкнулся с проблемой с классами описанные в login.conf
Создал класс для юзеров

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

30-user:\
        :cputime=30s:\
        :datasize=64M:\
        :stacksize=16M:\
        :memorylocked=16M:\
        :memoryuse=64M:\
        :vmemoryuse=64M:\
        :sbsize=infinity:\
        :filesize=unlimited:\
        :coredumpsize=0M:\
        :openfiles=32:\
        :maxproc=24:\
        :requirehome:\
        :umask=022:\
        :sessiontime=300s:\
        :ignoretime@:\
        :passwordtime@:\
        :refreshtime@:\
        :idletime=30m:\
        :umask=222:\
        :tc=default:
        :tc=b15-user:
перечитал login.conf, все вроде ОК, отрапортовало что добавлено столько то.
Собрал Apache22 c MPM-ITK
Создал виртуальный хост.
Запустил скрипт, в итоге в топ появился процесс от юзера которого мне надо было чтобы он стартонул.
Тот в свою очередь скушал все ядро, несмотря на то что в классе у него было прописано cputime=30s
Подумал мало ли, может быть с MPM-ITK лимиты из классов не работаю.
Попробовал от юзера запустить tar -cvjf фаил, и снова, юзер скушал весь процессор, и продолжил грузить процессор
Решил проверить, на umask=222, создал фаил, но упоминания о такой маске нет вообще

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

-rw-r--r--  1 test2  test2         40 Jul 15 09:43 test
Юзер состоит в данном классе 100%

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

test2:*:1003:1003:30-user:0:0:test2:/home/test2/data:/bin/sh
Я что-то упустил?

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
f_andrey
майор
Сообщения: 2651
Зарегистрирован: 2007-12-26 1:22:58
Откуда: СПб
Контактная информация:

Re: FreeBSD 7.2-RELEASE не реагирует на лимиты в классах

Непрочитанное сообщение f_andrey » 2009-07-15 13:28:29

Да вы упустили что жесткие лимиты, без специальных патчей не поддерживаются, если тема интересна погуглите, на этот счет исписаны тысячи килабайт текстов ;-)
Если ваша тема перенесена, то смотри http://forum.lissyara.su/viewtopic.php?f=1&t=32308


Гость
проходил мимо

Re: FreeBSD 7.2-RELEASE не реагирует на лимиты в классах

Непрочитанное сообщение Гость » 2009-07-15 13:39:01

f_andrey писал(а):Да вы упустили что жесткие лимиты, без специальных патчей не поддерживаются, если тема интересна погуглите, на этот счет исписаны тысячи килабайт текстов ;-)
Тогда на что вообще влияет cputime?

RoST
рядовой
Сообщения: 14
Зарегистрирован: 2008-03-27 10:07:29

Re: FreeBSD 7.2-RELEASE не реагирует на лимиты в классах

Непрочитанное сообщение RoST » 2009-07-15 14:12:56

:tc=default:\
:tc=b15-user:

Может так нужно? забыли \, а может оно и не на что не влияет :(

Гость
проходил мимо

Re: FreeBSD 7.2-RELEASE не реагирует на лимиты в классах

Непрочитанное сообщение Гость » 2009-07-15 18:20:36

Мдя, игрался с классами, в итоге после ребута перестал пускать юзера по ssh. Зашел локально, на мониторе ругань:
login_getclass: unknown class 'default'
и не пускает в систему. Зашел в сингл моде. Поставил \ как мне сделали замечания постом выше, пересобрал базу cap_mkdb /etc/login.conf, в ответ получил что-то невразумительное, и не обратил внимания, перегрузил, но всеравно тоже самое.
Снова в сингл моде открыл login.conf, сменил cputime-max=30s, перегрузил, тоже самое.
Снова в синг, решил удалить login.conf.db, но случайно удалил сам конфиг.
Плюнул, удалил базу, перегрузился, все загрузилось нормально.
Скопировал /usr/share/examples/etc/login.conf пошел править, пересобрал cap_mkdb /etc/login.conf, вроде все ок, сказал что

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

cap_mkdb: 9 capability records
, но заметил немного не так сделал, поправил, попытался пересобрать, получаю

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

cap_mkdb: potential reference loop detected

Аватара пользователя
ProFTP
подполковник
Сообщения: 3388
Зарегистрирован: 2008-04-13 1:50:04
Откуда: %&й
Контактная информация:

Re: FreeBSD 7.2-RELEASE не реагирует на лимиты в классах

Непрочитанное сообщение ProFTP » 2009-07-15 18:46:17

apache22 на эти лимиты забивает!!
fastcgi используешь?

так как suexec запускает скрипты (защищенно) от root все равно

lissyara, где-то пачти писал под apach20

у меня на FreeBSD 7.0 после cap_mkdb /etc/login.conf нихрена не работало вообще

вот на 7.1 работало, на 7.2 может глюк... релиз?
Pеrl FAQ
perl -e 'print join"",map $$_[rand@$_],([0..9,'a'..'z','A'..'Z'])x30'
ИзображениеИзображение

Гость
проходил мимо

Re: FreeBSD 7.2-RELEASE не реагирует на лимиты в классах

Непрочитанное сообщение Гость » 2009-07-15 18:54:07

Так вообще не понятно почему она перестала собирается, после того как удалил базу, она больше не собирается.
Я видел этот патч, но так и не понял для чего он, для того чтобы все-таки работали лимиту вообще? Или для FastCGI

Аватара пользователя
ProFTP
подполковник
Сообщения: 3388
Зарегистрирован: 2008-04-13 1:50:04
Откуда: %&й
Контактная информация:

Re: FreeBSD 7.2-RELEASE не реагирует на лимиты в классах

Непрочитанное сообщение ProFTP » 2009-07-15 18:59:15

гость, сформулироуй вопрос

чтобы suexec работал от mod_php нужно пачт ядра
на linux есть пачт suphp для апаче20, для фри нету

в mod_php все работает от www, какие там лимиты?
есть в fastcgi, пачт написать надо маленький
Pеrl FAQ
perl -e 'print join"",map $$_[rand@$_],([0..9,'a'..'z','A'..'Z'])x30'
ИзображениеИзображение

Гость
проходил мимо

Re: FreeBSD 7.2-RELEASE не реагирует на лимиты в классах

Непрочитанное сообщение Гость » 2009-07-15 19:03:42

Гость писал(а):Тогда на что вообще влияет cputime?
на TIME в top(1) и ps(1). Простой пример

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

$ limits -t 10s yes >/dev/null
load: 0.00  cmd: yes 33378 [running] 1.19r 1.17u 0.00s 11% 860k
load: 0.08  cmd: yes 33378 [running] 2.24r 2.22u 0.00s 19% 860k
load: 0.08  cmd: yes 33378 [running] 2.82r 2.80u 0.00s 23% 860k
load: 0.08  cmd: yes 33378 [running] 3.73r 3.70u 0.00s 29% 860k
load: 0.08  cmd: yes 33378 [runnable] 4.26r 4.23u 0.00s 34% 860k
load: 0.08  cmd: yes 33378 [running] 4.93r 4.90u 0.00s 37% 860k
load: 0.08  cmd: yes 33378 [running] 5.62r 5.60u 0.00s 44% 860k
load: 0.16  cmd: yes 33378 [running] 6.16r 6.13u 0.00s 45% 860k
load: 0.16  cmd: yes 33378 [runnable] 6.53r 6.50u 0.00s 49% 860k
load: 0.16  cmd: yes 33378 [runnable] 7.07r 7.04u 0.00s 49% 860k
load: 0.16  cmd: yes 33378 [runnable] 7.50r 7.48u 0.00s 53% 860k
load: 0.16  cmd: yes 33378 [running] 7.87r 7.84u 0.00s 52% 860k
load: 0.16  cmd: yes 33378 [running] 8.21r 8.18u 0.00s 55% 860k
load: 0.16  cmd: yes 33378 [runnable] 8.58r 8.55u 0.00s 59% 860k
load: 0.16  cmd: yes 33378 [runnable] 8.94r 8.91u 0.00s 57% 860k
load: 0.16  cmd: yes 33378 [runnable] 9.27r 9.24u 0.00s 60% 860k
load: 0.16  cmd: yes 33378 [runnable] 9.59r 9.55u 0.00s 63% 860k
load: 0.16  cmd: yes 33378 [runnable] 9.91r 9.87u 0.00s 61% 860k
load: 0.16  cmd: yes 33378 [runnable] 10.22r 10.18u 0.00s 64% 860k
load: 0.23  cmd: yes 33378 [running] 10.54r 10.50u 0.00s 67% 860k
load: 0.23  cmd: yes 33378 [runnable] 10.88r 10.83u 0.01s 64% 860k
zsh: killed     limits -t 10s yes > /dev/null
К процентам загруженности процессора это не имеет никакого отношения.

Гость
проходил мимо

Re: FreeBSD 7.2-RELEASE не реагирует на лимиты в классах

Непрочитанное сообщение Гость » 2009-07-15 20:43:22

ProFTP писал(а):гость, сформулироуй вопрос

чтобы suexec работал от mod_php нужно пачт ядра
на linux есть пачт suphp для апаче20, для фри нету

в mod_php все работает от www, какие там лимиты?
есть в fastcgi, пачт написать надо маленький
Ну на крайняк немного описать самого www можно, да и есть itk патч, правда не знаю теперь работает ли он с лимитами
А по поводу патчика, я не понял из той тебя для чего он, чтобы резать FastCGI?

M@}{
проходил мимо

Re: FreeBSD 7.2-RELEASE не реагирует на лимиты в классах

Непрочитанное сообщение M@}{ » 2009-07-15 20:46:47

Гость писал(а):
Гость писал(а):Тогда на что вообще влияет cputime?
на TIME в top(1) и ps(1). Простой пример

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

$ limits -t 10s yes >/dev/null
load: 0.00  cmd: yes 33378 [running] 1.19r 1.17u 0.00s 11% 860k
load: 0.08  cmd: yes 33378 [running] 2.24r 2.22u 0.00s 19% 860k
load: 0.08  cmd: yes 33378 [running] 2.82r 2.80u 0.00s 23% 860k
load: 0.08  cmd: yes 33378 [running] 3.73r 3.70u 0.00s 29% 860k
load: 0.08  cmd: yes 33378 [runnable] 4.26r 4.23u 0.00s 34% 860k
load: 0.08  cmd: yes 33378 [running] 4.93r 4.90u 0.00s 37% 860k
load: 0.08  cmd: yes 33378 [running] 5.62r 5.60u 0.00s 44% 860k
load: 0.16  cmd: yes 33378 [running] 6.16r 6.13u 0.00s 45% 860k
load: 0.16  cmd: yes 33378 [runnable] 6.53r 6.50u 0.00s 49% 860k
load: 0.16  cmd: yes 33378 [runnable] 7.07r 7.04u 0.00s 49% 860k
load: 0.16  cmd: yes 33378 [runnable] 7.50r 7.48u 0.00s 53% 860k
load: 0.16  cmd: yes 33378 [running] 7.87r 7.84u 0.00s 52% 860k
load: 0.16  cmd: yes 33378 [running] 8.21r 8.18u 0.00s 55% 860k
load: 0.16  cmd: yes 33378 [runnable] 8.58r 8.55u 0.00s 59% 860k
load: 0.16  cmd: yes 33378 [runnable] 8.94r 8.91u 0.00s 57% 860k
load: 0.16  cmd: yes 33378 [runnable] 9.27r 9.24u 0.00s 60% 860k
load: 0.16  cmd: yes 33378 [runnable] 9.59r 9.55u 0.00s 63% 860k
load: 0.16  cmd: yes 33378 [runnable] 9.91r 9.87u 0.00s 61% 860k
load: 0.16  cmd: yes 33378 [runnable] 10.22r 10.18u 0.00s 64% 860k
load: 0.23  cmd: yes 33378 [running] 10.54r 10.50u 0.00s 67% 860k
load: 0.23  cmd: yes 33378 [runnable] 10.88r 10.83u 0.01s 64% 860k
zsh: killed     limits -t 10s yes > /dev/null
К процентам загруженности процессора это не имеет никакого отношения.
Я не говорил что он должен высчитывать проценты, но что-то он же должен был делать по истечение этого времени(хотя реализовать лимиты методом прореживания времени, не мешало бы)

Аватара пользователя
ProFTP
подполковник
Сообщения: 3388
Зарегистрирован: 2008-04-13 1:50:04
Откуда: %&й
Контактная информация:

Re: FreeBSD 7.2-RELEASE не реагирует на лимиты в классах

Непрочитанное сообщение ProFTP » 2009-07-15 21:46:23

Гость писал(а): Ну на крайняк немного описать самого www можно, да и есть itk патч, правда не знаю теперь работает ли он с лимитами
А где написано что mpm-itk смотрит с /etc/login.conf? (в исходниках апача наверное надо посмотреть/подправить, но это долго)
Pеrl FAQ
perl -e 'print join"",map $$_[rand@$_],([0..9,'a'..'z','A'..'Z'])x30'
ИзображениеИзображение

Гость
проходил мимо

Re: FreeBSD 7.2-RELEASE не реагирует на лимиты в классах

Непрочитанное сообщение Гость » 2009-07-15 22:23:38

M@}{ писал(а):но что-то он же должен был делать по истечение этого времени(хотя реализовать лимиты методом прореживания времени, не мешало бы)
по достижению жесткого лимита процесс получает SIGKILL, мягкого - SIGXCPU. По дефолту лимит жесткий. Если хочешь мягкий, то используй `cputime-cur' вместо `cputime' (синоним `cputime-max').

M@}{
проходил мимо

Re: FreeBSD 7.2-RELEASE не реагирует на лимиты в классах

Непрочитанное сообщение M@}{ » 2009-07-16 8:07:05

Гость писал(а):
M@}{ писал(а):но что-то он же должен был делать по истечение этого времени(хотя реализовать лимиты методом прореживания времени, не мешало бы)
по достижению жесткого лимита процесс получает SIGKILL, мягкого - SIGXCPU. По дефолту лимит жесткий. Если хочешь мягкий, то используй `cputime-cur' вместо `cputime' (синоним `cputime-max').
Так и стояла cputime=30s, только он вообще не не реагирует на то, что прописано в классах, даже на umask=222
При этом сейчас перестала собирается база вообще, после ее удаления она больше не формируется, ее просто нет.

M@}{
проходил мимо

Re: FreeBSD 7.2-RELEASE не реагирует на лимиты в классах

Непрочитанное сообщение M@}{ » 2009-07-20 15:01:15

ProFTP писал(а):гость, сформулироуй вопрос

чтобы suexec работал от mod_php нужно пачт ядра
на linux есть пачт suphp для апаче20, для фри нету

в mod_php все работает от www, какие там лимиты?
есть в fastcgi, пачт написать надо маленький
Честно говоря так и не понял как его применять.
Понял только то. что он под 2.0. Достаточно будет кинуть его в files и там пропатчить стандартно, или что-то копировать нужно, какие-либо манипуляции с портом предпринимать?

И еще, кто может подсказать как восстановить базу login.conf.db

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35267
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Re: FreeBSD 7.2-RELEASE не реагирует на лимиты в классах

Непрочитанное сообщение Alex Keda » 2009-07-20 15:40:11

http://forum.lissyara.su/viewtopic.php? ... 25#p177058
===========

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

man cap_mkdb
========
а вообще - давайте попробую коё чего объяснить.
1. лимиты работают при заходе зверьком через ssh, например, при запуске кроном заданий - он него, при запуске пропатченным апачем.
2. лимиты не работают если вы делаете из рута .
почему - честно, не помню. года три-четыре назад разбирался и знал. щас уже не помню. помоему тупо не перечитывается login.conf
Убей их всех! Бог потом рассортирует...

Аватара пользователя
f_andrey
майор
Сообщения: 2651
Зарегистрирован: 2007-12-26 1:22:58
Откуда: СПб
Контактная информация:

Re: FreeBSD 7.2-RELEASE не реагирует на лимиты в классах

Непрочитанное сообщение f_andrey » 2009-07-20 15:54:13

lissyara писал(а):2. лимиты не работают если вы делаете из рута .
почему - честно, не помню. года три-четыре назад разбирался и знал. щас уже не помню. помоему тупо не перечитывается login.conf
Наверное потому что надо делать

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

su  -c class user
:oops:
Если ваша тема перенесена, то смотри http://forum.lissyara.su/viewtopic.php?f=1&t=32308

ProFTP_
проходил мимо

Re: FreeBSD 7.2-RELEASE не реагирует на лимиты в классах

Непрочитанное сообщение ProFTP_ » 2009-07-20 15:58:14

M@}{ писал(а): Честно говоря так и не понял как его применять.
Понял только то. что он под 2.0. Достаточно будет кинуть его в files и там пропатчить стандартно, или что-то копировать нужно, какие-либо манипуляции с портом предпринимать?

И еще, кто может подсказать как восстановить базу login.conf.db
если нужно под арач222, там можно просто поставить в FastCGI или в MPM-ITK, дальше написать демона, который каждую секунду будет снимать нагрузку, какой пользователь сколько жрет русурсов, дальше по какой зависимости определять какой юзер превышает свои лимиты и рубать его или просто закрыть сайт...

Гость
проходил мимо

Re: FreeBSD 7.2-RELEASE не реагирует на лимиты в классах

Непрочитанное сообщение Гость » 2009-07-20 16:11:23

Спасибо всем!!!
ProFTP_ писал(а):
M@}{ писал(а): Честно говоря так и не понял как его применять.
Понял только то. что он под 2.0. Достаточно будет кинуть его в files и там пропатчить стандартно, или что-то копировать нужно, какие-либо манипуляции с портом предпринимать?

И еще, кто может подсказать как восстановить базу login.conf.db
если нужно под арач222, там можно просто поставить в FastCGI или в MPM-ITK, дальше написать демона, который каждую секунду будет снимать нагрузку, какой пользователь сколько жрет русурсов, дальше по какой зависимости определять какой юзер превышает свои лимиты и рубать его или просто закрыть сайт...
Тоесть, не рубить юзерам ресурсы, а просто лочить? Ну тогда боюсь узер успеет завалить сервер, прежде чем его залочит.

Гость
проходил мимо

Re: FreeBSD 7.2-RELEASE не реагирует на лимиты в классах

Непрочитанное сообщение Гость » 2009-07-20 16:33:44

ну если процесс в данную секунды жрет много процессорного врмени, то прибить его, или удалить с конфига его виртуальхост или закруть доступ :)