---
name: "snget"
section: "8"
platform: "linux"
package: "sn"
version: "0.3.8-12"
release: "Debian 12 (Bookworm)"
platforms: ["linux"]
url: "https://new.carta.tech/snget"
---

# snget(8)

fetch news from upstream sites and store them locally.

## NAME

snget,sngetd - fetch news from upstream sites and store them locally.

## SYNOPSIS

**snget** \[*options*\] \[*news.group*...\]\
 **sngetd** \[*options*\]\
 *options*: \[-*d*\] \[-*h Bps*\] \[-*p nparallel*\] \[-*c depth*\] \[-*m max*\]

## DESCRIPTION

**snget** fetches articles for the *news.group*s on the command line (or all non-local newsgroups if none are specified) from their respective upstream feeds, and stores them in the news spool /var/spool/sn.  If a newsgroup could not be fetched for, it may be attempted again. **sngetd** does the same, except it reads newsgroup names from /var/spool/sn/**.fifo** and does not exit. **sngetd** does not fork into the background.

**snget** does not guarantee to fetch the groups in the order specified on the command line. **snget** and **sngetd** will write errors and status messages to descriptor 2.

**snget** and **sngetd** are both scheduling wrappers that call /usr/sbin/**SNHELLO**, **snfetch**, and **snstore**. You must own /var/spool/sn or be root in order to run **snget** and **sngetd**.

## OPTIONS

- \-*d*

  Enable verbosity, may be specified multiple times.  This option is also propagated to **snfetch** and **snstore**.

- \-*p nparallel*

  Attempt to fetch for *nparallel* newsgroups at once.  Default is 4, maximum is 8.

- \-*h Bps*

  Throttle the sum of bandwidth used by all **snfetch**es to *Bps* bytes per second.  This option is used to prevent **snget** or **sngetd** from hogging the network.  By default there is no throttling.

- \-*c depth*

  *depth* is passed to **snfetch** as the depth of the command pipeline.

- \-*m max*

  The very first time contacting the news server, retrieve no more than *max* articles per newsgroup, default is 200.  This option is useful only if there are unprimed newsgroups and has no effect otherwise.  The **.max** file in each newsgroup directory still applies (see [**snfetch**(8)](/snfetch/8.md)).

- \-*t timeout*

  This option is not documented because it is ignored and will disappear in a future release.  See **.timeout** in **FILES** next.

## FILES

- **Server Directories**

  These are the directories /var/spool/sn/.outgoing/*server.name:port*, which are symlinked from /var/spool/sn/*news.group*/.outgoing. If the latter isn't a (symlink to a) directory, **snget** won't fetch for *news.group*.

- /var/spool/sn/.outgoing/*server.name:port*/.timeout

  If this file exists and contains a number, this is taken to be the timeout in seconds in all dealings with *server.name:port*. Default is 120 seconds.

- /var/spool/sn/.outgoing/*server.name:port*/.SNHELLO

  If this program file exists, it is invoked instead of the default (usually /usr/sbin/**SNHELLO**) when an NNTP connection is first made to *server.name:port* in order to read the greeting and upload posted articles.  If *server.name:port* requires a username and password, you would copy the default here and edit that information in.

- /var/spool/sn/*news.group*/{.serial,.max}

  **snget** and **sngetd** read these files on behalf of **snfetch**.

## SIGNALS

Other signals have default behaviour.

- **SIGUSR1**

  If -*h Bps* was specified, *Bps* is halved, else is ignored.

- **SIGUSR2**

  If -*h Bps* was specified, *Bps* is doubled, else is ignored.

## ENVIRONMENT VARIABLES

See also /usr/sbin/**SNHELLO** for the list of environment variables exported by **snget**/**sngetd**.

- **SNROOT**

  If this is set and is not empty, the value is used in place of **/var/spool/sn**, the default news spool directory.

- **PATH**

  To find **SNHELLO** (if this server does not have a **.SNHELLO**), **snfetch**, and **snstore**. If **PATH** does not contain /usr/sbin as one of it's components, /usr/sbin is appended to it.

## SEE ALSO

[**snfetch**(8)](/snfetch/8.md), [**snstore**(8)](/snstore/8.md), /usr/sbin/**SNHELLO**
