* [Comm] Ошибка su
@ 2013-02-04 12:59 Michael A. Kangin
2013-02-04 19:10 ` Sergey Vlasov
0 siblings, 1 reply; 4+ messages in thread
From: Michael A. Kangin @ 2013-02-04 12:59 UTC (permalink / raw)
To: ALT Linux Community general discussions
Здравствуйте.
[root@vserv-1 vargus]# su - -s /bin/bash vargus
su: cannot assume uid
[root@vserv-1 vargus]# id vargus
uid=115(vargus) gid=131(vargus) groups=131(vargus),123(video)
У меня это странное "su: cannot assume uid" вообще не гуглится.
После перезагрузки сервера su сработало нормально.
$ ulimit
unlimited
Куда смотреть насчёт такого?
Система p6, x86_64
--
wbr, Michael A. Kangin
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [Comm] Ошибка su
2013-02-04 12:59 [Comm] Ошибка su Michael A. Kangin
@ 2013-02-04 19:10 ` Sergey Vlasov
2013-02-04 22:07 ` Michael A. Kangin
0 siblings, 1 reply; 4+ messages in thread
From: Sergey Vlasov @ 2013-02-04 19:10 UTC (permalink / raw)
To: community
[-- Attachment #1: Type: text/plain, Size: 1080 bytes --]
On Mon, Feb 04, 2013 at 04:59:44PM +0400, Michael A. Kangin wrote:
> [root@vserv-1 vargus]# su - -s /bin/bash vargus
> su: cannot assume uid
В su, происходящем из пакета SimplePAMApps, такое сообщение выдаётся,
если системный вызов setuid() завершился с ошибкой (к сожалению, код
ошибки при этом не выводится).
Наиболее вероятная причина, по которой может не пройти setuid() -
превышение лимита на количество процессов, уже выполняющихся с правами
указанного пользователя.
> [root@vserv-1 vargus]# id vargus
> uid=115(vargus) gid=131(vargus) groups=131(vargus),123(video)
>
>
> У меня это странное "su: cannot assume uid" вообще не гуглится.
Потому что в других дистрибутивах обычно не используют реализацию su
из SimplePAMApps.
> После перезагрузки сервера su сработало нормально.
>
> $ ulimit
> unlimited
Это ulimit -f, а в данном случае могло не хватить ulimit -u. Можно от
рута либо поднять лимит для своего процесса (хотя в данном случае его
может резать pam_limits по /etc/security/limits.conf), либо
предварительно поубивать лишнее.
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 198 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [Comm] Ошибка su
2013-02-04 19:10 ` Sergey Vlasov
@ 2013-02-04 22:07 ` Michael A. Kangin
2013-02-05 11:47 ` Sergey Vlasov
0 siblings, 1 reply; 4+ messages in thread
From: Michael A. Kangin @ 2013-02-04 22:07 UTC (permalink / raw)
To: ALT Linux Community general discussions
04.02.2013 23:10, Sergey Vlasov пишет:
> Наиболее вероятная причина, по которой может не пройти setuid() -
> превышение лимита на количество процессов, уже выполняющихся с правами
> указанного пользователя.
Да, действительно, похоже процессиков не хватало.
А вот здесь интересный вопрос...
Сервис исполняется от пользователя vargus (опускает полномочия с помощью
perl-Privileges-Drop), и форкается преизрядно, ему так надо.
Допустим мы хотим упаковать его дистрибутивненько и сочиняем
/etc/security/limits.d/60-vargus.conf такого содержания:
vargus soft nproc 4096
vargus hard nproc 8192
Однако, запустив сервис и заглянув в /proc/<PID>/limits, понимаем, что
свои nproc он получает не от лимитов пользователя vargus, а от
пользователя root.
Как тут быть? Наверное, паковать в пакеты лимиты для root было бы не
очень правильно...
--
wbr, Michael A. Kangin
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [Comm] Ошибка su
2013-02-04 22:07 ` Michael A. Kangin
@ 2013-02-05 11:47 ` Sergey Vlasov
0 siblings, 0 replies; 4+ messages in thread
From: Sergey Vlasov @ 2013-02-05 11:47 UTC (permalink / raw)
To: community
[-- Attachment #1: Type: text/plain, Size: 1001 bytes --]
On Tue, Feb 05, 2013 at 02:07:53AM +0400, Michael A. Kangin wrote:
> Сервис исполняется от пользователя vargus (опускает полномочия с помощью
> perl-Privileges-Drop), и форкается преизрядно, ему так надо.
>
> Допустим мы хотим упаковать его дистрибутивненько и сочиняем
> /etc/security/limits.d/60-vargus.conf такого содержания:
> vargus soft nproc 4096
> vargus hard nproc 8192
Этот файл используется модулем pam_limits, и сделанные в нём настройки
действуют только на приложения, которые используют PAM (например, login и
su). Разумеется, perl-Privileges-Drop не будет читать этот файл.
> Однако, запустив сервис и заглянув в /proc/<PID>/limits, понимаем, что
> свои nproc он получает не от лимитов пользователя vargus, а от
> пользователя root.
>
> Как тут быть? Наверное, паковать в пакеты лимиты для root было бы не
> очень правильно...
Можно устанавливать лимиты в скрипте запуска сервиса, и при необходимости
конфигурировать переменными в /etc/sysconfig/$service.
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 190 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2013-02-05 11:47 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-02-04 12:59 [Comm] Ошибка su Michael A. Kangin
2013-02-04 19:10 ` Sergey Vlasov
2013-02-04 22:07 ` Michael A. Kangin
2013-02-05 11:47 ` Sergey Vlasov
ALT Linux Community general discussions
This inbox may be cloned and mirrored by anyone:
git clone --mirror http://lore.altlinux.org/community/0 community/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 community community/ http://lore.altlinux.org/community \
mandrake-russian@linuxteam.iplabs.ru community@lists.altlinux.org community@lists.altlinux.ru community@lists.altlinux.com
public-inbox-index community
Example config snippet for mirrors.
Newsgroup available over NNTP:
nntp://lore.altlinux.org/org.altlinux.lists.community
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git