歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux綜合 >> Linux資訊 >> 更多Linux

Linux中新聞組服務器和客戶端的使用

  一、 安裝新聞組服務器

  本文介紹的INN(InterNetNews)新聞組服務系統誕生於1990年底,是由Rich Salz([email protected])等27位網絡高手聯合研制、開發並不斷完善和維護的,可運行於Linux操作系統與UNIX操作系統中,目前該軟件的最高版本為inn-2.3.5-6。有關INN新聞組服務系統的詳細背景資料,可參閱INN系統的官方網站http://www.isc.org/inn.Html。下面介紹在Linux系統中建立INN(InterNetNews)新聞組服務系統的方法。INN服務器端有四種存儲方法可供選擇。

  tradspool:在INN 2.0之前就已經使用的存儲方式。文章以單獨的文件存儲,並分布在基於新聞組名的目錄中。這種存儲方式非常簡單,並且很多第三方的INN插件依賴這種存儲方式。缺點是效率不高。

  timehash:文章也是以單獨的文件存儲,但是目錄名依據文章的時間而確定。這就保障了一個目錄下不會存在有過多的文件。缺點是依舊沒有解決過多文件操作造成的效率地下,而且文件的存儲方式決定了難以像 tradspool 方式那樣確定某個新聞組的文章數量和手工修改之。

  timecaf:類似於 timehash,文章根據時間分類。不同點是,不再每篇文章一個文件,取而代之的是使用一個文件來存儲。缺點是更難以理解和手工修改服務器端的存儲結構,而且作為一種新的存儲方式,並沒有被廣泛使用和測試。

  cnfs:文章存儲在預先定義好的文件緩沖區中,循環使用文件緩沖區,緩沖區滿則覆蓋前面的文章,因而對於 cnfs 存儲方式,文章的過期設置比較特殊。

  1. 安裝軟件

  可以通過Rat Het Enterprise Linux 4圖形界面下的“添加/刪除應用程序”工具進行安裝。具體方法是,選擇“主選單”→“系統設置”→“添加/刪除應用程序”,在彈出的界面中選中“服務器”→“新聞組服務器”→“標准軟件包”,見圖1。



圖1 INN及其相關軟件包的安裝

  2. INN服務器系統配置

  (1) 設置 news 用戶帳號

  確認系統中包含 news 用戶和 news 組,如果沒有,需要添加:

  $ groupadd news
  $ useradd -g news -d /usr/local/news

  (2) 創建news用戶密碼

    使用passwd命令為news用戶建立密碼,操作如下:

# passwd

Changing passWord for user news.

Changing password for news

(current) UNIX password:

New UNIX password:

Retype new UNIX password:

passwd: all authentication tokens updated sUCcessfully.

  (3) 檢測修改配置文件

   首先使用login out 命令注銷,然後使用news用戶重新登錄系統,使用inncheck命令檢測配置文件見圖2:



圖2使用inncheck命令檢測配置文件

  inncheck 檢查的文件有: active、control.ctl、eXPire.ctl、incoming.conf、inn.conf、moderators、newsfeeds

  overview.fmt、nntpsend.ctl、passwd.nntp。請根據檢測結果的提示修改文件權限:

$ chmod 664 /var/lib/news/active

  (3)建立相關文件

  重新以超級用戶權限登錄系統,在/var/lib/news目錄下產生歷史(history)的文件,

#/usr/lib/news/bin/makehistory

在/var/lib/news目錄下建立history.dir history.hash history.index

#/usr/lib/news/bin/makedbz -i -o

  說明:-o 選項指生成新的 overview 數據庫。如果使用了buffindexed方式的數據庫,在調用 makehistory -O 重新生成 overview 前,先清除現有的 overview 數據。注意只有需要提供客戶端服務的新聞組服務器才有必要建立 overview 數據庫,對於只提供新聞中轉的,無需建立和維護 overview 數據庫。

  把下面的三個目錄及所有的文件和目錄的屬主改為news

# chown -R news.news /var/lib/news /etc/news /var/spool/news

  使用命令“#server innd restart”啟動INN新聞組服務器,如圖3 :



