[sisyphus] rpm -q от рута?
Alexei V. Mezin
=?iso-8859-1?q?alexei=5Fvm_=CE=C1_ints=2Eru?=
Вс Янв 20 14:59:46 MSK 2008
Сегодня обнаружил, что запускт rpm -qa или rpm -qf от рута приводит к
тому, что rpm за несколько секунд сжирает всю память и своп, и машина
впадает в ступор, в логах ругань
VFS: file-max limit 102766 reached
От пользователя все работает как обычно.
Попытался strace использовать. Замирает на вот таких строчках:
read(255, "#! /bin/sh\n#\n# Written by Erik T"..., 7926) = 7926
open("/usr/lib/gconv/CP1251.so", O_RDONLY) = 3
read(3,
"\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\0\3\0\0004\0\0\0"...,
512) = 512
fstat64(3, {st_mode=S_IFREG|0644, st_size=9448, ...}) = 0
mmap2(NULL, 12308, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0)
= 0xa7f5d000
mmap2(0xa7f5f000, 8192, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1) = 0xa7f5f000
close(3) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
stat64(".", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
stat64("./", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
stat64("./rpm", {st_mode=S_IFREG|0755, st_size=7926, ...}) = 0
stat64("./rpm", {st_mode=S_IFREG|0755, st_size=7926, ...}) = 0
rt_sigprocmask(SIG_BLOCK, [INT CHLD], [], 8) = 0
_llseek(255, -7122, [804], SEEK_CUR) = 0
clone(child_stack=0,
flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD,
child_tidptr=0xa7e17708) = 26038
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
rt_sigprocmask(SIG_BLOCK, [CHLD], [], 8) = 0
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
rt_sigprocmask(SIG_BLOCK, [CHLD], [], 8) = 0
rt_sigaction(SIGINT, {0x8071720, [], 0}, {SIG_DFL}, 8) = 0
waitpid(-1, <unfinished ...>
и далее висит и жрет память!
Это только у меня так?
[alexei на threebears ~]$ rpm -q rpm
rpm-4.0.4-alt81
[alexei на threebears ~]$ uname -r
2.6.24-wks-smp-alt0.9
Подробная информация о списке рассылки Sisyphus