<vince@halcyon.com>
<ken@gamba.forus.or.jp>
, 播口陽一 <hariguti@kawasaki-steel.co.jp>
注意: この文書はかなり以前に書かれたものなので、 いまどきの Linux 環境にはあてはまらない箇所があります。 (JF Project)
Linux 一般、特に SLS と Slackware 版 Linux で UUCP のソフトウェアを使 用する際に頻繁に現れる質問や意見に答えるのが、この文書の目的です。
以前 comp.os.linux.announce に投稿されていた旧 UUCP-NEWS-MAIL-FAQ の続編が、この UUCP-HOWTO や、メールとニュースの HOWTO 文書です。
この文書の最新版は定期的に comp.os.linux.announce, comp.answers,
news.answers に投稿されます。また
sunsite.unc.edu:/pub/Linux/docs/HOWTO
ディレクトリをそのまま
コピーしている FTP サイトからも取得できます。
さらに、Linux WorldWideWeb のホームページ
http://sunsite.unc.edu/mdw/linux.html
と私のホームページ
http://www.halcyon.com/vince/welcome.html
でこの文書を見つけ
ることができるでしょう。
この文書に関するメールでの意見はどんな物にも感心があります。間違いや追 加して欲しい事があれば私にお知らせ下さい。
私は、受け取るメールは全て読みますが、全部に返事を出す訳ではありません。 暇があるか、変更に価値があるか、その日の血圧はどうか :-)、等を考慮の上 で、この文書を希望に沿って改善します。
お怒りは静かに /dev/null に葬られますので、わざわざ送る意味はありませ んよ。
この文書の構成に関する意見は、HOWTO のまとめ役である Matt Welsh 氏
(mdw@sunsite.unc.edu
) に送って下さい。
UUCP-HOWTO の著作権は Vince Skahan にあります。
そのままの形であれば、いかなる媒体や電子的であろうと、複製や配布に著者 の許可は必要ありません。翻訳についても、だれが翻訳したかを明記していれ ば、同じように許可は必要ありません。
この文書のごく一部をを引用する場合は著者の同意を取ってからでなくてもか まいません。この文書を大幅に書き換えたり、不完全な形で配布する場合には、 原本のコピーか、原本の在処を添付して下さい。
営利目的での再配布も、もちろん許可します。けれども、配布の際には著者に 連絡して下さい。
あらゆる経路を通してこの情報が宣伝促進されることを願っていますが、 HOWTO 文書の著作権も保持したいと思っていますので、 HOWTO の再配布の 予定などは、連絡して下さい。
HOWTO をより良くするための情報であれば、なんでも教えて下さい。もし質問
があれば、 Linux HOWTO のまとめ役である Matt Welsh に連絡して下さい。
連絡は、電子メールであれば mdw@sunsite.unc.edu
に、電話であれ
ば +1 607 256 7372 にお願いします。
もちろん、私は本文書の内容についてのいかなる潜在責任も否認します。本文 書に含まれている概念、例などを使用するのは、全てあなたの責任で行って下 さい。
他の Linux HOWTO 文書や Linux DOC プロジェクトからの文書にも、優れた資 料が多くあります。特に以下のものを読まれるのも良いでしょう。
UUCP に関する質問は大抵 comp.mail.uucp で答えが得られます。
Taylor UUCP のメーリングリストがあります。
参加や脱退は、以下のアドレスに要請のメールを送って下さい。
taylor-uucp-request@gnu.ai.mit.edu
この要請メールはプログラムでなく人が読みますから、メールを受け取るため のアドレスを本文にも必ず書いて下さい。
記事を投稿するには、以下のアドレスに記事のメールを送ります。
taylor-uucp@gnu.ai.mit.edu
HDB 版と V2 版の UUCP の解説は UNIX の通信を扱うほとんどの本はもちろん のこと、各業者(vendor)の文書にも書かれています。
Taylor の設定ファイルの解説は、現在はソースファイルに付属する info ファ イルに記述があるだけです。また SLS 配布にも含まれているかも知れません。 このような解説を読むには、 SLS なら "s" ディスクに含まれる "infosrc" とい うプログラムをコンパイルして使います。
これが全てではありませんが、役立つ本を紹介しておきます。
Managing UUCP and
USENET
" は、USENET に接続する時に使うプログラムやプロトコルを解説
し、市販されている本の中では最高だと思います。
【訳注:日本語訳は「UUCP システム管理」(アスキー)】Unix
Communications
" は、UNIX の通信について、あらゆる事柄がうまく解説
されています。Practical Unix
Security
" は、一般的な UUCP の安全対策について、良く書かれていま
す。
【訳注:日本語訳は「UNIX セキュリティ」(アスキー)】The Internet Complete
Reference
" は、インターネットで利用できるさまざまなサービスの説明
が載っている良い参考書で、ニュース、メール、その他さまざまなインターネッ
トの資源に関する情報を得ることができます。The Linux
Networking Administrators' Guide
" はネットワーク上で入手可能です
し、(少なくとも) O'Reilly と SSC が出版しました。この本には、これまで
Unix ネットワーキングについて知る必要があると思っていたこと全てが書い
てあります。Linux で UUCP を設定して動かすのは(もはや)特別な事ではありません。です から UUCP 一般の質問は comp.os.linux.* には投稿しないで下さい。
本当に Linux に特化した問題でない限り、質問は comp.mail.uucp に投稿す るか、上にも書いた Taylor UUCP メーリングリストを利用して下さい。Linux に特化した質問とは次の様な物です。「SLS 1.02 に入っている Taylor UUCP v1.04 のバイナリはどの設定ファイルを使って作られているんですか。」
もう一度繰り返します。
UUCP に関する質問を comp.os.linux に投稿する理由はもう存在しません。全 ての質問は comp.mail.* で扱っています。
あなたが comp.os.linux.* に Linux に特化しない一般的な質問を投稿したな ら、答えは得られないでしょう。 UUCP のエキスパートは上に書いているニュー スグループしか見ていないでしょうし、大概 Linux は動かしていません。
comp.os.linux.* に Linux に特化しない一般的な質問を投稿しても、あなた の質問の答えを得るために、しばしばあなたや他の人の時間を浪費するだけで す。
Linux の UUCP では、特殊なハードウェアは必要ありません。基本的には Hayes 互換のモデムで問題なく UUCP が動作します。
普通は、買える範囲でできるだけ高速なモデムを使うのが良いでしょう。9600 ボー以上の通信速度を扱うために、シリアルボードかモデム自身に 16550 UART チップが載った物がお勧めです。
上の文がどういう意味かわからない人は、 comp.dcom.modems で聞 くか、モデムやシリアル通信に関する FAQ や USENET の定期的な投稿を読ん で下さい。
Taylor UUCP (最新版は 1.05) は prep.ai.mit.edu
にソースファイ
ルがあります。また、さまざまな Linux の配布版にはバイナリが含まれます。
newspak-2.4.tar.z
には Linux で UUCP、ニュース、メールなどの
ソフトウェアを構築し、動かすための設定ファイルや解説文が入っています。
含まれている文書は自由に使えるものです。これは大抵 sunsite.unc.edu
の /pub/Linux/system/Mail/news
ディレクトリにあります。もし
sunsite
に無い場合は私に電子メールで連絡してください。コピー
を入手できるように手配します。
( この章の大部分は Taylor UUCP 1.05 のソースからそのまま抜き出したもの です。単に「マニュアルを読め」と言うだけでなく、実際にマニュアルを読む ようお手伝いをしようという事です。 )
コンパイル手順の詳細はソースファイル群の uucp.texi ファイルにあります。
Linux で正しく動作する config.h
と policy.h
は「この
文書以外の情報源」の節にも書いた、newspak の書庫(archive)に含まれます。
これら二つのファイルを newspak 書庫から取得した場合は、すぐに "make"
が可能です。
gzip で圧縮してある tar ファイルの展開は、次のように行います。
gunzip -c filename.tar.z | tar xvf -最近の tar であれば、次のようにするだけです。
tar -zxvf filename.tgz
ここで、私は "prefix"
に "/usr/local" でなく "/usr"
を設定しました。
"sh configure"
と打ち込みます。
configure スクリプトは、あなたのシステムで何ができるかを確かめるための 多くの試験用プログラムをコンパイルし、多量の計算を行います。
また、conf.h.in から conf.h
、 Makefile.in から Makefile
を生成します。さらに config.status というファイルが生成されます。これ
はシェルスクリプトで、上記のファイルを実際に生成します。
"configure --prefix=/usr/lib"
私は標準の設定を使いました。
policy.h
を編集し、各自のシステムに設定を合わせます。
"make"
と打ち込みします。"uuchk | more"
と打ち込んで、設定ファイルを確認します。
設定ファイルの形式を変換するには "uuconv"
を使います。"make install"
と打ち込んで導入します。まず、付属の、正しく動作する HDB モードの設定ファイルを導入するようお 勧めします。
Permissions
ファイルには rmail と rnews の正確な場所を記述します。Devices
ファイルと実際のモデムのポートが一致するかを確
認します。( 例えば /dev/cua1 は COM2 です。 )Systems
ファイルを編集し、接続先のシステムのスピード、
電話番号、利用者名、パスワードを設定します。
【注意】このファイルは誰もが見るファイルではありません。適切に保護
して下さい。
Permissions
ファイルを編集し、接続先のサイト毎に設定を
追加します。システムの保護のため、(外部からの呼び出しを受け付けるなら)
各サイト毎に異なったアカウントを設定し、ホームディレクトリも作って、何
かあったかを追跡可能にしておく事をお勧めします。
/usr/lib/uucp/uucico -r 1 -x 9 -s リモートシステム名
-x 9
を使うと、初期設定を支援するデバッグ情報が最大限、
/usr/spool/uucp/.Admin/audit.local
ファイルに出力されます。
私は普段 run -x 4
を使い、ログインの際の問題を解決するための
糸口をログに残しておきます。自明ですが、このファイルには Systems ファ
イルの情報(アカウントやパスワード) があからさまに記述されますから、誰
でも読めるようなアクセス許可ビットは設定しないように注意が必要です。
"tail -f /usr/spool/uucp/.Admin/audit.local"
を実行しましょう。動かない場合は大抵上に示したような資料が参考になります。実際に UUCP を 使っていて経験も豊富な人に質問するのも良いでしょう。いずれにせよ、普通 は打ち間違いのような単純な事です。
(宗教モードに入って言うと:私が「標準になっている」ということについて 宗教的であるのと同じくらい「使いやすい」という事について単に宗教的な人 達がいるのを知っています。だから彼らは独自のバイナリを構築できるソース コードを作ったんです。 :-) )
現在はこれが UUCP の事実上の標準だからだと思います。経験豊富な管理者が いるサイトは何千もありますし、 HDB の設定に関して素晴らしい情報を提供 している所も沢山あります。
SLS の 1.02 以降に含まれる uucp-1.04 は、三種のモードの設定ファイルが 全て内蔵されています。私は試せませんが、解説は読みましたし、Ian Taylor 氏も動くはずだと教えてくれました。
UUCP は Taylor → V2 (L.sys) → HDB の順に設定ファイルを探します。
/usr/lib/uucp の uuconv
プログラムを使うと、各モード間で設定
ファイルを変換できます。
UUCP のソースファイルを取得して、HAVE_BNU_CONFIG
,
HAVE_V2_CONFIG
, HAVE_TAYLOR_CONFIG
を全部 policy.h
に指定し、 "make" するのもいいでしょう。
以下の変更は美しくありませんが、正しく動きます。これは Taylor モードが 内蔵されていないバイナリで Taylor モードを動かすための物です。
"-I /usr/local/lib/uucp/config"
を追加する。
feed Any ACU,ag 38400 5551212 ogin: \c\d "" yourname word: passwd
*** conn.c.orig Mon Feb 22 20:25:24 1993 --- conn.c Mon Feb 22 20:33:10 1993 *************** *** 204,209 **** --- 204,212 ---- /* Make sure any signal reporting has been done before we set fLog_sighup back to TRUE. */ + /* SMR: it seems to me if we don't care about SIGHUPS, we should clear + the flag before we return */ + afSignal[INDEXSIG_SIGHUP] = FALSE; ulog (LOG_ERROR, (const char *) NULL); fLog_sighup = TRUE;
SLS の 匿名 UUCP は、HAVE_TAYLOR_CONFIG を使ってコンパイルされているの で Taylor モードでだけ動作します。 HDB モードで匿名 UUCP する場合は、 HDB だけを定義して再コンパイルして下さい。Ian Taylor 氏はこの「機能」 をどう扱うか考えているところです。
また、HDB モードで Taylor を使うと空白や空行に関して敏感になるようです。 安全のため、Permissions ファイルには行末の空白や空行が含まれないよう気 を付けて下さい。
最後に、/usr/lib/uucp ディレクトリに実行許可の無い
remote.unknown
というファイルあることを確認して下さい。このファ
イルに関する詳細は "Managing UUCP and USENET"
(O'Reilly and
Associates) をご覧下さい。
たぶん存在しないデバイスを /usr/lib/uucp/Devices
で指定したの
でしょう。あるいは /usr/lib/uucp/Systems
で指定したデバイスが
Devices ファイルにあるデバイスと一致していません。
この後に、うちで動いている Taylor 1.05 HDB の設定ファイルから不要な行 を取り除いた物を書いておきますので、試して下さい。
Systems ファイルの "ACU" は、 Devices ファイルのどの「ポート」を使うか を指定します。
Systems ファイルの "scout" は、 Dialers ファイルのどのダイアラを使うか 指定します。
Systems のダイアルコマンドに合う ACU ポートがない場合、このメッセージ が出ます。
HoneyDanBer モードで動作する Linux の Taylor 1.05 用設定ファ イルを以下に示します。0.99.pl8 以降のカーネルで動きます。uucp ライブラ リを他の場所に置くようにソースファイルを変更していなければ、これらのファ イルは全て /usr/lib/uucp に置かれます。
標準でない場所にこれらを置いた場合には、 sendmail の類のプログラムが非 常に混乱をきたす可能性があることを念頭に置いておいてください。全ての通 信関係のプログラムがあなたの「標準」パスに一致するようにしなければなり ません。
バージョン 0.99-7 以前のカーネルを使っているのであれば、 "cua1" を "ttyS1" に変えてください。
#------------- Devices ------------- # make sure the device (cua1 here) matches your system # cua1 = COM2 # # here "scout" is the Digicom Scout Plus 19.2 modem I use # tbfast etc. is for a Telebit Trailblazer Plus modem's various speeds # ACU cua1 - 19200 scout ACU cua1 - 9600 tbfast ACU cua1 - 1200 tbslow ACU cua1 - 2400 tbmed #------------- dialers -------------- # note the setting of the Trailblazer registers "on the fly" # "scout" is a Digicom Scout Plus (Hayes-like) modem I use here # scout =W-, "" ATM0DT\T CONNECT tbfast =W-, "" A\pA\pA\pT OK ATS50=255DT\T CONNECT\sFAST tbslow =W-, "" A\pA\pA\pT OK ATS50=2DT\T CONNECT\s1200 tbmed =W-, "" A\pA\pA\pT OK ATS50=3DT\T CONNECT\s2400 #-------------- Systems ------------- # this is a very generic entry that will work for most systems # # the Any;1 means that you can call once per minute with using -f (force) # the ACU,g means force "g" protocol rather than Taylor's default "i" # fredsys Any;1 ACU,g 19200 scout5555555 "" \r ogin:--ogin: uanon word: uanon #-------------------------------- Permissions ------------------------- # Taylor UUCP in HDB mode appears to be sensitive to blank lines. # Make sure all Permissions lines are real or commented out. # # this is a anonymous uucp entry # LOGNAME=nuucp MACHINE=OTHER \ READ=/usr/spool/uucp/nuucp \ WRITE=/usr/spool/uucp/nuucp \ SENDFILES=yes REQUEST=yes \ COMMANDS=/bin/rmail # # this is a normal setup for a remote system that talks to us # note the absolute path to rnews since this site puts things # in locations that aren't "standard" # LOGNAME=fredsys MACHINE=fredsys \ READ=/usr/spool/uucp/fredsys:/usr/spool/uucp/uucppublic:/files \ WRITE=/usr/spool/uucp/fredsys:/usr/spool/uucppublic \ SENDFILES=yes REQUEST=yes \ COMMANDS=/bin/rmail:/usr/local/lib/news/bin/rnews #----------------------------------------------------------------------
新しい v1.05 の uucico には、リモートシステムの番号を交互に試みる '-z' スイッチが追加されました。
以下の人たちは、この文書を書くに当たって情報を提供してくれました。
Ed Carp, Steve Robbins, Ian Taylor, Greg Naber, Matt Welsh, Pierre Beyssac
抜けている人がいれば、ごめんなさい。