The Most Common Questions
I don't know if posts are working?
There are two main reasons for posts to fail:
Follow these instructions to figure out where the error is:
Post an item to some local TEST news group, e.g. nz.test, then check the file DNEWS.OUT, this should give one line per message sent 'out' of your system, if this file is empty or gives an error, first consider if the error is from DNews or if it is from the site you are sending items to. Second, look in dnews.log, search for "out:" once you've found the failure message you will probably find more clues just above or below it as to what went wrong.
Another common problem is sending the incoming feed back out to your provider, this clogs up your feed so that local posts almost never get sent. To confirm this problem look in the *.feed,*.send files in the workarea directory, if they contain message ID's that are not local then your EXCLUDE parameter in newsfeeds.conf needs adjusting.
Running DNews for intranet groups only (Standalone DNEWS)
You can run DNews completely 'stand alone'. Here's what to do with the config files - in newsfeeds.conf you should have:
And in dnews.conf you should comment out 'nntp_feeder' and add:
Then create the local news groups. You should start each group with your company name. e.g.
tellnews newgroup netwin.ideas y chris Discussion of new ideas
tellnews newgroup netwin.memo m chris Support news group
Notice 'netwin.memo' is a moderated news group, this means you must add a line to moderators.conf to tell DNews where to send the items to and the line must be added ABOVE the default line at the end of the file, e.g.
And when the moderator posts to 'netwin.memo' they would have to use FreeAgent or some other news reader that allows the 'Approved' header to be added.
Hints for sites with more than 10,000 users
See this page for notes on larger sites
Creating local news groups
You can add groups with the TELLNEWS NEWGROUP command, e.g.
tellnews newgroup here.chat y myname Local group for chatting
On Windows you could do this from the COMMANDS menu in DNews Manager by selecting the NEWGROUP command.
Here is a detailed breakdown of each of the parts of the above command.
here.chat = name of group
y = Normal group (m = moderated)
myname = Just a record of who created the group (one word)
Local group for chatting = description for active.names file.
To stop your local group from being sent upstream, you would change the groups line in your newsfeeds.conf file to exclude the local groups. For example to stop the groups here.chat and all the groups here.secret.XXX from being sent we would change
(note: ! means "not")
On Windows you could do this from DNews Manager by selecting Feeds Out and clicking on $nntp_feeder and amending the groups field as above.
Creating local moderated newsgroups
Let's say your company name is 'Genesis' and you want a local moderated group for announcing major company decisions. Let's call the group "genesis.announce"
First create the moderated group using tellnews (or DNews manager)
tellnews newgroup genesis.announce m theboss Company Announcements
Then add one line to the top of the moderators.conf file. This will cause DNews to send any messages posted to this group to the person who is going to 'moderate' the group.
Lastly you MUST have an SMTP gateway defined in your newsfeeds.conf. You should already have this but check to make sure you do.
Now you are all set. The moderator will receive all posts via email, they must
then add an Approved: header line to the message before re-posting it to the
news group. The "Approved:" header must have exactly the same email address
as in the moderators.conf file, in this case the header would look like "Approved:
The moderation process can be done with DMOD or FreeAgent
Note: You can only do this to your own moderated local groups.
You may wish to use DMOD - a specialized application for this process.
Or, if you prefer, get the FreeAgent news reader. In agent.ini change showallfields to 1, e.g.
Then re-post the article after putting your mail address in the approved header using FreeAgent.
Creating a world-wide news group
There are rules and procedures for creating news groups world wide (otherwise there would be complete anarchy, rather than the partial anarchy we currently have).
For each top level set of groups, e.g. rec.*,alt.*,news.*,biz.* there are different rules and regulations, here are some pointers to help you find out how to do it:
So You Want to Create an Alt Newsgroup
Biz.* Frequently Asked Questions (FAQ)
Or search this index to find the FAQ for the right top level news tree.
Adding a SPOOL, Putting news on more than one drive
With DNews 4 you can add extra spool areas like this: Just mount the new drive somewhere, let's call it "/news2" On NT it might be "h:\news"
Create the directory: mkdir /news2
On unix set it to be owned by news: chown news /news2
Then assuming you have a 3GIG disk, in dnews.conf add:
Then restart dnews. On NT if you try and use a network/shared drive for the spool (which is probably a bad idea) be sure to set the DNews service with a username and password in control panel/services, the username must be one that has access to the networked drive in question.
To use the WEB admin tool type in http://your.news.server:7119 and follow the instructions.
You can use dadmin the windows admin GUI with NT and UNIX versions of DNews, to set this up just use dadmin and click on 'File/Remote...'
DNews on any platform may be controlled remotely - the local machine may be running a different OS to the remote DNews machine. To set this up the local machine must have a copy of the tellnews executable and the tellnews.pass file. The tellnews.pass file is a protected file on the DNews machine used to verify that the correct machine is sending commands.
Copy the dnews.conf, the tellnews.pass and the tellnews executable to the local machine. If you are using a different platform to the one that you are running DNews on then you'll have to download the tellnews executable. The myname in the dnews.conf file must be set to the name or number of the remote machine. On the DNews server the machine that is to be used for remote control must have a read and post entry in the access.conf file.
In the dnews.conf, on the local machine
myname remote.machine.name (this will be correct if you copy the file
from the DNews machine)
workarea d:/dnews/spool (the name of the directory where the tellnews.pass is)
In the access.conf, on the remote machine
remote.machine.name:Read,Post:::* (this is the name of the machine to send commands from)
Setting your EXCLUDE parameter correctly
In newsfeeds.conf you must set your exclude parameter to stop DNews from sending incoming messages back to your feed site. Although with version 4.3 you could use the options "path_max 3" or "onlyposts" to prevent DNews from routing news.
However, ignoring those options, it's best to get the exclude setting correct. Let's assume your feed site is called fastfeed.world.net. You need to find out what it stamps onto news articles, to do this read a news article (and show all headers so you can see the PATH header)
Subject: Sportster Si does not seem to work with TRUMPET
Date: Thu, 26 Oct 1995 22:44:08
X-Newsreader: Trumpet for Windows [Version 1.0 Rev A]
Path: yoursite.com!fast1.world.net!world.net! news.icix.net!esol.intermedia.com
Look thru the path, left to right, and find the first or most generic name for your feed site, in this case 'world.net' looks like the best name to choose. The second or third name in the list is usually correct.
So here is the entry you should put in newsfeeds.conf, you may need the built-in and posting settings as well but that is up to you:
You may need to delete your .feed and .sending files from the spool directory to clear out the backlog of articles queued. The exclude parameter can include wild cards or a list of values, e.g.
Calculating memory use
This is a rough guide to calculating how much memory DNews will use. This is VIRTUAL memory, you don't need this much physical memory (but it will go faster if it does :-)
(Concurrent connections) * 200K
(Articles in history file - see expire processed) * 12
(Spool Gig's) * 1MB
(Max article size accepted) * 2
(Number of news groups) * 100
head_cache (default 200) * 3k
xover_cache (default 3000) * 300
Program static data 4mb
So let's take a smallish system with 20,000 news groups, 10 concurrent connections, 200,000 lines of history data, 1 Gig of spool, 1MB articles.
10 * 200K = 2MB
200,000 * 12 = 2.4MB
1Gig = 1MB
1MB Articles = 2MB
20,000 News groups, = 2MB
head_cache (default 200) * 3k = 600K
xover_cache (default 3000) * 300 = 900K
Program static data = 4mb
Total memory use = 14.9MB
NOTE: you DO NOT NEED THIS MUCH RAM, DNews is designed to deal with multiple full feeds and hundreds of users. If you are running a smaller system you don't need all this as REAL ram, that's what virtual memory is for, it just slows down a little.
If however you are taking a full news feed, and have 100gig of disk and a few hundred concurrent users, then being short of RAM will significantly impact your systems performance, for large full feed systems start with 256MB ram as a 'minimum', memory is probably the cheapest hardware upgrade you can purchase!.
Typically on a small system where you wish to reduce the memory use you need to look at:
History remember setting.
Maximum article size
You can drastically reduce memory use with these settings:
(in expire.conf) remember 4
(in dnews.conf) item_max 200000 (stops large binary items!!!)
(in newsfeeds.conf change your ME feed to only allow groups that really exist in your country-area)
(restart DNews to free up the memory)
As a rule of thumb to avoid calculations with unix and NT, create a 100MB swap/page file as a first step. If you are running a big system, then 200MB would be a wise choice.