圖3 啟動新聞組服務器

  (5)檢查INN新聞組服務器運行情況:

  使用ps命令檢查INN新聞組服務器運行情況,圖4是進程運行情況。

圖4檢查INN新聞組服務器進程

  (6)使用 telnet 連接服務器 nntp(119) 端口:

  可以用 Ping 程序來驗證與 新聞組服務器的網絡連接性。可以驗證域名系統 (DNS) 是否能夠將計算機名正確解析為 Internet 協議 (IP) 地址。注意一些網絡路由器會始終阻塞 Ping 消息。如果 Ping 未能連接,請嘗試用 Telnet 連接。通常使用telnet連接INN服務器本地端口119查看其運行情況,測試INN新聞組服務器是否正常啟動。如果出現ready 的情況,則表示設定正確。

  三、INN新聞組的管理:

  1.關閉INN服務器

  以root身份登錄,運行"service innd stop"命令。

  或者使用命令:

  ctlinnd shutdown "the reason for stop innd"

  2.添加討論組

  以news身份登錄,運行"ctlinnd newgroup 討論組名稱"命令。

  3.刪除討論組

  以news身份登錄,運行"ctlinnd rmgroup 討論組名稱"命令。

  4.從INN服務器上刪除某一篇帖子

  在管理人員認為需要的情況,可以手工刪除服務器上的任何指定帖子,具體操作步驟如下:

  使用NNTP客戶端軟件(如Outlook Express、Netscape等)登錄INN服務器,復制該需要被刪除帖子的身份號(message-id);

  以news身份登錄INN服務器,運行"ctlinnd cancel 該message-id"命令,即可將該帖子刪除。

  5.新增新聞群組:ctlinnd newgroup exam.nica

  6. 暫停inn 服務器不再接收討論信件,但不中斷已聯機使用者:

  ctlinnd pause "the reason for pause innd"

  7.暫停後繼續:

  ctlinnd go "the reason for pause innd"

  8.重新加載配置文件:

  ctlinnd reload active "the reason for reload the active config file of innd"

  9.備份

  如果想做備份就要備份以下目錄

  /etc/news
  /path/to/bin
  /var/spool/news
  /var/lib/news

  10. 檢查新聞組日志文件

  新聞日志文件在/var/log/news 目錄下。這些日志文件路徑的定義在/etc/syslog.conf的檔案中。重要的錯誤記錄在/var/log/news/news.crit 中,非重要的錯誤儲存在news.err 文件中,一般活動的訊息則記錄在news.notice 文件中。

  四、新聞組的命名規則

  新聞組在命名、分類上有其約定俗成的規則。新聞組由許多特定的集中區域構成,組與組之間成樹狀結構,這些集中區域就被稱之為類別。目前,在新聞組中主要有以下幾種類別:

  Comp:關於計算機專業及業余愛好者的主題。包括計算機科學、軟件資源、硬件資源和軟件信息等。

  sci:關於科學研究、應用或相關的主題,但一般情況下不包括計算機。

  soc:關於社會科學的主題。

  talk:一些辯論或人們長期爭論的主題。

  news:關於新聞組本身的主題,如新聞網絡、新聞組維護等。

  rec:關於休閒、娛樂的主題。

  alt:比較雜亂、無政府的主題,任何言論在這裡都可能被發表。

  biz:關於商業或與之相關的主題。

  misc:其余的主題。在新聞組裡,所有無法明確分類的東西都稱之為misc。

  新聞組在命名時以句點上間隔,通過上面的主題分類,我們可以一眼看出新聞組的主要內容,如comp.dcom.fax,我們即可看出這是一組關於傳真機、調制解調器的新聞組。另外一個新聞組服務系統是DNEWSNewsServer(簡稱DNEWS)是一個功能完整的新聞服務器,它具有新聞服務器的所有功能,而且,還提供了圖形配置界面,簡化了新聞服務器的配置和管理。在此基礎上DNEWS提供了基於web頁面的配置管理方式,管理員可以遠程對服務器進行管理和配置。Dnews可以安裝在Linux /BSD/Unix/Windows系統中,有關DNEWS新聞組服務系統的詳細背景資料,可參閱系統的官方網站。

  五、Linux新聞組客戶端應用

  1. 新聞組客戶端的功能

  新聞組的組成結構呈樹狀等級結構,通常是根據討論的主題或類型分類的。比如說,Linux新聞組通常被安排在alt.os、comp.os.linux或者linux主題下。可以看出,關於Linux操作系統的一些諸如設置、硬件或者X 11 等討論問題都被安排在計算機—操作系統—Linux的主題下。還會發現許多其他的討論問題也是按照這個方法組織安排的。雖然沒有什麼可以保證能夠准確地找到正想查找的討論問題,但是在大多數情況下你還是可以很容易地找到一個討論你感興趣的問題的新聞組的。目前已經出現有幾十種不同的新聞組客戶端軟件傳輸程序和新聞閱讀器程序,還有超過十萬個不同的新聞組。

  所有新聞閱讀器程序都能夠提供下列這些基本的功能:

  訂閱或停止訂閱某個新聞組。

  浏覽消息並閱讀後續消息(線索)。

  直接向消息的作者回復一個郵件消息。

  針對某個新聞組上的消息發布後續評論。

  保存某個消息的內容(通常保存在用戶子目錄中名為News的子目錄中)。

  2. KDE新聞組客戶端軟件使用方法

  KDE 系統自身的桌面環境下的新聞組客戶端軟件是knode,在互聯網子選單下。使用前進行簡單設置即可。圖5是設置界面,這裡我們主要輸入新聞組服務器名稱以及自己的賬戶和使用端口號即可。

 圖5  knode設置界面

  除了必備的新聞閱讀功能外,knode可以使用監視功能時你需要根據你感興趣的關鍵字建立相應的監視項目,這樣knode便會開始幫助你對新聞標題或描述進行掃描,只要與提供的關鍵字有關的文章,監視器都會將其提取到相應監視項目。knode工作界面6。

