aboutsummaryrefslogtreecommitdiff
path: root/ja_JP.eucJP/man/man8/makemap.8
blob: d809083fd211eaf2cbefc86ebe9fb81806ca8b34 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
.\" Copyright (c) 1988, 1991, 1993
.\"	The Regents of the University of California.  All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
.\" are met:
.\" 1. Redistributions of source code must retain the above copyright
.\"    notice, this list of conditions and the following disclaimer.
.\" 2. Redistributions in binary form must reproduce the above copyright
.\"    notice, this list of conditions and the following disclaimer in the
.\"    documentation and/or other materials provided with the distribution.
.\" 3. All advertising materials mentioning features or use of this software
.\"    must display the following acknowledgement:
.\"	This product includes software developed by the University of
.\"	California, Berkeley and its contributors.
.\" 4. Neither the name of the University nor the names of its contributors
.\"    may be used to endorse or promote products derived from this software
.\"    without specific prior written permission.
.\"
.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\"     @(#)makemap.8	8.4 (Berkeley) 7/23/97
.\" jpman %Id: makemap.8,v 1.3 1997/07/26 21:58:03 horikawa Stab %
.\"
.Dd November 16, 1992
.Dt MAKEMAP 8
.Os BSD 4.4
.Sh 名称
.Nm makemap
.Nd sendmail 用のデータベースマップを作成する
.Sh 書式
.Nm makemap
.Op Fl N
.Op Fl d
.Op Fl f
.Op Fl o
.Op Fl r
.Op Fl v
.Ar maptype
.Ar mapname
.Sh 解説
.Nm
は、
.Xr sendmail 8
がキー付きマップを検索する際に用いるデータベースマップを作成します。
これは標準入力から読み込みを行い、指定された
.Ar mapname
に出力を行います。
.Pp
コンパイル方法に依存しますが、
.Nm
は最大 3 種類のデータベースフォーマットを扱います。
扱うフォーマットは
.Ar maptype
で指定します。
.Ar maptype
には、以下のようなものがあります。
.Pp
.Bl -tag -width Fl
.It Li dbm
.Tn DBM
フォーマットマップ。
.Xr ndbm 3
ライブラリが必要です。
.It Li btree
B-Treeフォーマットマップ。
新しい Berkeley
.Xr db 3
ライブラリが必要です。
.It Li hash
ハッシュフォーマットマップ。
同じく
.Xr db 3
ライブラリが必要です。
.El
.Pp
すべてのフォーマットで、
.Nm makemap
は標準入力から空白文字で区切られた 2 つの単語を読み込みます。
最初の単語はデータベースキーで、2番目の単語がその値です。
値が
``%\fIn\fP''
.Pf ( Ar n
は数字)という文字列を含んでいると、sendmail がパラメータ置換を行います。
.Dq %
という文字を含めるには、``%%'' とする必要があります。
空行や ``#'' から始まる行は無視されます。
.Pp
.Ss フラグ
.Bl -tag -width Fl
.It Fl N
文字列の終端記号として、ヌル文字もマップに含めます。
これは、sendmail.cf の ``K'' 行における \-N フラグと一致していなければ
なりません。
.It Fl d
マップ中に重複するキーが存在することを許します。
B-Treeフォーマットマップでのみ可能です。
2 つの同じキーが読まれた場合、両方ともマップに挿入されます。
.It Fl f
通常、キーのなかのすべての大文字(upper case)は、
すべて小文字(lower case)として記録されますが、
このフラグを指定することによってこの動作を行わないように指定できます。
これは、sendmail.cf 中の
\fBK\fP
行における
\-f フラグと一致していなければなりません。
.It Fl o
すでにあるファイルに追加が行われます。
すでに存在するファイルを引数として指定することができます。
.It Fl r
すでに存在しているキーを置き換えます。
通常はすでに入力したキーをさらに繰り返して入力しても、
.Nm
は警告を出力し、データベースには取り込みません。
.It Fl v
処理の内容を詳細に表示します。
.El
.\" この部分の動作確認を FreeBSD2.1.0R にて行なっています。
.\"  Noritaka Ishizumi <graphite@jp.freebsd.org>
このプログラムは、
.Pa sendmail.cf
を作成する際に、キー付きマップを使用する
場合に役に立ちます。
.Pp
FreeBSD で使われている
.Xr sendmail 8
はV8ですから、
.Pa sendmail.cf
を作成
するには、
.Nm cf
(日本では CF と表記されるバージョンがある(CF-3.4W2.tar.gz))を使います。
.Ss 使用例
.Pa /usr/src/usr.sbin/sendmail/cf/cf
に
.Pa .mc
(マスターコンフィギュレーションファイル)があります。このディレクトリで、
各自のマシンにあわせた設定を
.Pa yourhost.mc
に行い、``make yourhost.cf''
とすることで
.Pa yourhost.cf
が作成されます。これを
.Pa /etc/sendmail.cf
などにコピーして使用します(実際に使用する前に、
.Dq sendmail -bt -C./yourhoust.cf
などを実行して
.Pa yourhost.cf
が正しく作成されているかどうかをチェックしてください)。
.Pp
ホスト名だけの名前から、ドメイン名付きの名前へマッピングを
.Nm sendmail
に提供する
方法の記述例を示します。
.Pa yourhost.mc
に以下の記述を含めてください。
.Pp
.Bd -literal -offset indent
LOCAL_RULE_3
R$* < @ $+ > $*         $: $1 < @ $(hostmap $2 $) > $3
.Ed
.Pp
ここで、ローカルルールを定義しています。この内容はヘッダにも反映されます。
さらに、
.Pp
.Bd -literal -offset indent
LOCAL_CONFIG
Khostmap hash /etc/hostmap.db
Kyplocal nis -m hosts.byname
.Ed
.Pp
という記述を加えてください。1行目は、以下の設定がローカルな設定であることを
示しています。2行目が
.Nm makemap
を必要とする例です。3行目は、ホスト名の
マッピングを
.Tn NIS
からとってきます。
.Pp
この設定を利用した
.Pa sendmail.cf
を実際に使うには、
.Pa /etc/hostmap.db
を作成する必要があります。
.Pp
.Bd -literal -offset indent
mercury% cd /etc
mercury% makemap hash hostmap
moon moon.silver-castle.millennium      <- もちろん架空のドメインです
^D                                      <- コントロール D(EOF文字)
.Ed
.Pp
これによって、たとえば、
.Dq tsukino@moon
は
.Dq tsukino@moon.silver-castle.millennium
に変換されます。実際の使い方は、
.Pa .mc
ファイルの設定によって変化します。
.Pa sendmail/cf/README
などを参照してください。
.Sh 関連項目
.Xr sendmail 8
.Sh 歴史
.Nm
コマンドは
.Bx 4.4
から登場しました。