File Descriptor Limits

INN likes to use a lot of file descriptors, particularly if you have a lot of peers. Depending on what your system defaults are, you may need to make sure the default limit is increased for INN (particularly innd and innfeed). This is vital on Solaris, which defaults (at least as of 2.6) to an absurdly low limit of 64 file descriptors per process.

One way to increase the number of file descriptors is to set rlimitnofile in inn.conf to a higher value. This will cause startinnfeed and inndstart, the setuid root wrapper scripts that start innfeed and innd respectively, to increase the file descriptor limits before they run the regular INN programs. Note, however, that you won't be able to increase the limits above the hard limits set by your operating system; on some systems, that hard limit is 256 file descriptors (Linux, for example). On others, like Solaris, it's 1024. Increasing the limit beyond that value may require serious system configuration work (on Linux, patching and recompiling the kernel; on Solaris 2.6 or earlier, the limit cannot be increased beyond 1024 without breaking select() and thereby breaking all of INN).

256 file descriptors will probably be enough for all but the largest site. There is no harm in setting the limits higher than you actually need (provided they're set to something lower than or equal to your system hard limit). 256 is therefore a reasonable value to try.

If you're installing INN on a Solaris system, particularly if you're installing it on a dedicated news server machine, it may be easier to just increase the default file descriptor limit across the board for all processes. You can do that by putting the line:

    set rlim_fd_cur = 1024

in /etc/system and rebooting.