1.1, o_o (?), 20:13, 17/11/2010 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
mount -t cgroup cgroup /dev/cgroup/cpu -o cpu
mount: неизвестный тип файловой системы 'cgroup'
| |
|
2.4, asddas (?), 01:44, 18/11/2010 [^] [^^] [^^^] [ответить]
| +/– |
дает всем право переводить процессы между группами, на каждую сессию шела создает новую группу.
| |
|
3.11, pavlinux (ok), 16:42, 18/11/2010 [^] [^^] [^^^] [ответить]
| +/– |
> на каждую сессию шела создает новую группу.
Фигу! На каждый процесс с форками из шелла создаёт новую группу.
То есть процесс и его форки будут в одной группе, а fork + exec уже в другой.
| |
3.12, User294 (ok), 18:19, 18/11/2010 [^] [^^] [^^^] [ответить]
| –2 +/– |
> дает всем право переводить процессы между группами,
Мне кажется или это не прикольно, когда кто угодно может контейнеры перефигаривать?!
| |
|
4.17, pavlinux (ok), 05:34, 19/11/2010 [^] [^^] [^^^] [ответить]
| +/– |
Дык, Торвальдц тому товрищу так и написал, что мол vulnerable кастылек твой парниша!!!
| |
|
|
|
1.5, Аноним (-), 03:03, 18/11/2010 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Есть такая вещь, как libcg. Она умеет это делать без ручных манипуляций...
| |
1.6, Аноним (-), 03:30, 18/11/2010 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
В Fedora есть пакет libcgroup со скриптами в /etc/init.d, которые делают что-то похожее.
только непонятно нужно ли ещё добавлять что-то в ~/.bashrc или достаточно скриптов из libcgroup?
| |
|
2.7, anonymous (??), 09:06, 18/11/2010 [^] [^^] [^^^] [ответить]
| +/– |
> В Fedora есть пакет libcgroup со скриптами в /etc/init.d, которые делают что-то
> похожее.
Насколько я сужу по моей ф14 то тама это по дефаульту выключено и вообще вроде это вся борода тама для lxc ... ( который юзается через libvirtd, жаль что еще virt-manager до поддержки lxc не допилили :) ( тама это токо в роадмапе) )
| |
|
|
2.10, Crazy Alex (??), 16:35, 18/11/2010 [^] [^^] [^^^] [ответить]
| +/– |
Да. Но идея, думаю, понятна, расширить не проблема. В частности - добавить соответствующие строки во врапперы для "тяжелого" софта. А так - говорят, в systemd будет позитрее механику управления группами.
| |
|
1.9, Crazy Alex (??), 16:33, 18/11/2010 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Надо еще пару действий добавить для автоматического удаления групп, в которых больше нет процессов:
создать /usr/local/sbin/cgroup_clean
--cut--
#!/bin/sh
rmdir /dev/cgroup/$1
--cut--
в rc.local добавить:
--cut--
echo "1" > /dev/cgroup/cpu/user/notify_on_release
echo "/usr/local/sbin/cgroup_clean" > /dev/cgroup/cpu/release_agent
--cut--
| |
|
2.13, Crazy Alex (??), 18:47, 18/11/2010 [^] [^^] [^^^] [ответить]
| +/– |
Ошибся (у меня расположение другое). Если монтируется в /dev/cgroup/cpu, то в /usr/local/sbin/cgroup_clean, соответственно, и кладём
rmdir /dev/cgroup/cpu/$1
| |
|
|
2.15, Logo (ok), 02:01, 19/11/2010 [^] [^^] [^^^] [ответить]
| +/– |
Да.
На Федоре 14 make -j40, Файрфокс работает гладко, окна двигаются с незначительными застряганиями, даже не верится, что процессор на 80-100% два ядра загружены.
Но! Без нагрузки заметны застрягания при работе с окнами в KDE-4. Иногда система не отзывается до 20 секунд. При перемещении окон, при скроле в консолях наблюдаются рывки, что вызывает дискомфорт.
-------------
На SUSE сказало, что неизвестная файловая система cgroup (перекомпилировать ядро не стал). Ну и естественно make -j40 полностью парализовал работу.
| |
|
3.18, vvvua (ok), 09:50, 19/11/2010 [^] [^^] [^^^] [ответить]
| +/– |
А если попробовать консольке из которой будут зваться "тяжелые" процессы nice поднять?
| |
|
4.19, Logo (ok), 11:55, 19/11/2010 [^] [^^] [^^^] [ответить]
| +/– |
При чем тут nice, я попробовал данный метод и ответил, ниже написал поправку и все.
| |
|
5.21, vvvua (ok), 19:08, 19/11/2010 [^] [^^] [^^^] [ответить]
| +/– |
> При чем тут nice, я попробовал данный метод и ответил, ниже написал
> поправку и все.
Мне интересно поведение Вашей системы в том же тесте в сравнении с nice, так как сам не пробовал. Ничего другого своим вопросом не хотел сказать.
| |
|
6.24, Logo (ok), 22:12, 19/11/2010 [^] [^^] [^^^] [ответить]
| +/– |
Ну вот: собираем inkscape-0.48.0
Включаем cgroup
# make -j40
Все красиво ютубе без рывков и застряганий, файрфокс при скролинге немного равками идет. Время сборки 7 минут, около 10 секунд отнесем на "люфт".
Отключаем cgroup
# make clean
# reboot
# nice --adjustment=19 make -j40
Сиcтема ведет себя, так, как будто вовсе никакой компиляции нет.
Время сборки 6 минут и пару секунд.
Пусть даже была погрешность в 1 минуту, то и тогда, помойму, нет смысла в cgroup.
# uname -sro
> Linux 2.6.35.6-48.fc14.x86_64 GNU/Linux | |
|
7.36, vvvua (ok), 09:47, 20/11/2010 [^] [^^] [^^^] [ответить]
| +/– |
Спасибо. Вы подтвердили моё предположение, что cgroup один из многих элементов влияния на шедулер Linux'а для небольшого количества пользователей, которым влом (или пока не умеют) использовать nice и подобное.
Имеет смысл включать cgroup в предустановленных системах. Например в нетбуках.
| |
|
|
|
|
|
|
5.28, Roman (??), 00:37, 20/11/2010 [^] [^^] [^^^] [ответить]
| +/– |
> OpenSUSE 11.3
> 2.6.34.7-0.5-desktop
блин, а я ее себе на новую машину поставил ((
| |
|
6.29, Logo (ok), 00:48, 20/11/2010 [^] [^^] [^^^] [ответить]
| +/– |
>> OpenSUSE 11.3
>> 2.6.34.7-0.5-desktop
> блин, а я ее себе на новую машину поставил ((
Ну и что? Система хорошая, практически все работает. А за ядром не угнаться, либо сам пересобирай.
| |
|
7.45, stranger (??), 14:15, 24/11/2010 [^] [^^] [^^^] [ответить]
| +/– |
Десктопное ядро там без cgroups. Если оно вам надо ставьте ядро -default.
| |
|
|
|
|
|
|
1.16, Logo (ok), 03:37, 19/11/2010 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
*** Монтировать нужно в /sys/fs/cgroup ***
*** Это избавит от застряганий и рывков ***
в rc.local пишем:
mount -t cgroup cgroup /sys/fs/cgroup -o cpu
mkdir -m 0777 /sys/fs/cgroup/user
echo "1" > /sys/fs/cgroup/user/notify_on_release
echo "/usr/local/sbin/cgroup_clean" > /sys/fs/cgroup/release_agent
---------------------
в ~/bashrc пишем:
if [ "$PS1" ] ; then
mkdir -m 0700 /sys/fs/cgroup/user/$$
echo $$ > /sys/fs/cgroup/user/$$/tasks
fi
---------------------
в /usr/local/sbin/cgroup_clean пишем:
#!/bin/sh
rmdir /sys/fs/cgroup/$1
----------------------
Работает без проблем. При монтировании в /dev/ у меня на Fedora 14, после интенсивной нагрузки система дергалась, а при монтировании в /sys/fs/ все OK!
| |
|
2.20, Stax (ok), 15:59, 19/11/2010 [^] [^^] [^^^] [ответить]
| +/– |
Возможно.. На самом деле, рекомендацию монтировать в /dev/cgroup я взял из документации ядра (Documentation/cgroups/cgroups.txt), там показано использование именно /dev/cgroup. Но с sys вполне работает.
| |
|
3.23, pavlinux (ok), 21:58, 19/11/2010 [^] [^^] [^^^] [ответить]
| +/– |
Да это пофигу куда монтировать. Это ж VFS.
Хотя, самым оптимальным будет каталог в корне, из одной буквы,
то есть mount -t cgroup cgroup /a -o cpu.
Угадайте почему? :)
| |
|
4.25, Logo (ok), 22:17, 19/11/2010 [^] [^^] [^^^] [ответить]
| +/– |
> Да это пофигу куда монтировать. Это ж VFS.
> Хотя, самым оптимальным будет каталог в корне, из одной буквы,
> то есть mount -t cgroup cgroup /a -o cpu.
> Угадайте почему? :)
Возможно, пока в эту суть не вникал.
| |
|
5.30, pavlinux (ok), 01:21, 20/11/2010 [^] [^^] [^^^] [ответить]
| +/– |
>> Да это пофигу куда монтировать. Это ж VFS.
>> Хотя, самым оптимальным будет каталог в корне, из одной буквы,
>> то есть mount -t cgroup cgroup /a -o cpu.
>> Угадайте почему? :)
> Возможно, пока в эту суть не вникал.
строка для open и подобных короче :)
open("/a", ....) или
open("/dev/cgroup/cpu/user/", ....)
нанасекунды решают всё :)
| |
|
6.32, Logo (ok), 02:02, 20/11/2010 [^] [^^] [^^^] [ответить]
| +/– |
>>> Да это пофигу куда монтировать. Это ж VFS.
>>> Хотя, самым оптимальным будет каталог в корне, из одной буквы,
>>> то есть mount -t cgroup cgroup /a -o cpu.
>>> Угадайте почему? :)
>> Возможно, пока в эту суть не вникал.
> строка для open и подобных короче :)
> open("/a", ....) или
> open("/dev/cgroup/cpu/user/", ....)
> нанасекунды решают всё :)
Заинтриговал. Сейчас попробую :)
| |
|
7.33, Logo (ok), 02:58, 20/11/2010 [^] [^^] [^^^] [ответить]
| +/– |
Смонтировал в /0/u
Собираю inkscape
Вроде немного плавнее скролинг в файрфоксе.
Время сборки 00:08:46 :(
| |
|
|
9.35, Logo (ok), 03:27, 20/11/2010 [^] [^^] [^^^] [ответить] | +/– | Зато без прибамбасов make -j40 --- 00 06 26 и никакого кино c nice --adjustmen... текст свёрнут, показать | |
|
|
|
|
|
|
|
2.37, mevlad (?), 21:11, 20/11/2010 [^] [^^] [^^^] [ответить]
| +/– |
м. б. как-то так:
# yum -y install libcgroup libcgroup-pam
#echo "vlad cpu users/vlad/" >> /etc/cgrules.conf
# cat >> /etc/cgconfig.conf << EOF
group users/vlad {
perm {
task {
uid = vlad;
gid = vlad;
}
admin {
uid = root;
gid = vlad;
}
}
cpu {
cpu.shares = 2048;
notify_on_release =1;
}
}
EOF
# echo "session optional pam_cgroup.so" >> /etc/pam.d/su
# chkconfig cgconfig on
# chkconfig cgred on
# service cgconfig start
# servive cgreg start
| |
|
3.39, zillah (?), 09:01, 22/11/2010 [^] [^^] [^^^] [ответить]
| +/– |
> # echo "session optional pam_cgroup.so" >> /etc/pam.d/su
почему в su?
| |
|
|
5.41, zillah (?), 06:17, 23/11/2010 [^] [^^] [^^^] [ответить]
| +/– |
> в смысле?
А тупо, каким образом модуль в su поможет пользователю?
Оно не грузится при логоне, открытии новой сессии...
Или я что-то не допонял, хотелось бы допонять, так как этот вариант мне больше импонирует нежели чем "ручной".
| |
|
6.42, mevlad (?), 21:09, 23/11/2010 [^] [^^] [^^^] [ответить]
| +/– |
это был пример использования pam-модуля.
в данном случаи идея в том, чтобы использовать те же правила для пользователя, если он выполняет нечто через su
| |
|
7.44, zillah (?), 06:27, 24/11/2010 [^] [^^] [^^^] [ответить]
| +/– |
> это был пример использования pam-модуля.
> в данном случаи идея в том, чтобы использовать те же правила для
> пользователя, если он выполняет нечто через su
Ну я думал предполагалась альтернатива шапке, кстати у меня оно как то не заработало, разбираться не стал, из шапки работает как нужно.
До кучи нарылась проблема, толи wine толи NV libGL к такому оказались не готовы... эххх.
| |
|
|
|
|
3.47, Pavel (??), 00:09, 27/12/2010 [^] [^^] [^^^] [ответить]
| +/– |
У меня также получилось, но вот вопрос: как работает cpu.shares = 512 ?, я запустил от пользователя burnMMX - но всеравно в top я вижу что 99% процессора использует burnMMX.
Как лимитировать процессор?
| |
|
|
|