PERL plumbers?
Len Conrad
LConrad at Go2France.com
Tue Aug 19 08:50:33 UTC 2008
>--On Monday, August 18, 2008 13:23:43 -0500 Len Conrad
><LConrad at Go2France.com> wrote:
>
>>fbsd 4.11
>>
>>perl 5.8.8 installed by pkg_add
sorry, perl 5.8.5
>>postgrey 1.32
>>
>>use.perl port
>>
>>This machine has been running great for a week. Monday morning, postgrey was
>>stoppedand wouldn't start.
>>
>>syslog:
>>
>>Aug 18 14:20:35 mx1 postgrey[73387]: FATAL: ERROR: can't create DB
>>environment: No such file or directory (dbdir: /var/db/postgrey uid/gid:
>>1003,1003)
>>
>>user:group 1003:1003 is postgrey:postgrey
>>
>>but:
>>
>>ll /var/db/postgrey/
>>total 1078288
>>-rw------- 1 postgrey postgrey - 10485684 Aug 8 01:06 log.0000000001
>>-rw------- 1 postgrey postgrey - 1082490880 Aug 17 08:36 postgrey.db
>>-rw------- 1 postgrey postgrey - 0 Dec 8 2006 postgrey.lock
>>-rw------- 1 postgrey postgrey - 10862592 Aug 17 08:36
>>postgrey_clients.db
>>
>>It seems that some PERL path has gone wrong
>>
>>strace postgrey --inet=10023
>>
>>.. show a lot of file open failures.
>>
>>open("/usr/local/lib/perl5/site_perl/5.8.5/mach/Sys/Syslog.pm", O_RDONLY) =
>>-1 ENOENT (No such file or directory)
>>
>>mx1# find /usr/local -iname "Syslog.pm"
>>/usr/local/lib/perl5/5.8.2/mach/Sys/Syslog.pm
>>/usr/local/lib/perl5/site_perl/5.8.2/mach/Unix/Syslog.pm
>>/usr/local/lib/perl5/5.8.5/mach/Sys/Syslog.pm
>>
>>mx1# find /usr/local -iname "FileHandle.pm"
>>/usr/local/lib/perl5/5.8.2/FileHandle.pm
>>/usr/local/lib/perl5/5.8.5/FileHandle.pm
>>
>>
>>For an earlier, similar problem on this machine, we were advised to make this
>>link,
>>
>>mx1# ll /usr/bin/perl
>>lrwxr-xr-x 1 root wheel - 19 Aug 18 06:14 /usr/bin/perl@ ->
>>/usr/local/bin/perl
>
>Whoever gave you this advice was wrong. A symlink should already
>exist for perl:
># ls -lsa /usr/bin/perl
>0 lrwxr-xr-x 1 root wheel 24 Feb 20 12:23 /usr/bin/perl ->
>/usr/local/bin/perl5.8.8
>
>Note that it doesn't point to /usr/local/bin/perl
>
>>How do I tell PERL and PERL apps where to find the stuff?
>
>@INC
?
I deleted perl5.8.2 and 5.5 pkgs, the re-installed 5.8.5 pkg
>Try running the perl-after-upgrade script:
># which perl-after-upgrade
>/usr/local/bin/perl-after-upgrade
not delivered in the perl5.8.5 pkg, but I found a copy. gives no errors:
Fixed 28 packages (316 files moved, 0 files modified)
Skipped 41 packages
still no success in getting postgrey to start.
in fact, PERL does finally find files, just after looking in about 10
directories, from strace:
stat("/usr/local/lib/perl5/site_perl/5.8.5/mach/File/Spec.pmc",
0xbfbff090) = -1 ENOENT (No such file or directory)
open("/usr/local/lib/perl5/site_perl/5.8.5/mach/File/Spec.pm",
O_RDONLY) = -1 ENOENT (No such file or directory)
stat("/usr/local/lib/perl5/site_perl/5.8.5/File/Spec.pmc",
0xbfbff090) = -1 ENOENT (No such file or directory)
open("/usr/local/lib/perl5/site_perl/5.8.5/File/Spec.pm", O_RDONLY) =
-1 ENOENT (No such file or directory)
stat("/usr/local/lib/perl5/site_perl/File/Spec.pmc", 0xbfbff090) = -1
ENOENT (No such file or directory)
open("/usr/local/lib/perl5/site_perl/File/Spec.pm", O_RDONLY) = -1
ENOENT (No such file or directory)
stat("/usr/local/lib/perl5/5.8.5/BSDPAN/File/Spec.pmc", 0xbfbff090) =
-1 ENOENT (No such file or directory)
open("/usr/local/lib/perl5/5.8.5/BSDPAN/File/Spec.pm", O_RDONLY) = -1
ENOENT (No such file or directory)
stat("/usr/local/lib/perl5/5.8.5/mach/File/Spec.pmc", 0xbfbff090) =
-1 ENOENT (No such file or directory)
open("/usr/local/lib/perl5/5.8.5/mach/File/Spec.pm", O_RDONLY) = -1
ENOENT (No such file or directory)
stat("/usr/local/lib/perl5/5.8.5/File/Spec.pmc", 0xbfbff090) = -1
ENOENT (No such file or directory)
open("/usr/local/lib/perl5/5.8.5/File/Spec.pm", O_RDONLY) = 5
then:
strace -o /var/tmp/strace-pg.txt /usr/local/bin/postgrey --inet=10023
--dbdir=/var/db/postgrey --
user=postgrey --group=postgrey
--whitelist-clients=/etc/postfix/mta_clients_pg_except
--whitelist-recipients=/etc/postfix/to_recipients_pg_except
2008/08/19-04:50:37 postgrey (type Net::Server::Multiplex) starting! pid(29439)
Binding to TCP port 10023 on host localhost
Setting gid to "1003 1003"
Setting uid to "1003"
ERROR: can't create DB environment: No such file or directory (dbdir:
/var/db/postgrey uid/gid: 1003,1003)
ll /var/db/postgrey/*
-rw------- 1 postgrey postgrey - 10485684 Aug 8 01:06
/var/db/postgrey/log.0000000001
-rw------- 1 postgrey postgrey - 1082490880 Aug 17 08:36
/var/db/postgrey/postgrey.db
-rw------- 1 postgrey postgrey - 0 Dec 8 2006
/var/db/postgrey/postgrey.lock
-rw------- 1 postgrey postgrey - 10862592 Aug 17 08:36
/var/db/postgrey/postgrey_clients.db
More information about the freebsd-questions
mailing list