* [Comm] Не открывается порт
@ 2012-02-03 17:14 Vladimir Karpinsky
2012-02-04 5:23 ` Vladimir Karpinsky
0 siblings, 1 reply; 12+ messages in thread
From: Vladimir Karpinsky @ 2012-02-03 17:14 UTC (permalink / raw)
To: ALT Linux Community general discussions
Здравствуйте!
Есть программа, которая должна собирать данные с другого компьютера и
отдавать их по запросу на порт 39136. Ставил на несколько компьютеров от
Мастер 2.0 до Десктоп 4.1 и проблем не было. Никак не могу заставить
работать на Kdesktop6-64. Программа 32-битная, в процессе установки было
добавлено несколько библиотек из x86-32, чтобы она запустилась и пошёл
приём. Но на отдачу не работает, --- nmap показывает, что порт закрыт,
telnet, соответственно, тоже отваливается. Какая-то активность по порту при
обращении (с 192.168.5.22) есть, но я не знаю, как её интерпретировать:
# tcpdump -nn host 192.168.5.22
16:51:59.721732 ARP, Request who-has 192.168.5.22 tell 192.168.5.2, length 28
16:51:59.721809 ARP, Reply 192.168.5.22 is-at 00:0c:6e:ad:28:e2, length 46
16:52:04.706959 IP 192.168.5.22.36567 > 192.168.5.2.39136: Flags [S], seq
2819789607, win 5840, options [mss 1460,nop,nop,sackOK,nop,wscale 1], length 0
16:52:04.706968 IP 192.168.5.2.39136 > 192.168.5.22.36567: Flags [R.], seq
0, ack 2819789608, win 0, length 0
16:52:04.726939 IP 192.168.5.22.36568 > 192.168.5.2.39136: Flags [S], seq
2821048875, win 5840, options [mss 1460,nop,nop,sackOK,nop,wscale 1], length 0
16:52:04.726946 IP 192.168.5.2.39136 > 192.168.5.22.36568: Flags [R.], seq
0, ack 2821048876, win 0, length 0
16:52:04.736934 IP 192.168.5.22.36569 > 192.168.5.2.39136: Flags [S], seq
2823880894, win 5840, options [mss 1460,nop,nop,sackOK,nop,wscale 1], length 0
16:52:04.736941 IP 192.168.5.2.39136 > 192.168.5.22.36569: Flags [R.], seq
0, ack 2823880895, win 0, length 0
Файервол не поднят:
# iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
Можно ли из приведённых данных понять, что мешать работать, --- теперь
требуется дать какое-то дополнительное разрешение на такую деятельность или
нужны ещё какие-то библиотеки из x86_32?
--
С уважением,
Владимир.
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [Comm] Не открывается порт
2012-02-03 17:14 [Comm] Не открывается порт Vladimir Karpinsky
@ 2012-02-04 5:23 ` Vladimir Karpinsky
2012-02-04 5:35 ` Vladimir Karpinsky
0 siblings, 1 reply; 12+ messages in thread
From: Vladimir Karpinsky @ 2012-02-04 5:23 UTC (permalink / raw)
To: community
03.02.2012 21:14, Vladimir Karpinsky пишет:
> Ставил на несколько компьютеров от Мастер 2.0 до Десктоп 4.1 и проблем не было.
Вопрос в такой формулировке снят, оказалось, что программа просто падает,
похоже, что при первом же обращении...
--
С уважением,
Владимир.
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [Comm] Не открывается порт
2012-02-04 5:23 ` Vladimir Karpinsky
@ 2012-02-04 5:35 ` Vladimir Karpinsky
2012-02-04 7:58 ` Dmitry Chistikov
0 siblings, 1 reply; 12+ messages in thread
From: Vladimir Karpinsky @ 2012-02-04 5:35 UTC (permalink / raw)
To: community
04.02.2012 9:23, Vladimir Karpinsky пишет:
> 03.02.2012 21:14, Vladimir Karpinsky пишет:
>> Ставил на несколько компьютеров от Мастер 2.0 до Десктоп 4.1 и проблем не
>> было.
>
> Вопрос в такой формулировке снят, оказалось, что программа просто падает,
> похоже, что при первом же обращении...
Ищу причины падения
# ldd isid
linux-gate.so.1 => (0xf7715000)
Это кто такой? Хотя такое же присутствует и в успешно работающих программах.
libz.so.1 => /lib/libz.so.1 (0xf76e9000)
libm.so.6 => /lib/libm.so.6 (0xf76bf000)
libpthread.so.0 => /lib/libpthread.so.0 (0xf76a4000)
libc.so.6 => /lib/libc.so.6 (0xf7540000)
/lib/ld-linux.so.2 (0xf7716000)
--
С уважением,
Владимир.
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [Comm] Не открывается порт
2012-02-04 5:35 ` Vladimir Karpinsky
@ 2012-02-04 7:58 ` Dmitry Chistikov
2012-02-04 9:48 ` Vladimir Karpinsky
2012-02-04 10:02 ` Vladimir Karpinsky
0 siblings, 2 replies; 12+ messages in thread
From: Dmitry Chistikov @ 2012-02-04 7:58 UTC (permalink / raw)
To: ALT Linux Community general discussions
Vladimir Karpinsky, Feb. 04, 2012, 09:35 +0400:
> 04.02.2012 9:23, Vladimir Karpinsky пишет:
> > Вопрос в такой формулировке снят, оказалось, что программа просто падает,
> > похоже, что при первом же обращении...
>
> Ищу причины падения
Падает = сегфолтится? А журнала она не ведет?
> # ldd isid
> linux-gate.so.1 => (0xf7715000)
>
> Это кто такой? Хотя такое же присутствует и в успешно работающих программах.
Just Google it!
--
Дмитрий Чистиков
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [Comm] Не открывается порт
2012-02-04 7:58 ` Dmitry Chistikov
@ 2012-02-04 9:48 ` Vladimir Karpinsky
2012-02-04 10:13 ` Alexei Takaseev
2012-02-04 10:02 ` Vladimir Karpinsky
1 sibling, 1 reply; 12+ messages in thread
From: Vladimir Karpinsky @ 2012-02-04 9:48 UTC (permalink / raw)
To: community
04.02.2012 11:58, Dmitry Chistikov пишет:
> Vladimir Karpinsky, Feb. 04, 2012, 09:35 +0400:
>> 04.02.2012 9:23, Vladimir Karpinsky пишет:
>>> Вопрос в такой формулировке снят, оказалось, что программа просто падает,
>>> похоже, что при первом же обращении...
>>
>> Ищу причины падения
>
> Падает = сегфолтится? А журнала она не ведет?
Ведёт, но там про это ничего нет. Появляется строка, что клиент запросил
данные, и падение.
В выводе strace достаточно много раз присутствует такого вида строки:
13841 access(0xfffffffff77cf6fa, R_OK) = -1 ENOENT (No such file or directory)
...
13841 stat64(0xffffffffffa882e3, 0xffffffffffa871b4) = -1 ENOENT (No such
file or directory)
13841 socket(PF_UNSPEC, 0, 0) = 4
13841 connect(0, NULL, 0) = -1 ENOENT (No such file or directory)
Можно ли как-то вычислить о каком "such file or directory" идёт речь?
Есть ещё такие:
13842 stat64("/usr/nrts/vyb/meta", 0xffffffffffa89144) = -1 ENOENT (No such
file or directory)
Файла meta не существует и не должно быть. В работающей программе под ядром
2.4 так:
23326 stat64("/usr/nrts/vyb/meta", <unfinished ...>
23328 <... rt_sigaction resumed> NULL, 8) = 0
23326 <... stat64 resumed> 0xbffff374) = -1 ENOENT (No such file or directory)
23328 rt_sigaction(SIGRT_15, {0x1778f0, ~[], SA_RESTORER, 0x1e5958},
<unfinished ...>
То же про отсутствие файлов есть, но не так.
Кончается всё сегфлотом:
13907 --- {si_signo=SIGSEGV, si_code=SEGV_MAPERR, si_addr=0} (Segmentation
fault) ---
13908 <... send resumed> ) = 16
13909 +++ killed by SIGSEGV +++
13908 +++ killed by SIGSEGV +++
13907 +++ killed by SIGSEGV +++
13843 +++ killed by SIGSEGV +++
13842 +++ killed by SIGSEGV +++
--
С уважением,
Владимир.
>> # ldd isid
>> linux-gate.so.1 => (0xf7715000)
>>
>> Это кто такой? Хотя такое же присутствует и в успешно работающих программах.
>
> Just Google it!
Примерно понял, я надеялся, что просто чего-то не хватает...
Собственно главный вопрос --- не изменились ли какие-нибудь правила (при
переходах: веток 4 -> p6, ядер 2.* -> 3.*, и архитектуры i586 -> x86_64) в
смысле прав на открытие портов и т.п. Если всё должно работать по-прежнему,
то надо разбираться с разработчиками, но этот процесс увы не так прост...
--
С уважением,
Владимир.
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [Comm] Не открывается порт
2012-02-04 7:58 ` Dmitry Chistikov
2012-02-04 9:48 ` Vladimir Karpinsky
@ 2012-02-04 10:02 ` Vladimir Karpinsky
2012-02-04 10:52 ` Dmitry Chistikov
1 sibling, 1 reply; 12+ messages in thread
From: Vladimir Karpinsky @ 2012-02-04 10:02 UTC (permalink / raw)
To: community
04.02.2012 11:58, Dmitry Chistikov пишет:
> Vladimir Karpinsky, Feb. 04, 2012, 09:35 +0400:
>> 04.02.2012 9:23, Vladimir Karpinsky пишет:
>>> Вопрос в такой формулировке снят, оказалось, что программа просто падает,
>>> похоже, что при первом же обращении...
>>
>> Ищу причины падения
>
> Падает = сегфолтится? А журнала она не ведет?
Ведёт, но там про это ничего нет. Появляется строка, что клиент запросил
данные, и падение.
В выводе strace достаточно много раз присутствует такого вида строки:
13841 access(0xfffffffff77cf6fa, R_OK) = -1 ENOENT (No such file or directory)
...
13841 stat64(0xffffffffffa882e3, 0xffffffffffa871b4) = -1 ENOENT (No such
file or directory)
13841 socket(PF_UNSPEC, 0, 0) = 4
13841 connect(0, NULL, 0) = -1 ENOENT (No such file or directory)
Можно ли как-то вычислить о каком "such file or directory" идёт речь?
Есть ещё такие:
13842 stat64("/usr/nrts/vyb/meta", 0xffffffffffa89144) = -1 ENOENT (No such
file or directory)
Файла meta не существует и не должно быть. В работающей программе под ядром
2.4 так:
23326 stat64("/usr/nrts/vyb/meta", <unfinished ...>
23328 <... rt_sigaction resumed> NULL, 8) = 0
23326 <... stat64 resumed> 0xbffff374) = -1 ENOENT (No such file or directory)
23328 rt_sigaction(SIGRT_15, {0x1778f0, ~[], SA_RESTORER, 0x1e5958},
<unfinished ...>
То же про отсутствие файлов есть, но не так.
Кончается всё сегфлотом:
13907 --- {si_signo=SIGSEGV, si_code=SEGV_MAPERR, si_addr=0} (Segmentation
fault) ---
13908 <... send resumed> ) = 16
13909 +++ killed by SIGSEGV +++
13908 +++ killed by SIGSEGV +++
13907 +++ killed by SIGSEGV +++
13843 +++ killed by SIGSEGV +++
13842 +++ killed by SIGSEGV +++
>> # ldd isid
>> linux-gate.so.1 => (0xf7715000)
>>
>> Это кто такой? Хотя такое же присутствует и в успешно работающих программах.
>
> Just Google it!
Примерно понял, я надеялся, что просто чего-то не хватает...
Собственно главный вопрос --- не изменились ли какие-нибудь правила (при
переходах: веток 4 -> p6, ядер 2.* -> 3.*, и архитектуры i586 -> x86_64) в
смысле прав на открытие портов и т.п. Если всё должно работать по-прежнему,
то надо разбираться с разработчиками, но этот процесс увы не так прост...
--
С уважением,
Владимир.
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [Comm] Не открывается порт
2012-02-04 9:48 ` Vladimir Karpinsky
@ 2012-02-04 10:13 ` Alexei Takaseev
2012-02-04 10:50 ` Vladimir Karpinsky
0 siblings, 1 reply; 12+ messages in thread
From: Alexei Takaseev @ 2012-02-04 10:13 UTC (permalink / raw)
To: ALT Linux Community general discussions
----- Исходное сообщение -----
> От: "Vladimir Karpinsky" <vkarpinsky@mail.ru>
> Кому: community@lists.altlinux.org
> Отправленные: Суббота, 4 Февраль 2012 г 18:48:26
> Тема: Re: [Comm] Не открывается порт
>
> 04.02.2012 11:58, Dmitry Chistikov пишет:
> > Vladimir Karpinsky, Feb. 04, 2012, 09:35 +0400:
> >> 04.02.2012 9:23, Vladimir Karpinsky пишет:
> >>> Вопрос в такой формулировке снят, оказалось, что программа просто
> >>> падает,
> >>> похоже, что при первом же обращении...
> >>
> >> Ищу причины падения
> >
> > Падает = сегфолтится? А журнала она не ведет?
>
> Собственно главный вопрос --- не изменились ли какие-нибудь правила
> (при
> переходах: веток 4 -> p6, ядер 2.* -> 3.*, и архитектуры i586 ->
> x86_64) в
> смысле прав на открытие портов и т.п. Если всё должно работать
> по-прежнему,
> то надо разбираться с разработчиками, но этот процесс увы не так
> прост...
Так это вы себе устроили миграцию i586->x86_64 на живой системе что ли?
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [Comm] Не открывается порт
2012-02-04 10:13 ` Alexei Takaseev
@ 2012-02-04 10:50 ` Vladimir Karpinsky
0 siblings, 0 replies; 12+ messages in thread
From: Vladimir Karpinsky @ 2012-02-04 10:50 UTC (permalink / raw)
To: community
04.02.2012 14:13, Alexei Takaseev пишет:
> Так это вы себе устроили миграцию i586->x86_64 на живой системе что ли?
Нет, конечно. Просто на ядрах 2.2 -- 2.6 и i586, эта программа работала и
работает. Сейчас перенёс на новое железо, а тут уже и x86_64, и ядро 3.0, и
новый бранч одновременно. Поставил все запрошенные библиотеки из x86_32, но
нарвался на проблемы с серверной частью, клиентская работает нормально.
Специальная версия x86_64 пока не предвидется --- как мне объяснили,
простое перекомпилирование исходников не пройдёт.
--
С уважением,
Владимир.
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [Comm] Не открывается порт
2012-02-04 10:02 ` Vladimir Karpinsky
@ 2012-02-04 10:52 ` Dmitry Chistikov
2012-02-04 11:23 ` Vladimir Karpinsky
0 siblings, 1 reply; 12+ messages in thread
From: Dmitry Chistikov @ 2012-02-04 10:52 UTC (permalink / raw)
To: ALT Linux Community general discussions
Vladimir Karpinsky, Feb. 04, 2012, 14:02 +0400:
> Ведёт, но там про это ничего нет. Появляется строка, что клиент запросил
> данные, и падение.
Какой-нибудь debug level увеличить не получается?
> В выводе strace достаточно много раз присутствует такого вида строки:
> 13841 access(0xfffffffff77cf6fa, R_OK) = -1 ENOENT (No such file or directory)
> ...
> 13841 stat64(0xffffffffffa882e3, 0xffffffffffa871b4) = -1 ENOENT (No such
> file or directory)
Если поглядеть в access(2) и stat(2), то первый параметр у этих вызовов
const char *. Если Вы специально не подкручивали strace на такой формат
вывода, то, скорее всего, соответствующий указатель смотрит куда-то не
туда. Неплохо бы понять, почему так получилось.
На чем эта штука написана? Иногда может оказаться полезным ltrace (library
call tracer).
> 13841 socket(PF_UNSPEC, 0, 0) = 4
> 13841 connect(0, NULL, 0) = -1 ENOENT (No such file or directory)
>
> Можно ли как-то вычислить о каком "such file or directory" идёт речь?
Не могу ответить уверенно.
Обратите внимание, что socket возвращает файловый дескриптор (в данном
случае это 4), а connect принимает файловый дескриптор в качестве первого
параметра (в данном случае это 0). Таким образом, в этих строках речь
о разном.
Страница connect(3p) указывает, что для unix-сокетов (AF_UNIX) ситуация
ENOENT возникает в случае, если по указанному пути, грубо говоря, нельзя
пройти ("A component of the pathname does not name an existing file or the
pathname is an empty string"). Попробуйте изучить историю нулевого
дескриптора, скормленного connect'у, до этого вызова.
> Есть ещё такие:
> 13842 stat64("/usr/nrts/vyb/meta", 0xffffffffffa89144) = -1 ENOENT (No such
> file or directory)
>
> Файла meta не существует и не должно быть. В работающей программе под ядром
> 2.4 так:
> 23326 stat64("/usr/nrts/vyb/meta", <unfinished ...>
> 23328 <... rt_sigaction resumed> NULL, 8) = 0
> 23326 <... stat64 resumed> 0xbffff374) = -1 ENOENT (No such file or directory)
> 23328 rt_sigaction(SIGRT_15, {0x1778f0, ~[], SA_RESTORER, 0x1e5958},
> <unfinished ...>
>
> То же про отсутствие файлов есть, но не так.
По-моему, одно и то же. (Опять же могу ошибаться.)
> Кончается всё сегфлотом: [...]
Надо понять, в какой момент крышу начинает сносить.
> Собственно главный вопрос --- не изменились ли какие-нибудь правила (при
> переходах: веток 4 -> p6, ядер 2.* -> 3.*, и архитектуры i586 -> x86_64) в
> смысле прав на открытие портов и т.п. Если всё должно работать по-прежнему,
> то надо разбираться с разработчиками, но этот процесс увы не так прост...
Правила - понятие широкое.
Программа, конечно, должна адекватно отслеживать возможные ошибки, но это
общезначимо и совсем не новость. Сложно сказать, на что именно программа
ошибочно подвязалась (если).
--
Дмитрий Чистиков
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [Comm] Не открывается порт
2012-02-04 10:52 ` Dmitry Chistikov
@ 2012-02-04 11:23 ` Vladimir Karpinsky
2012-02-04 11:55 ` Dmitry Chistikov
0 siblings, 1 reply; 12+ messages in thread
From: Vladimir Karpinsky @ 2012-02-04 11:23 UTC (permalink / raw)
To: community
04.02.2012 14:52, Dmitry Chistikov пишет:
> Vladimir Karpinsky, Feb. 04, 2012, 14:02 +0400:
>> Ведёт, но там про это ничего нет. Появляется строка, что клиент запросил
>> данные, и падение.
>
> Какой-нибудь debug level увеличить не получается?
Нет.
> На чем эта штука написана? Иногда может оказаться полезным ltrace (library
> call tracer).
Я думаю, что на C (исходников у меня нет), хотя не удивлюсь, если там
какие-нибудь фортрановские куски исторически присутствуют.
Вывод ltrace уже выше моего понимания --- я всё-таки не программист. Слов
"error" и "not found" я там не встретил.
> Правила - понятие широкое.
Я имел ввиду, что-то типа: "Начиная с версии X.X, программу открывающую
порт YYYY надо внести в конфиг /etc/port.conf..." Если это не так, то надо
передавать эстафету специалистам. Боюсь только, что ещё и начальство
придётся подключать...
--
С уважением,
Владимир.
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [Comm] Не открывается порт
2012-02-04 11:23 ` Vladimir Karpinsky
@ 2012-02-04 11:55 ` Dmitry Chistikov
2012-02-04 18:16 ` Vladimir Karpinsky
0 siblings, 1 reply; 12+ messages in thread
From: Dmitry Chistikov @ 2012-02-04 11:55 UTC (permalink / raw)
To: ALT Linux Community general discussions
Vladimir Karpinsky, Feb. 04, 2012, 15:23 +0400:
> > На чем эта штука написана? Иногда может оказаться полезным ltrace (library
> > call tracer).
>
> Я думаю, что на C (исходников у меня нет), хотя не удивлюсь, если там
> какие-нибудь фортрановские куски исторически присутствуют.
>
> Вывод ltrace уже выше моего понимания --- я всё-таки не программист. Слов
> "error" и "not found" я там не встретил.
Отчет ltrace может быть почти нечитаемым, это да. (Если исходников на
руках нет - тем более.)
> > Правила - понятие широкое.
>
> Я имел ввиду, что-то типа: "Начиная с версии X.X, программу открывающую
> порт YYYY надо внести в конфиг /etc/port.conf..." Если это не так, то надо
> передавать эстафету специалистам. Боюсь только, что ещё и начальство
> придётся подключать...
Пока что можно попытаться увидеть в выводе strace, откуда примерно
идут странные значения указателей, а также историю действий, связанных
с сетью (что-нибудь вокруг -e trace=network; хотя совсем не факт, что
источник проблем именно там). Думаю, что эффективнее всего будет
показать разработчикам вывод strace и попросить их помочь.
--
Дмитрий Чистиков
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [Comm] Не открывается порт
2012-02-04 11:55 ` Dmitry Chistikov
@ 2012-02-04 18:16 ` Vladimir Karpinsky
0 siblings, 0 replies; 12+ messages in thread
From: Vladimir Karpinsky @ 2012-02-04 18:16 UTC (permalink / raw)
To: community
04.02.2012 15:55, Dmitry Chistikov пишет:
> Vladimir Karpinsky, Feb. 04, 2012, 15:23 +0400:
> Пока что можно попытаться увидеть в выводе strace, откуда примерно
> идут странные значения указателей, а также историю действий, связанных
> с сетью (что-нибудь вокруг -e trace=network; хотя совсем не факт, что
> источник проблем именно там). Думаю, что эффективнее всего будет
> показать разработчикам вывод strace и попросить их помочь.
Уже отправил.
--
С уважением,
Владимир.
^ permalink raw reply [flat|nested] 12+ messages in thread
end of thread, other threads:[~2012-02-04 18:16 UTC | newest]
Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-02-03 17:14 [Comm] Не открывается порт Vladimir Karpinsky
2012-02-04 5:23 ` Vladimir Karpinsky
2012-02-04 5:35 ` Vladimir Karpinsky
2012-02-04 7:58 ` Dmitry Chistikov
2012-02-04 9:48 ` Vladimir Karpinsky
2012-02-04 10:13 ` Alexei Takaseev
2012-02-04 10:50 ` Vladimir Karpinsky
2012-02-04 10:02 ` Vladimir Karpinsky
2012-02-04 10:52 ` Dmitry Chistikov
2012-02-04 11:23 ` Vladimir Karpinsky
2012-02-04 11:55 ` Dmitry Chistikov
2012-02-04 18:16 ` Vladimir Karpinsky
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