* [Comm] postgresql-perl/python using
@ 2005-11-27 16:31 Eugene Prokopiev
2005-11-28 5:44 ` Alexey V. Novikov
2005-11-28 8:32 ` Alex Gorbachenko
0 siblings, 2 replies; 11+ messages in thread
From: Eugene Prokopiev @ 2005-11-27 16:31 UTC (permalink / raw)
To: ALT Linux Community
Здравствуйте!
А в ALM 2.4 postgresql-perl рабочий?
Вот что у меня получилось:
$ createdb -U postgres test
CREATE DATABASE
$ createlang -U postgres plperl test
$ psql -U postgres test
test=# create or replace function test_2(varchar) returns varchar as '
test'# return $_[0];
test'# ' language plperl;
CREATE FUNCTION
test=# select test_2('1');
сервер неожиданно прервал соединение
Скорее всего это означает что сервер завершил работу со сбоем
до или в течение обслуживания запроса.
Подсоединение к серверу было потеряно. Попытка переустановить: Безуспешно.
!>
В postgresql8.1, пересобранного из Сизифа в окружении ALM 2.4 все еще
хуже: сервер прерывает соединение при попытке создать функцию.
Дальше всего удается пройти при работе с pl/python :)
$ createlang -U postgres plpythonu test
$ psql -U postgres test
test=# create or replace function test(varchar) returns varchar as '
test'# return args[0]
test'# ' language plpythonu;
CREATE FUNCTION
test=# select test('test');
test
------
test
(1 запись)
test=# create or replace function get_header(varchar) returns varchar as '
test'# import email.Parser
test'# parser = email.Parser.Parser()
test'# message = parser.parse(args[0])
test'# return message.get("From")
test'# ' language plpythonu;
CREATE FUNCTION
test=# select get_header('');
ERROR: plpython: function "get_header" failed
DETAIL: exceptions.ImportError: No module named email.Parser
При том, что:
$ cat mail.py
import sys
import email.Parser
parser = email.Parser.Parser()
message = parser.parse(sys.stdin)
print message.get("From")
$ python mail.py < mbox
test@mydomain.com
Т.е. pl/python использовать не получается. А у кого-нибудь получалось?
--
С уважением, Прокопьев Евгений
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [Comm] postgresql-perl/python using
2005-11-27 16:31 [Comm] postgresql-perl/python using Eugene Prokopiev
@ 2005-11-28 5:44 ` Alexey V. Novikov
2005-11-28 17:53 ` Eugene Prokopiev
2005-11-28 8:32 ` Alex Gorbachenko
1 sibling, 1 reply; 11+ messages in thread
From: Alexey V. Novikov @ 2005-11-28 5:44 UTC (permalink / raw)
To: ALT Linux Community
27.11.2005 19:31, Eugene Prokopiev пишет:
> Здравствуйте!
>
> А в ALM 2.4 postgresql-perl рабочий?
<skip>
Postgres в alt работает в chroot. Проверьте, что все требуемое
копируется в него.
--
WBR, Alexey V. Novikov
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [Comm] postgresql-perl/python using
2005-11-28 5:44 ` Alexey V. Novikov
@ 2005-11-28 17:53 ` Eugene Prokopiev
2005-11-29 5:25 ` Alexey V. Novikov
0 siblings, 1 reply; 11+ messages in thread
From: Eugene Prokopiev @ 2005-11-28 17:53 UTC (permalink / raw)
To: ALT Linux Community
Alexey V. Novikov пишет:
> 27.11.2005 19:31, Eugene Prokopiev пишет:
>
>> Здравствуйте!
>>
>> А в ALM 2.4 postgresql-perl рабочий?
>
> <skip>
> Postgres в alt работает в chroot. Проверьте, что все требуемое
> копируется в него.
А как это правильно сделать?
Вот python работает, а после копирования /usr/lib/python2.3 в chroot
работают вообще все необходимые мне модули. Тем не менее:
# ldd /var/lib/pgsql-root/usr/lib/pgsql/plpython.so
libpython2.3.so.1.0 => /usr/lib/libpython2.3.so.1.0 (0x00129000)
libpthread.so.0 => /lib/libpthread.so.0 (0x0020e000)
libdl.so.2 => /lib/libdl.so.2 (0x00262000)
libutil.so.1 => /lib/libutil.so.1 (0x00266000)
libm.so.6 => /lib/libm.so.6 (0x0026a000)
libc.so.6 => /lib/libc.so.6 (0x0028d000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x80000000)
Ничего из перечисленного в chroot нет:
# ls /var/lib/pgsql-root/usr/lib
locale pgsql python2.3
А perl не работает вообще никак, даже простейшие функции не создаются
(ругательства я приводил). Разницы с python практически никакой:
# ldd /var/lib/pgsql-root/usr/lib/pgsql/plperl.so
libperl.so.5.8 => /usr/lib/libperl.so.5.8 (0x0012d000)
libdl.so.2 => /lib/libdl.so.2 (0x00214000)
libm.so.6 => /lib/libm.so.6 (0x00219000)
libpthread.so.0 => /lib/libpthread.so.0 (0x0023c000)
libc.so.6 => /lib/libc.so.6 (0x0028f000)
libcrypt.so.1 => /lib/libcrypt.so.1 (0x0039c000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x80000000)
Как узнать, что проблема действительно в том, что в chroot что-то
отсутствует? И как узнать, что именно отсутствует?
--
С уважением, Прокопьев Евгений
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [Comm] postgresql-perl/python using
2005-11-28 17:53 ` Eugene Prokopiev
@ 2005-11-29 5:25 ` Alexey V. Novikov
0 siblings, 0 replies; 11+ messages in thread
From: Alexey V. Novikov @ 2005-11-29 5:25 UTC (permalink / raw)
To: ALT Linux Community
28.11.2005 20:53, Eugene Prokopiev пишет:
> Alexey V. Novikov пишет:
>> Postgres в alt работает в chroot. Проверьте, что все требуемое
>> копируется в него.
>
>
> А как это правильно сделать?
>
> Вот python работает, а после копирования /usr/lib/python2.3 в chroot
> работают вообще все необходимые мне модули. Тем не менее:
>
> # ldd /var/lib/pgsql-root/usr/lib/pgsql/plpython.so
> libpython2.3.so.1.0 => /usr/lib/libpython2.3.so.1.0 (0x00129000)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
вот это нужно копировать, ИМХО
> libpthread.so.0 => /lib/libpthread.so.0 (0x0020e000)
> libdl.so.2 => /lib/libdl.so.2 (0x00262000)
> libutil.so.1 => /lib/libutil.so.1 (0x00266000)
> libm.so.6 => /lib/libm.so.6 (0x0026a000)
> libc.so.6 => /lib/libc.so.6 (0x0028d000)
> /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x80000000)
а эти, скорее всего, загружены самим postgres
то же самое с перлом
<skip>
> Как узнать, что проблема действительно в том, что в chroot что-то
> отсутствует? И как узнать, что именно отсутствует?
попробовать запустить в chroot'е strace? :(
--
WBR, Alexey V. Novikov
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [Comm] postgresql-perl/python using
2005-11-27 16:31 [Comm] postgresql-perl/python using Eugene Prokopiev
2005-11-28 5:44 ` Alexey V. Novikov
@ 2005-11-28 8:32 ` Alex Gorbachenko
2005-11-28 10:38 ` Eugene Prokopiev
1 sibling, 1 reply; 11+ messages in thread
From: Alex Gorbachenko @ 2005-11-28 8:32 UTC (permalink / raw)
To: community
[-- Attachment #1: Type: text/plain, Size: 258 bytes --]
On Sun, 27 Nov 2005 19:31:22 +0300
Eugene wrote:
EP>А в ALM 2.4 postgresql-perl рабочий?
если вы имеете желание использовать весь функционал postgresql, то его
(postgresql) нужно вынимать из chroot. иначе никак.
--
np: In Flames - Man Made God
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 190 bytes --]
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [Comm] postgresql-perl/python using
2005-11-28 8:32 ` Alex Gorbachenko
@ 2005-11-28 10:38 ` Eugene Prokopiev
2005-11-29 9:14 ` Alex Gorbachenko
0 siblings, 1 reply; 11+ messages in thread
From: Eugene Prokopiev @ 2005-11-28 10:38 UTC (permalink / raw)
To: ALT Linux Community
Alex Gorbachenko пишет:
> On Sun, 27 Nov 2005 19:31:22 +0300
> Eugene wrote:
>
> EP>А в ALM 2.4 postgresql-perl рабочий?
>
> если вы имеете желание использовать весь функционал postgresql, то его
> (postgresql) нужно вынимать из chroot. иначе никак.
а какой именно функционал требует вынимания?
я вот скопировал /usr/lib/python2.3 в чрут и соответствующая
python-функция заработала.
--
С уважением, Прокопьев Евгений
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [Comm] postgresql-perl/python using
2005-11-28 10:38 ` Eugene Prokopiev
@ 2005-11-29 9:14 ` Alex Gorbachenko
2005-11-29 9:54 ` Alexey V. Novikov
0 siblings, 1 reply; 11+ messages in thread
From: Alex Gorbachenko @ 2005-11-29 9:14 UTC (permalink / raw)
To: community
[-- Attachment #1: Type: text/plain, Size: 240 bytes --]
On Mon, 28 Nov 2005 13:38:05 +0300
Eugene wrote:
EP>я вот скопировал /usr/lib/python2.3 в чрут и соответствующая
EP>python-функция заработала.
модули от питона и перла вы тоже в чрут положите ?
--
np: In Flames - Bullet Ride
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 190 bytes --]
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [Comm] postgresql-perl/python using
2005-11-29 9:14 ` Alex Gorbachenko
@ 2005-11-29 9:54 ` Alexey V. Novikov
2005-11-29 10:11 ` Alex Gorbachenko
0 siblings, 1 reply; 11+ messages in thread
From: Alexey V. Novikov @ 2005-11-29 9:54 UTC (permalink / raw)
To: ALT Linux Community
29.11.2005 12:14, Alex Gorbachenko пишет:
> On Mon, 28 Nov 2005 13:38:05 +0300
> Eugene wrote:
>
> EP>я вот скопировал /usr/lib/python2.3 в чрут и соответствующая
> EP>python-функция заработала.
>
> модули от питона и перла вы тоже в чрут положите ?
Если использовать plperl и plpython, то лучше
модули в чрут, чем все это хозяйство из него вытаскивать.
В плане безопасности, ИМХО.
--
WBR, Alexey V. Novikov
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [Comm] postgresql-perl/python using
2005-11-29 9:54 ` Alexey V. Novikov
@ 2005-11-29 10:11 ` Alex Gorbachenko
2005-11-29 10:44 ` Alexey V. Novikov
0 siblings, 1 reply; 11+ messages in thread
From: Alex Gorbachenko @ 2005-11-29 10:11 UTC (permalink / raw)
To: community
[-- Attachment #1: Type: text/plain, Size: 298 bytes --]
On Tue, 29 Nov 2005 12:54:31 +0300
Alexey wrote:
AVN>Если использовать plperl и plpython, то лучше
AVN>модули в чрут, чем все это хозяйство из него вытаскивать.
AVN>В плане безопасности, ИМХО.
и чем оно лучше в плане безопасности в данном случае ?
--
np: In Flames - Square Nothing
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 190 bytes --]
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [Comm] postgresql-perl/python using
2005-11-29 10:11 ` Alex Gorbachenko
@ 2005-11-29 10:44 ` Alexey V. Novikov
2005-11-29 13:09 ` Alex Gorbachenko
0 siblings, 1 reply; 11+ messages in thread
From: Alexey V. Novikov @ 2005-11-29 10:44 UTC (permalink / raw)
To: ALT Linux Community
29.11.2005 13:11, Alex Gorbachenko пишет:
> On Tue, 29 Nov 2005 12:54:31 +0300
> Alexey wrote:
>
> AVN>Если использовать plperl и plpython, то лучше
> AVN>модули в чрут, чем все это хозяйство из него вытаскивать.
> AVN>В плане безопасности, ИМХО.
>
> и чем оно лучше в плане безопасности в данном случае ?
Как минимум тем, что в случае взлома, ну например,
SQL-injection через php или perl'овый cgi на web-сервере
грозит лишь самому postgres'у.
На запись права получить будет нелегко, но права на чтение
данных и запуск большинства программ(не дай бог suid)
получить через plperl и plpython вполне реально.
--
WBR, Alexey V. Novikov
^ permalink raw reply [flat|nested] 11+ messages in thread
end of thread, other threads:[~2005-11-29 13:09 UTC | newest]
Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-11-27 16:31 [Comm] postgresql-perl/python using Eugene Prokopiev
2005-11-28 5:44 ` Alexey V. Novikov
2005-11-28 17:53 ` Eugene Prokopiev
2005-11-29 5:25 ` Alexey V. Novikov
2005-11-28 8:32 ` Alex Gorbachenko
2005-11-28 10:38 ` Eugene Prokopiev
2005-11-29 9:14 ` Alex Gorbachenko
2005-11-29 9:54 ` Alexey V. Novikov
2005-11-29 10:11 ` Alex Gorbachenko
2005-11-29 10:44 ` Alexey V. Novikov
2005-11-29 13:09 ` Alex Gorbachenko
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