Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

MyDC.ru _ PtokaX под *nix _ Запуск Ptokax от другого пользователя

Автор: roflDDDD 22.1.2012, 20:35

Особо не шарю в линуксе, стоит Ubuntu.
Нужно создать пользователя для Ptokax, от которого и будет запускаться хаб, так чтобы у этого пользователя небыло никаких прав "лазить" выше своей домашней директории. В общем, чтобы хаб не создавал лишних файлов за пределами домашней директории (в которой он лежит. скриптами и т.д.)..
сори если криво обьяснил

Автор: mariner 22.1.2012, 23:45

Запускай в chroot. Как это делается - знают в гугле

Еще советую поставить патч от http://mydc.ru/r/?http://dchublist.ru/static/files/ptokax-0.4.1.2-change-user-and-caps.patch

Автор: roflDDDD 16.3.2012, 20:27

Цитата(mariner @ 23.1.2012, 0:45) *
Запускай в chroot. Как это делается - знают в гугле

Еще советую поставить патч от http://mydc.ru/r/?http://dchublist.ru/static/files/ptokax-0.4.1.2-change-user-and-caps.patch

Что это за патч? Что именно он патчит?

А chroot Запустить не получилось, ошибки такого рода:
chroot: cannot run command `ptokax: No such file or directory
не знаю уже какой путь указывать, пробовал по разному..
chroot /home/user/ptokax/ ptokax или как нужно?

Автор: mariner 16.3.2012, 21:31

Патч патчит. Что именно - сказано в патчноуте. Но если кратно - он дает возможность вешать птоку на любой порт, при этом птока будет не от root.

А на счет черуты ты небось все направильно сделал. Там де надо сделать ссылки на библиотеки в него и все такое.

Автор: roflDDDD 17.3.2012, 14:27

Цитата(mariner @ 16.3.2012, 22:31) *
Патч патчит. Что именно - сказано в патчноуте. Но если кратно - он дает возможность вешать птоку на любой порт, при этом птока будет не от root.

А на счет черуты ты небось все направильно сделал. Там де надо сделать ссылки на библиотеки в него и все такое.

дашь рабочий пример использования chroot? допустим хаб в папке /home/user/ptokax

Автор: mariner 18.3.2012, 7:55

Стоп-стоп-стоп. Ты хочешь, чтобы я за тебе сделал твою же работу? Нет, друже, делай сам, а мне и своей хватает. Но если уж совсем не понимаешь, то псмотри http://mydc.ru/r/?https://help.ubuntu.com/community/BasicChroot

Автор: roflDDDD 22.3.2012, 16:06

создал chroot окружение с помощью debootstrap, Запустил птоку. Не работает скрипт PX_Control, при подключении

[14:47:58] Готов
[14:48:00] Соединен
[14:48:00] Соединение закрыто

а хаб работает, скрипты тоже вроде бы..
в chroot Доставил liblua5.1 + liblua5.1-dev zlib1g + zlib1g-dev TinyXml и все

Автор: Alexey 22.3.2012, 16:33

Лог ошибок скриптов посмотри. Там наверняка PX_Control требует наличия lfs и luasocket.

Автор: roflDDDD 22.3.2012, 16:37

Где его найти? В UDP-Отладчике пустота

ПС: поставил luasocket и lua-filesystem - всеравно не работает

Автор: roflDDDD 26.6.2012, 16:42

Возможно ли использовать в Chroot окружении другое ядро, не такое как в основной системе?
Например, в основной системе стоит linux-generic, а в chroot окружении (где стоят игровые сервера) поставить rt (real time)? Будет ли оно (rt) корректо работать в chroot окружении и будет ли от него еффект на игровых серверах?

Автор: mariner 26.6.2012, 18:28

нет, такое сделать не возможно.

Автор: roflDDDD 4.7.2012, 16:00

А можно в chroot окружении для пользователя от которого запукается Хаб ограничить ulimit - max open files? Я делаю в chroot окружении так su -c "ulimit -n 100" ptokaxm но еффекта нет.. И root'у тоже не меняет в chroot окружении

Цитата(roflDDDD @ 4.7.2012, 16:48) *
А можно в chroot окружении для пользователя от которого запукается Хаб ограничить ulimit - max open files? Я делаю в chroot окружении так su -c "ulimit -n 100" ptokaxm но еффекта нет.. И root'у тоже не меняет в chroot окружении

Тут разобрался. Нужно перед запуском хаба в системе изменить ulimit для root, запускать хаб, а потом вернуть нужное значение. И хаб будет работать с ограниченным ulimit.
Теперь другой вопрос, много ли можно ограничить через этот ulimit? Например, мне нужно ограничить максимальное количество ползователей на хабе, это я делаю через nofile. Как ограничить макс. разрешенный обьем использование оперативной памяти и процессора? Например, про процессора там есть, но что значит cpu time? Как его расчитать? Я сейчас понимаю так, что нужно ограничить, чтобы хаб больше 10% процессора не кушал big_smile.gif

Автор: mariner 4.7.2012, 16:54

Цитата
Например, мне нужно ограничить максимальное количество ползователей на хабе, это я делаю через nofile.

Зачем это делать, если это есть в настройках программы?

Цитата
Как ограничить макс. разрешенный обьем использование оперативной памяти и процессора?

использовать cgroup, т.к. это более гибкий механизм.

если желание нет, то вот
Цитата
#<item> can be one of the following:
# - core - limits the core file size (KB)
# - data - max data size (KB)
# - fsize - maximum filesize (KB)
# - memlock - max locked-in-memory address space (KB)
# - nofile - max number of open files
# - rss - max resident set size (KB)
# - stack - max stack size (KB)
# - cpu - max CPU time (MIN)
# - nproc - max number of processes
# - as - address space limit (KB)
# - maxlogins - max number of logins for this user
# - maxsyslogins - max number of logins on the system
# - priority - the priority to run user process with
# - locks - max number of file locks the user can hold
# - sigpending - max number of pending signals
# - msgqueue - max memory used by POSIX message queues (bytes)
# - nice - max nice priority allowed to raise to values: [-20, 19]
# - rtprio - max realtime priority

Тебя интересует rss, stack и cpu.

Но этот подход имеет ряд минусов. Как то не гибкая настройка, привязка к tty и прочее.

Автор: roflDDDD 13.1.2013, 12:01

Если игровой сервер запускать в chroot окружении. Сам по себе этот факт может создавать какие-либо проблемы в виде лагов на сервере? Или это никак не влияет, запускать в chroot или не в chroot....

Автор: Saymon21 13.1.2013, 12:42

В chroot часто бывают проблемы, даже хотя-бы с тем-же самым lighttpd+php-fpm, игровой сервер может быть не исключением. ;)
На практике лучше видно будет.

Автор: roflDDDD 13.1.2013, 13:20

Цитата(Saymon21 @ 13.1.2013, 13:42) *
В chroot часто бывают проблемы, даже хотя-бы с тем-же самым lighttpd+php-fpm, игровой сервер может быть не исключением. ;)
На практике лучше видно будет.

У меня сервер по Killing Floor работает давно в chroot окружении. Поступает много жалоб на лаги. Заметил в htop, что загрузка CPU у этого сервера при загружености доходит до 100% (показывает и 105%), при том что процессор 4х ядерный, сервер почему-то использует лишь 1 ядро и ему явно мало, особенно в пик загруженности. Уже стал грешить на chroot окружение, потому что проверяю все подряд, начиная от сетевого кабеля, заканчивая настройками сервера.
Так это нормально, что сервер использует одноврименно только 1 ядро процессора? И можно ли это изменить? Или как-то по другому решить эту проблему нехватки проца, если я все верно понял и его реально не хватает.

Автор: mariner 13.1.2013, 18:43

Цитата
Заметил в htop, что загрузка CPU у этого сервера при загружености доходит до 100% (показывает и 105%), при том что процессор 4х ядерный, сервер почему-то использует лишь 1 ядро

А ты уверен, что killing floor ваще умеет в многоядерность?

Автор: roflDDDD 13.1.2013, 18:57

Цитата(mariner @ 13.1.2013, 19:43) *
А ты уверен, что killing floor ваще умеет в многоядерность?

Угу. Судя по всему он эту фигню не поддерживает(
Есть инные решения этой проблемы? Если сам сервер не умеет это(

Автор: mariner 13.1.2013, 19:08

Нет

Автор: roflDDDD 17.1.2013, 23:21

Ptokax поддерживает многопроцессорность? (5.0.0.0)

Автор: Alexey 17.1.2013, 23:26

Нет.