> What's the output of `ulimit -n` and `lsof -p $(lei daemon-pid)`?
🖳  ulimit -n
1024

🖳  ps -ef |grep lei-daemon
root      861005       1  0 19:24 ?        00:00:00 lei-daemon
/tmp/lei-0/5.seq.sock
louis    1025477 1015489  0 22:22 pts/6    00:00:00 grep --color=auto lei-daemon

~
🖳 sudo  lsof -p 861005
COMMAND      PID USER   FD      TYPE             DEVICE SIZE/OFF    NODE NAME
lei-daemo 861005 root  cwd       DIR               0,34      246
2902791 /home/louis/Mail/linux-bpf
lei-daemo 861005 root  rtd       DIR               0,34      158     256 /
lei-daemo 861005 root  txt       REG               0,34    15984
746278 /usr/bin/perl
lei-daemo 861005 root  mem       REG               0,32
746278 /usr/bin/perl (path dev=0,34)
lei-daemo 861005 root  mem       REG               0,32
669987 /usr/lib64/libstdc++.so.6.0.30 (path dev=0,34)
lei-daemo 861005 root  mem       REG               0,32
654072 /usr/lib64/libgcc_s-12-20221121.so.1 (path dev=0,34)
lei-daemo 861005 root  mem       REG               0,32
707780 /usr/lib64/libxapian.so.30.12.1 (path dev=0,34)
lei-daemo 861005 root  mem       REG               0,32
744976 /usr/lib64/perl5/vendor_perl/auto/Data/Dumper/Dumper.so (path
dev=0,34)
lei-daemo 861005 root  mem       REG               0,32
2847838 /usr/lib64/perl5/vendor_perl/auto/Search/Xapian/Xapian.so
(path dev=0,34)
lei-daemo 861005 root  mem       REG               0,32
670001 /usr/lib64/libz.so.1.2.12 (path dev=0,34)
lei-daemo 861005 root  mem       REG               0,32
670059 /usr/lib64/libsqlite3.so.0.8.6 (path dev=0,34)
lei-daemo 861005 root  mem       REG               0,32
1142922 /usr/lib/locale/locale-archive (path dev=0,34)
lei-daemo 861005 root  mem       REG               0,32
746285 /usr/lib64/perl5/auto/Sys/Hostname/Hostname.so (path dev=0,34)
lei-daemo 861005 root  mem       REG               0,32
670032 /usr/lib64/libuuid.so.1.3.0 (path dev=0,34)
lei-daemo 861005 root  mem       REG               0,32
2846948 /usr/lib64/perl5/vendor_perl/auto/Compress/Raw/Zlib/Zlib.so
(path dev=0,34)
lei-daemo 861005 root  mem       REG               0,32
2848056 /usr/lib64/perl5/vendor_perl/auto/DBD/SQLite/SQLite.so (path
dev=0,34)
lei-daemo 861005 root  mem       REG               0,32
748851 /usr/lib64/perl5/vendor_perl/auto/DBI/DBI.so (path dev=0,34)
lei-daemo 861005 root  mem       REG               0,32
745669 /usr/lib64/perl5/auto/attributes/attributes.so (path dev=0,34)
lei-daemo 861005 root  mem       REG               0,32
2847712 /usr/lib64/perl5/vendor_perl/auto/Cpanel/JSON/XS/XS.so (path
dev=0,34)
lei-daemo 861005 root  mem       REG               0,32
2848586 /usr/lib64/perl5/vendor_perl/auto/Linux/Inotify2/Inotify2.so
(path dev=0,34)
lei-daemo 861005 root  mem       REG               0,32
2849070 /usr/lib64/perl5/vendor_perl/auto/Socket/MsgHdr/MsgHdr.so
(path dev=0,34)
lei-daemo 861005 root  mem       REG               0,32
2847193 /usr/lib64/perl5/vendor_perl/auto/Sys/Syslog/Syslog.so (path
dev=0,34)
lei-daemo 861005 root  mem       REG               0,32
745481 /usr/lib64/perl5/vendor_perl/auto/MIME/Base64/Base64.so (path
dev=0,34)
lei-daemo 861005 root  mem       REG               0,32
745670 /usr/lib64/perl5/auto/re/re.so (path dev=0,34)
lei-daemo 861005 root  mem       REG               0,32
745506 /usr/lib64/perl5/vendor_perl/auto/Storable/Storable.so (path
dev=0,34)
lei-daemo 861005 root  mem       REG               0,32
745611 /usr/lib64/perl5/vendor_perl/auto/Encode/Encode.so (path
dev=0,34)
lei-daemo 861005 root  mem       REG               0,32
2849930 /usr/lib64/perl5/vendor_perl/auto/Email/Address/XS/XS.so (path
dev=0,34)
lei-daemo 861005 root  mem       REG               0,32
1143694 /usr/lib64/libm.so.6 (path dev=0,34)
lei-daemo 861005 root  mem       REG               0,32
1143691 /usr/lib64/libc.so.6 (path dev=0,34)
lei-daemo 861005 root  mem       REG               0,32
745650 /usr/lib64/libperl.so.5.36.0 (path dev=0,34)
lei-daemo 861005 root  mem       REG               0,32
2846914 /usr/lib64/perl5/vendor_perl/auto/Digest/SHA/SHA.so (path
dev=0,34)
lei-daemo 861005 root  mem       REG               0,32
745663 /usr/lib64/perl5/auto/File/Glob/Glob.so (path dev=0,34)
lei-daemo 861005 root  mem       REG               0,32
745449 /usr/lib64/perl5/auto/IO/IO.so (path dev=0,34)
lei-daemo 861005 root  mem       REG               0,32
745355 /usr/lib64/perl5/vendor_perl/auto/Socket/Socket.so (path
dev=0,34)
lei-daemo 861005 root  mem       REG               0,32
745492 /usr/lib64/perl5/vendor_perl/auto/List/Util/Util.so (path
dev=0,34)
lei-daemo 861005 root  mem       REG               0,32
745259 /usr/lib64/perl5/auto/POSIX/POSIX.so (path dev=0,34)
lei-daemo 861005 root  mem       REG               0,32
1019649 /usr/lib64/libcrypt.so.2.0.0 (path dev=0,34)
lei-daemo 861005 root  mem       REG               0,32
745556 /usr/lib64/perl5/vendor_perl/auto/Cwd/Cwd.so (path dev=0,34)
lei-daemo 861005 root  mem       REG               0,32
2846928 /usr/lib64/perl5/vendor_perl/auto/Time/HiRes/HiRes.so (path
dev=0,34)
lei-daemo 861005 root  mem       REG               0,32
745427 /usr/lib64/perl5/auto/Fcntl/Fcntl.so (path dev=0,34)
lei-daemo 861005 root  mem       REG               0,32
1143688 /usr/lib64/ld-linux-x86-64.so.2 (path dev=0,34)
lei-daemo 861005 root    0u      REG               0,38        0
3448 /tmp/lei-0/errors.log
lei-daemo 861005 root    1u      REG               0,38        0
3448 /tmp/lei-0/errors.log
lei-daemo 861005 root    2u      REG               0,38        0
3448 /tmp/lei-0/errors.log
lei-daemo 861005 root    3u  a_inode               0,14        0
15364 [eventpoll:4,5,7,8,14]
lei-daemo 861005 root    4u     unix 0x0000000033b859c6      0t0
4095008 /tmp/lei-0/5.seq.sock type=SEQPACKET (LISTEN)
lei-daemo 861005 root    5u     unix 0x000000007a56c532      0t0
4085549 type=SEQPACKET (CONNECTED)
lei-daemo 861005 root    6u     unix 0x00000000c6d0e27b      0t0
4085550 type=SEQPACKET (CONNECTED)
lei-daemo 861005 root    7r  a_inode               0,14        0   15364 inotify
lei-daemo 861005 root    8u  a_inode               0,14        0
15364 [signalfd]
lei-daemo 861005 root   14r     FIFO               0,13      0t0 4098533 pipe
lei-daemo 861005 root   16u     unix 0x00000000557447d0      0t0
4098534 type=SEQPACKET (CONNECTED)
lei-daemo 861005 root   17u     unix 0x00000000f60edd15      0t0
4098535 type=SEQPACKET (CONNECTED)

