  Offline-News-mini-HOWTO
  y 떫 <tsuchiya@pine.kuee.kyoto-u.ac.jp>
  v0.0.4, 24 September 1999

  ́̕Agnspool  nntpd g킹AȂɂĂ͎
  XNvgƂɂAȒPȃj[XT[o[\z悤Ƃ
  ݂ɂċLqłB

  1.  ͂߂

  gnspool găj[X荞݁Amnews  NSPL [hŋLǂފ
  ͑ωKłBƂ낪AD(1PC)ĂāAɂ
  j[Xǂ܂ƌ̂łB

  INN+suck łꂪô͒mĂ܂ȀO fj.os.linux
  Ńj[X̋t̂Ă̂ŁȂ𓥂݂܂B܂AINN
  ͌lŎgɂ̓I[o[XybNƌƂłB

  ŁAyāAȒPɐݒ肪oāANNTP VXe͂ȂƖ
  ʁA gnspool+nntpd łꂪo邱Ƃ𔭌܂B̕
  ͂̐ݒ̋L^łB

  1.1.  

  gnspool ɂĐt@ĆA{I C-News ̃TuZbg
  ȂĂ܂BāAnntpd ́AƂ C-News Ƒgݍ킹 NNTP
  Server 邽߂̃f[łBŁA2gAȂ
  ͑̃R}hXNvgŕ₤ƂɂāAȒPȃj[XVXe
  \Bꂪ̊̕{jłB

  ̃j[XVXe̗_ƂẮA

  o  ݒ肪ȒP

  o  t̂ɂ߂ċNɂ

     _ƂẮA

  o  [Jj[XO[vȂ

  o  XOVER R}h삵Ȃ

  o  ŃVFXNvg Perl ̃XNvgKv

     Ȃǂł傤B

  1.2.  ̑̕ΏۂƂȂl

  Ȃ̃TCgŁAj[Xwǂ悤ƂllŁAAj
  [Xwǂ悤Ƃ}V1䂾Ȃ΁AItCŃj[Xw
  ǂ邱ƂɑΉj[X[_[gȒPŕ֗ȉ@
  傤B̂悤ȃj[X[_[ƂẮAȉ̂悤Ȃ̂
  B

  o  gn <http://www.omronsoft.co.jp/~yamasita/gn/> + gnspool

  o  slrn <http://space.mit.edu/~davis/slrn.html> + slrnpull

  o  Gnus <http://www.gnus.org/> + gnus-offline

     ܂Aẽj[X[_[ gnspool g킹@L͂łB
     ̂悤ȑg킹ƂẮA

  o  mnews + gnspool

  o  Gnus + gnspool

     Ȃǂ܂B̕@ɂẮAgn ̕thLgɏڍ
     ȏ񂪋LqĂ܂AQlɂĉB

  ԌڑŃj[XǂނƂ̏oj[X[_[ɂĂ̊Ȍ
  ȃT}[
  <http://fjsearch.jaist.ac.jp:8000/cgi-bin/netnews?ckr6o6.upd.ln@sou.nerv.org>
  ܂B

  ł́Aj[Xwǂ镡̐l݂A܂́Aj[Xwǂ
  }V݂ꍇɂ͂ǂׂł傤B̏ꍇ́A
  leafnode ̗plׂłBQlɂȂ肻 URL ȉɗ񋓂
  Ă܂B

  o  Leafnode <http://wpxx02.toxi.uni-
     wuerzburg.de/~krasel/leafnode.html>

  o  News Leafsite mini HOWTO <http://www.linux.or.jp/JF/JFdocs/News-
     Leafsite.html>

  āA{ɂ̕ǂނׂĺAǂ̂悤Ȑlł傤B

  o  j[XVXe̍ו܂ŁAD݂ɐݒ肵lB܂Â
     ɂ́AXNvg肵čHvԂɂ܂ȂlB

  o  j[Xƃ[̓Iȉ􂪗~lB

     ̂悤ȏɓĂ͂܂ĺA̕ǂމl邩m
     B܂A܂ gnspool găj[X荞łĺA
     ȒPɂ̃VXeɈڍs邱Ƃoł傤B

  1.3.  ۏ

  ȂׂAԈႢ̂Ȃ悤ɏłA͊̕Sɖۏ
  łB(ȂɂAM҂ C-News, INN ǂ^pƂ܂B
  ƂłȂԈႢĂ\܂B) Ȃ̐ӔĈƂŗ
  pĉB

  M҂̗pĂ OS  Linux-2.0.29 ŁA Slackware-3.1 x[
  XɂȂĂ܂B̕łÅOƂĂ
  m܂B̂悤ȕ͓KXǂ݂ėpĉB

  ԈႢ̎wEAA̘AAzAȂǂ͑劽}łB

  1.4.  Ĕzzɂ

  ́̕AGNUʌṕuo[W2v͂ȍ~̓Kȃo
  [ŴꂩIčĔzz邱Ƃo܂B

  1.5.  XV

  ́̕AMessage-ID: <5iqtm4$36m@ns.h.kyoto-u.ac.jp> ̋L
  <http://fjsearch.jaist.ac.jp:8000/cgi-bin/netnews?5iqtm4%2436m%40ns.h.kyoto-u.ac.jp>ɁA
  AhoCXȂǂĉM̂łB

  o  e From ɂĉM

  ɁAMessage-ID: <5l434n$li6$2@tetoron.imel.kyoto-u.ac.jp> ̋L
  <http://fjsearch.jaist.ac.jp:8000/cgi-bin/netnews?5l434n%24li6%242%40tetoron.imel.kyoto-u.ac.jp>
  ǉ܂B

  o  impost ɊւLq

  o  ϐɂ듮삪Nɂ悤ɂ

  1.6.  eiX̕

  ̍̕ŏ̃o[ẂA1997N5ɏ܂B̍A͂
  삯o Linux [U[łB2N̊ԂɁALinux  INTERNET 
  芪͌IɕωAPPP ȂǂɂԌڑ Linux g
  Ƃ͂͂╁ʂɂȂ܂B܂Â悤ȊŃ[j[X
  p邽߂ Tips Lxɒ~ςĂ܂B̂߁A̕̕Kv
  ͂͂wǂȂȂAƕM҂͍lĂ܂B

  ]āAM҂͂̃̕eiXAAIɕ܂B
  A̕ǂ܂ꂽ̖炩ȊԈႢ̎wEǂ̒Ăɂ
  ́Afo葱łB܂Ã̕eiX
  pł΁Ał̕񋟂Ǝv
  B

  2.  pӂ

  ȉ̃\[XKvłB

  o  gn-1.35.tar.gz

  o  nntp-1.5.11tp-linux.tgz

     gn ̃z[y[ẂAhttp://www.omronsoft.co.jp/~yamasita/gn/
     <http://www.omronsoft.co.jp/~yamasita/gn/>łBnntp-1.5.11tp
     ́Asunsite  Linux/system/daemons Ōł傤B{
     ́Aftp://ftp.spin.ad.jp/pub/Linux/system/daemons/
     <ftp://ftp.spin.ad.jp/pub/Linux/system/daemons/> ȂǂŃ~[
     ܂B
     [. gn ̍ŐVo[W 1.40 ɂȂĂ܂B̕ɋLq
     Ă@ŃCXg[邱ƂA܂o悤łAȈ
     ȕ@񋟂Ă܂BڍׂɂẮAthLgQƂ
     ĂB]

  3.  news [U[̍쐬

  ̕ŏЉj[XVXéAnews [U[̌Ŏs邱
  Ƃz肵Ă܂B[U[ news ݂Ȃꍇ͍쐬邩AK
  ǂ݂ĉBAϐ NNTPSERVER, NEWSLIB, NEWSSPOOL S
  ̂̐ݒɖȂ悤CĉB /etc/passwd ł́A
  悤ɂȂĂ܂B

  ______________________________________________________________________
  news:*:9:13:news:/usr/lib/news:
  ______________________________________________________________________

  ɁA gnspool gĂl͗vӂłBgnspool  root 
  sĂꍇ́AXv[fBNg active, history Ƃ
  t@C̏L҂ news.news ɕύXĂKv܂B

  ______________________________________________________________________
  chown -R news:news /usr/lib/news
  ______________________________________________________________________

  4.  gnspool

  ̏͂ł́Agnspool ̃CXg[AL̎荞݂̐ݒɂĉ
  ܂BɁA gnspool gĂĺAKɓǂݔ΂ĉB

  4.1.  CXg[

  KȃfBNgɁAgn-1.35 ̃\[XWJ܂BLinux p
  Makefile ́A gn-1.35/mkfiles/unix/linux ƂOŗpӂĂ܂
  ̂ŁARs[ĉB

  gn  config vÓACXg[̃fBNg`FbN
  ̂ŁAɕKvȃfBNgĂ܂B

  ______________________________________________________________________
  mkdir /var/spool/news
  mkdir /usr/lib/news
  mkdir /usr/lib/news/bin
  mkdir /usr/lib/news/man
  ______________________________________________________________________

  ɁAgn-1.35/src/ Ɉړ configur s܂B

  configur ̎sɃCXg[Ȃǂ̎w߂܂B͎̂
  ɂ܂B

  ______________________________________________________________________
  BINDIR = /usr/lib/news/bin
  MANDIR = /usr/lib/news/man
  NEWSSPOOL = /usr/spool/news
  NEWSLIB = /usr/lib/news
  MAIL_KANJI_CODE = JIS
  PROCESS_KANJI_CODE =    JIS
  FILE_KANJI_CODE = JIS
  DISPLAY_KANJI_CODE =    JIS
  NEWSRC = ~/.newsrc
  ______________________________________________________________________

  ܂A̐ݒ site.def ύX邱ƂɂĂύXł܂B
  A site.def ύX́AKAconfigur Ďs܂傤B

  ̌Amake ; make install ΁AKvȃt@CCXg[
  ͂łB

  4.2.  j[X荞ނ߂̐ݒ

  ̂悤ȓe /usr/lib/news/.gnrc 쐬܂B.gnrc ̐ݒ@̏
  ׂɂẮAgn(1) QƂĉB

  ______________________________________________________________________
  NNTPSERVER      news.server
  NAME            Hoge Hoge
  DOMAINNAME      mydomain.or.jp
  ORGANIZATION    dokoka
  GENERICFROM     1
  UNSUBSCRIBE     all,!fj.os.linux
  ARTICLE_LIMIT   0
  ARTICLE_LEAVE   0
  SELECT_LIMIT    0
  GNSPOOL_LANG    EUC
  AUTHOR_COPY     /dev/null
  NEWSRC          ~/.newsrc
  ______________________________________________________________________

  ̎ẃAfj.os.linux ݂̂荞ނƂwłB̎wɂ
  āAj[XT[o[ɑ݂ f.o.l ̋LSăXv[Ɏ荞
  ܂BNAME, DOMAINNAME, AUTHOR_COPY ̎ẃAj[Xɓe
  ɕKvɂȂ܂B̋ŃAʂ̋L荞ނ߂Ȃ莞Ԃ
  ̂ŁAӂĉBݒ肪IA

  ______________________________________________________________________
  su news -c "/usr/lib/news/bin/gnspool -g -h news.server"
  ______________________________________________________________________

  ƃR}h͂܂B̃R}hɂāA/var/spool/news ̉ɋL
  荞܂A/usr/lib/news/active Ă͂łB

  듮邽߁ANNTP Server ̓R}hCŖIɎw肵ĉ
  B gnspool ́A.gnrc ̐ݒϐ NNTPSERVER D悵܂B
  ɁA su R}h݂͌̊ϐp܂B]āAϐ
  NNTPSERVER ݒ肳ĂԂŏL̃R}h𔭍sƁAӐ}
   NNTP Server ɐڑ邱Ƃ蓾܂B̃XNvgp
  gnspool  .gnrc ̎w邱Ƃł܂B

  ______________________________________________________________________
  #!/bin/bash
  export NEWSLIB=/usr/lib/news
  export NEWSSPOOL=/var/spool/news
  gnrc=$NEWSLIB/.gnrc
  export NNTPSERVER=$(/usr/bin/awk '/^NNTPSERVER/ {print $2}' $gnrc)
  /usr/lib/news/bin/gnspool -g
  ______________________________________________________________________

  ϐ NEWSLIB, NEWSSPOOL ̐ݒĂ܂A͂܂Ȃ
  ݂Ȃ̂łB

  /usr/lib/news/.gnrc Ɏ̐ݒƁA㗬̃j[XT[o[ŃL
  ZꂽL[JXv[ɑ݂ꍇA̋L
  ɂȂ܂B

  ______________________________________________________________________
  REMOVE_CANCELED 1
  ______________________________________________________________________

  Ȃ킿A㗬j[XT[o[ɂăRg[bZ[W
  Expire:, Supersedes: Ȃǂ̃wb_ꂽʂɒǐ܂B

  A㗬j[XT[o[ expire o߂[J̋L
  cĂꍇɂ́A̕@͎g܂B

  Message-ID ɂ錟ł悤ɂɂ́A/usr/lib/news/.gnrc ɁA

  ______________________________________________________________________
  USE_HISTORY     1
  ______________________________________________________________________

  ƂsĉB̍sƁA/usr/lib/news/history 
  悤ɂȂ܂B

  5.  nntpd

  ̏͂ł́Anntpd ̃CXg[AݒAgnspool, gninews Ƃ̘AWɂ
  ĉ܂B

  5.1.  CXg[

  KȃfBNg nntpd ̃\[XWJ܂B

  ܂Anntp.1.5.11t/common/conf.h ҏW܂BɃfBNg֌W
  ݒ́Agnspool ł̐ݒƖȂ悤ɂȂ΂Ȃ܂B͎
  ̂悤ɂ܂B

  ______________________________________________________________________
  #define DBM
  #undef DBZ
  #define CNEWS
  #define GHNAME
  #undef  UUNAME
  #define STAT_FILE      "/usr/lib/news/mgdstats"
  #define NGDATE_FILE    "/usr/lib/news/groupdates"
  #define ACTIVE_FILE    "/usr/lib/news/active"
  #define ACCESS_FILE    "/usr/lib/news/nntp_access"
  #define DISTRIBUTIONS_FILE     "/usr/lib/news/distributions"
  #define NEWSGROUPS_FILE        "/usr/lib/news/newsgroups"
  #define HISTORY_FILE   "/usr/lib/news/history"
  #define INEWS          "/usr/lib/news/inews"
  #define POSTER         "news"
  ______________________________________________________________________

  ftHgł dbz Cug悤ɂȂĂ̂Adbm Cu
  g悤ɕύXĂ܂Bdbz CûĺÂ܂܂ō\
  ܂BύXꍇ́AMakefile ύX܂B

  ftHgł /etc/uucpname QƂăzXg̖O悤
  ȂĂ܂Agethostname() gĉ悤ɕύX܂B

  ҏWIAmake server s nntpd 𐶐ĉB̂
  ł nntp.1.5.11t/server/timer.c ɕύXKvłB124sڂ
  select() ֐Ƃꂽ̂ŁA

  ______________________________________________________________________
  #if 1 /* Was EXECLAN */
      n = select(fileno(stdin) + 1,&readfds, (fd_set*)0, (fd_set*)0, timeout);
  #else
  ______________________________________________________________________

  ƕύX܂B

  ɁAroot ɂȂ /usr/sbin/  nntpd Rs[܂B

  5.2.  j[Xǂނ߂̐ݒ

  /etc/inetd.conf CāAnntpd N悤ɂ܂B1s
  t邩ACĉB

  ______________________________________________________________________
  nntp    stream  tcp     nowait  news    /usr/sbin/tcpd  nntpd
  ______________________________________________________________________

  ɁA/usr/lib/news/nntp_access 쐬܂B̃t@CŁAnntp 
  ANZXzXgݒ肵Ă܂BƂ肠́Â悤
  ݒł悢ł傤B

  ______________________________________________________________________
  default      no    no
  localhost    read  post
  ______________________________________________________________________

  ܂ł̐ݒŃj[Xǂ߂悤ɂȂĂ͂łBϐ
  NNTPSERVER  localhost ɐݒ肵 mnews Ȃǂœǂł݂܂傤B

  ǂ߂Ȃꍇ́Atelnet localhost nntpƂāAĉB
  "Can't talk to you" Ƃꂽꍇ nntp_access ̐ݒ肪ԈĂ
  B /var/log/messages  /var/log/syslog ɃG[̏񂪎cĂ
  v܂̂ŁAQlɂĉB

  5.3.  j[X𓊍e邽߂̐ݒ

  ̂悤ȓẽXNvg /usr/lib/news/inews 쐬܂B

  ______________________________________________________________________
  #!/bin/sh
  /usr/lib/news/bin/gninews
  ______________________________________________________________________

  ꂾŁAeł悤ɂȂĂ͂łBj[X[_[瓊
  ẽeXgĉBƁA/var/spool/news/news.out/gn?????? Ƃ
  t@CɓeLXv[Ă͂łBɁA

  ______________________________________________________________________
  su news -c "gnspool -py -h news.server"
  ______________________________________________________________________

  s΁AۂɃj[XT[o[ɋLe܂B(̏ꍇ
  ANNTP Server ͖IɎw肵ĉB)

  5.4.  From: sɂ

  gnspool ŋL𓊍eꍇAXv[ From: ͖A.gnrc 
  ݒpĎ̂悤ɕύX܂B
  [. gn-1.40 Xv[ From: g悤 gnspool ɋ邱
  Ƃo悤ɂȂ܂Bgn(1) ̃IvV SUBSTITUTE_HEADER ɂ
  Ă̐QƂĂB̃IvVK؂ɐݒ肷ƁAq
  impost ɗ炸 From: g邱Ƃł܂B]

  ______________________________________________________________________
  From: news@mydomain.or.jp (Hoge Hoge)
  ______________________________________________________________________

  OƃhC .gnrc ̐ݒ肪gAgnspool sĂAJE
  g (news) Ƒgݍ킹āAFrom: 悤ɂȂĂ܂B]
  āAM҂𖾎ꍇ́ASender:  Reply-To: Ȃǂ̃wb_𗘗p
  ĉB

  news@mydomain.or.jp AƂ͊֌WȂl̃[AhXƂȂēs
  ꍇɂ́Aϐ LOGINNAME pł܂BႦ΁Â悤
  XNvgpƁA

  ______________________________________________________________________
  #!/bin/bash
  export NEWSLIB=/usr/lib/news
  export NEWSSPOOL=/var/spool/news
  export LOGINNAME=hogehoge
  gnrc=$NEWSLIB/.gnrc
  export NNTPSERVER=$(/usr/bin/awk '/^NNTPSERVER/ {print $2}' $gnrc)
  /usr/lib/news/bin/gnspool -py
  ______________________________________________________________________

  AJEg̑Ɋϐ LOGINNAME gA

  ______________________________________________________________________
  From: hogehoge@mydomain.or.jp (Hoge Hoge)
  ______________________________________________________________________

  Ƃ邱Ƃł܂B

  5.5.  impost ̗p

  ǂĂ From: gꍇɂ́Aimpost Ƃ Perl ̃XNv
  g܂Bgnspool ̑ɓep̃XNvgƂĎg΁AXv[
   From: gēe邱Ƃo܂BŐVo[W
  0.99i ŁAftp://falcon.econ.kyoto-u.ac.jp/pub/dist/impost/
  <ftp://falcon.econ.kyoto-u.ac.jp/pub/dist/impost/> Ŏɓ܂B
  [ ̍ fj.os.linux ɓeꂽ̋LQlƂď܂B

  o  Message-ID: <5lh4km$s68$1@horse.fsinet.or.jp>

  o  Message-ID: <5lid4e$gvj$1@horse.fsinet.or.jp>

     Ɋӂ܂B ]

  ۂ impost g菇ɂĉ܂Bimpost 
  /usr/lib/news/bin/ ɃRs[ĉB̎A擪s perl ̃pX
  VXeɍ킹ĕύXAs^Ă܂BɁAݒ
  t@C /usr/lib/news/.impostrc pӂ܂B͎̂悤ȓeɂ
  ܂B

  ______________________________________________________________________
  config: default
  option: -SMTPservers mail.server
  option: -NNTPservers news.server
  option: -noESMTP
  option: -NewsPost
  option: -User hogehoge
  option: -Name Hoge Hoge
  option: -NameInComment
  option: -Org dokoka
  option: -FromDomain mydomain.or.jp
  option: -noMsgId
  option: -noDate
  option: -noNScmpl
  option: -noMIMEbcc
  option: -noNewsCheck
  option: -Lines 3000
  option: -JustQueuing
  option: -ObeyHeader
  option: -h
  config: post
  option: -noVerbose
  option: -ProcessQueue
  ______________________________________________________________________

  /usr/lib/news/inews ύXāAgninews ̑ impost N
  悤ɂĂ܂B

  j[X[_[Ƃ mnews 𗘗pĂꍇAbZ[W Path:
  wb_t܂Aimpost  Path: ̂Ă郁bZ[W
  invalid Ȃ̂ƌȂ܂B邽߁Aimpost 275sڕt߂

  ______________________________________________________________________
   && !&header_value("Path")
  ______________________________________________________________________

  ƂsRgAEgĂ܂B

  ŏł͂łBeXgeĂ݂܂傤BItC̏
  œeƁA/usr/lib/news/.imqueue/ ƂfBNgɋLXv[
  ܂B̌A

  ______________________________________________________________________
  su news -c "/usr/lib/news/bin/impost -config post"
  ______________________________________________________________________

  ƂR}h𔭍sƁAۂɋLM܂B

  L̐ݒ impost 𗘗pꍇAwb_͎̂悤ɂȂ܂B

  ______________________________________________________________________
  Newsgroups: test
  Subject: test
  From: someone@myhost.mydomain.or.jp (Someone)
  Path: someone
  X-Newsreader: mnews [version 1.19] 1995-07/21(Fri)
  Organization: dokoka
  Originator: hogehoge@mydomain.or.jp (Hoge Hoge)
  X-Dispatcher: impost version 0.99i (Apr. 6, 1997)
  Lines: 1
  ______________________________________________________________________

  ̓AOrganization:, Originator:, X-Dispatcher:, Lines: ̊ewb_
  impost ɂĕtꂽwb_łBFrom: ɂ͋LŎw肵 From: 
  gAOriginator: ɂēelm肳܂B

