Create a large file on top of a regular file system. The easiest way to
do this is probably with dd(1), using a command like:
where <size> is the size from the relevant line in buffindexed.conf.
This is the simplest method, but has the disadvantage that very large files on regular file systems can be fairly slow to access, particularly at the end of the file, and INN incurs unnecessary file system overhead when accessing the buffer.
Use block devices directly. If your operating system allows you to call
mmap() on block devices (Solaris and recent versions of Linux do, FreeBSD
at last report does not), this method can avoid all of the native file
system overhead. Note, however, that Solaris has problems with byte range
locking on block devices, and therefore this method should not be used on
Partition the disk. If youre using Solaris, set up your partitions to avoid the first cylinder of the disk (or otherwise the buffindexed header will overwrite the disk partition table and render the buffers inaccessible). Then, create device files for each block device youre going to use.
Its not recommended to use the block device files in /dev, since the news system doesnt have permission to write to them and changing the permissions of the system device files may affect something else. Instead, use mknod(1) to create a new set of block devices (in somewhere like pathspool/overview thats only writable by the news user). To do this, run ls -Ll on the devices in /dev that correspond to the block devices that you want to use. The major and minor device numbers are in the fifth and sixth columns (right before the date), respectively. Then run mknod like:
where <filename> is the path to the device to create (matching the <filename> part of the buffindexed configuration line) and <major> and <minor> are the major and minor device numbers as discovered above.
Heres a short script to do this when given the path to the system device file as an argument:
Make sure that the created files are owned by the news user and news group, as specified at configure time (the default being news for both). Also make sure that the permissions on the devices allow the news user to read and write.
Written by Katsuhiro Kondou <firstname.lastname@example.org> for InterNetNews. Converted to POD by Russ Allbery <email@example.com>.
$Id: buffindexed.conf.pod 9925 2015-08-08 17:05:43Z iulius $
expireover(8), inn.conf(5), inndf(8), makehistory(8).
|INN 2.6.0||BUFFINDEXED.CONF (5)||2015-09-12|