Above is 54 open sockets. Which seems fine.


Should daemon be running as root, if I intend to only use lei as user?

On Mon, Mar 27, 2023 at 9:32 PM Eric Wong <[email protected]> wrote:
>
> Louis DeLosSantos <[email protected]> wrote:
> > Hello,
> >
> > I'm experimenting with `lei` as a nice search tool for `lore.kernel.org`
> >
> > Everything works fine with the caveat that it seems to break if I'm not 
> > root.
> >
> > When using `lei` as non-root we get this error:
>
> I've never used lei as root nor has any part of public-inbox
> ever been intended to run as root.
>
> > ```
> > E: Linux::Inotify2->new: Too many open files at
> > /usr/share/perl5/vendor_perl/PublicInbox/DirIdle.pm line 40.
> > connect(/run/user/1000/lei/5.seq.sock): Connection refused (after
> > attempted daemon start)
> > ```
> >
> > Any ideas why this may occur? Is `lei` designed to only be ran as root
> > or is Fedora installing perl in an odd fashion which results in root
> > needing to be used?
>
> What's the output of `ulimit -n` and `lsof -p $(lei daemon-pid)`?
>
> (you may need to use `ps -ef |grep lei-daemon` to get the PID
> if lei is broken and using too many FDs, though)
>
> `ulimit -n' is the open file limit, typically 1024 or higher.
>
> If `lsof -p $PID` may reveal a bug in lei which leaves too many
> files open.  lei (especially with inotify on Linux) should use
> far less than 1024.
>
> (FreeBSD may end up using far more open files, but that's a
> different story)

Reply via email to