## page was renamed from DJB/netqmail/man/qmail-pw2u = DJB/netqmail/man/qmail-pw2u = <> <> = qmail-pw2u(8) = qmail-pw2u : passwd ファイルから [[../../qmail-users]] 形式のアドレス対応表(assignment)を作る 使い方 {{{ qmail-pw2u [ -/ohHuUC ] [ -cchar ] }}} == 説明 == '''標準入力'''からV7形式のパスワードファイルを読み込み、 '''標準出力'''に qmail-users形式の対応表を書く。 V7形式のパスワードファイルとは各行が以下の形式をした行の集まりである。 user:password:uid:gid:gecos:home:shell userはアカウント名、uidとgidはそのアカウントのuser idとgroup idである。 また、homeはホームディレクトリである。 password, gecos, shellなどは無視される。 == qmail-lspawn == qmail-pw2uの出力を'''/var/qmail/users/assign'''に書き出し、[[../qmail-newu]]を実行しておくと、(訳注: cdb形式) qmail-pw2uの 出力した割り付け([[../assignments]])に従って [[../qmail-lspawn]]が配送する。 [訳注] spam 分離にはqmail-pw2uの出力のままでは機能不足を感じて、assignを手直しして使っている。-- ToshinoriMaeno <> 警告: passwdファイルのuser, uid, gid, ホームディレクトリなどを 変更した場合には qmail-pw2uとqmail-newuを実行して、 qmail-lspawnが変更を読み取れるようにすること。 == RULES == qmail-pw2uは以下のように qmail-getpwと同様のルールに従った処理をする。 以下のどれかに当てはまるユーザは対象としない。 {{{ uidがゼロである ホームディレクトリが存在しない ホームディレクトリの持ち主ではない 大文字を含んでいる }}} 各ユーザ(user)はuserというアドレスのほか、user-anythingという 形のアドレスすべてを制御するようになる。 aliasはその他のすべてのアドレスを受け取り、制御する。(訳注:これもassignmentsでの指定) == 特別ファイル == '''/var/qmail/users/ ディレクトリ'''に以下のファイルを作れば、以下の機能が使える。 * include 許可されたユーザ, 一行にひとり。 includeがあったとき、書かれていないユーザはいなかったものとして扱われる。 alias は含まれている必要がある。(ないと: qmail-pw2u: fatal: unable to find alias user) * exclude 無視されるユーザ,一行にひとり。 excludeがあったとき、そこに書かれたユーザはいなかったものとして扱われる。 * mailnames ユーザの別名。 各行は以下の形である。 user:mailname1:mailname2:... mailname1, mailname1-ext, mailname2 などなどへのメイルは userに配信される。 注意: userや user-extあても受け取りたい場合には mailnameのうちにuserを含めておかなければならない。 userが存在しない場合にはその行は無視される。 * subusers 追加のアドレス。各行は以下の形である。 sub:user:pre: subあてのメイルはhome/.qmail-preの指示に従う。 ここでhomeはuserのホームディレクトリである。 sub-extあてはhome/.qmail-pre-extが指示する。 * append 追加のassignment。qmail-pw2uの出力の最後に付け加えられる。 これだけでは機能不足。とくにalias周辺。 == オプション == {{{ -o (Default.) ホームディレクトリが存在しないか、あるいは読めないユーザは無視する。 ホームディレクトリの持ち主がユーザ自身でない場合も無視する。 -h ホームディレクトリが存在しない時は中断する。 全ユーザがホームディレクトリを持っているはずの場合に使うのがよい。 ホームディレクトリの持ち主が違っているユーザは無視される。 -H ホームディレクトリの存在や持ち主を検査しない。 -U (Default.)ユーザ名に英大文字を含むユーザは無視する。 -u ユーザ名に英大文字を許す。 -cchar 拡張アドレス区切り文字に"-"でなく、charを使用する。 -C 拡張アドレス機能を使わないようにする。 -/ (拡張アドレスに対して) home/.qmail-...の代わりに home/.qmail-/...を使う。 }}} ---- qmail-users(5), qmail-lspawn(8), qmail-newu(8), qmail-getpw(8)