圖6  knode工作界面

  另外KDE環境還內置了一個新聞組客戶端Knewsticker。圖7是Knewsticker設置界面,它已經內置了許多熱門新聞組地址,也可以自己添加。

圖7 Knewsticker設置界面

  除了必備的新聞閱讀功能外,Knewsticker可以使用監視功能時你需要根據你感興趣的關鍵字建立相應的監視項目,這樣Knewsticker便會開始幫助你對新聞標題或描述進行掃描,只要與提供的關鍵字有關的文章,監視器都會將其提取到相應監視項目。可以說,這個功能就像是一個幫你整理資料的貼心小秘書一般好使。

  3.其他Linux 新聞組客戶端軟件

  新聞組客戶端應用軟件的另一種存在形態就是以組件形式整合在浏覽器中,例如mozilla和opera浏覽器,都包含新聞組浏覽功能。在郵件客戶端集成新聞組客戶端也成了一種流行趨勢。thunderbird“雷鳥”和Evolution是自帶新聞組客戶端閱讀的郵件客戶端。另外slrn和tin都是設計基於命令行的Linux新聞組客戶端應用軟件,目前已經出現有幾十種不同新聞閱讀器程序,由於Linux下新聞組軟件非常多,限於篇幅這裡提供一些主要軟件的相關軟件琏接:

  Slrn:http://slrn.sourceforge.net/

  Evolution:http://www.gnome.org/projects/evolution/

  Emacs:http://www.gnu.org/software/emacs/ 。

  NewsReader:http://www.newsreaders.com/

  Pan:http://pan.rebelbase.com/

  Pine:http://www.washington.edu/pine/getpine/linux.html

  Tin:http://www.linux-tin.org/

  Knode:http://knode.sourceforge.net/

  opera:http://www.opera.com/

  krn:http://kent.dl.sourceforge.net/sourceforge/krn/

  總結:新聞組是一個使用T C P協議的簡單協議。客戶發出ASCII命令(服務器支持超過2 0種不同的命令),服務器的響應先是響應碼,然後跟著一行或多行的應答,最後以只包含句號的行結束(如果響應是可變長度)。類似其他的互聯網協議,NNTP協議本身已多年沒有變化。到此為止我們對於Linux、windows下新聞組服務器和客戶端的使用方法基本結束了。




Copyright © Linux教程網 All Rights Reserved