|
|
SWATを使えば、Webmin(翻訳記事)に似たわかりやすいWebインタフェースを通じてSambaサーバのあらゆる面を設定できる (実際にWebminを使っているなら、「Servers」→「Samba Windows File Sharing」を選択してハンマーの形をしたSWATアイコンをクリックすればSWATが起動する)。
| Sambaにとっての朗報 |
|---|
| 先月までは、Microsoftがドキュメントを共有化していなかったので、Sambaに関するあらゆる作業はWindowsの関連ドキュメントに頼らずに行う必要があった。そのため、Linuxは最新のSMB実装に対して遅れを取り、その動作を保証できないことが多かった。しかし、2007年9月にヨーロッパにおける反トラスト法訴訟(と再抗告)に敗れたことで、MicrosoftはSMBプロトコルの公開を義務づけられた。今やSamba開発者たちはSambaを正規のSMBプロトコルに100%準拠した形で作り上げることができ、LinuxユーザはWindowsが利用しているのとまったく同じ機能を利用することが可能になったのだ。 |
SWATの機能のなかでは、Sambaの基本的な設定がすばやく行えるウィザードが特に興味深い。SWATではすべてのパラメータについて状況に応じたヘルプ(manページから直接取得される)が表示され、接続およびユーザの現在の状態を確認することもできる。また、Sambaスイートとの統合により、利用可能なすべてのパラメータは常に最新のものになっている。
確かにSWATは便利だが、これからSambaを学ぼうという人の役には立たない。SWATを使うにはSambaについて知っておく必要がある。生半可な知識で使うとかえって痛い目を見るおそれがある。
インストールと設定
かなり古いバージョンのものでない限り、SambaにはSWATが付随しているため、Sambaが稼働していればSWATもインストールされているはずである。SWATが使えるかどうかをチェックするには、「swat --help」というコマンドを実行すればよい。また、以下のコマンドを使ってSWATを見つけ出すこともできる。
# whereis swat swat: /usr/sbin/swat /usr/share/man/man8/swat.8.gz # find / -name swat /etc/webmin/samba/swat /etc/xinetd.d/swat /usr/sbin/swat /usr/share/samba/swat
「/usr/sbin/swat」ファイルがSWATの実行プログラムである (私が使っているのはopenSUSE 10.3なので、ほかのディストリビューションでは別の場所にSWATがインストールされている可能性がある)。なお、「/etc/webmin/samba/swat」というファイル(rootでのみアクセス可能)はWebminがインストールされている場合にしか存在せず、WebminはこのファイルにSambaのユーザおよびパスワード情報を保存する。さらに、xinetd経由でSWATを利用できるように「/etc/xinetd.d/swat」を編集する必要がある。rootになり、このファイルを以下のように編集する。
# SWAT is the Samba Web Administration Tool.
service swat
{
port = 901
groups = yes
socket_type = stream
protocol = tcp
wait = no
user = root
server = /usr/sbin/swat
only_from = 127.0.0.1
log_on_failure += USERID
disable = no
}
「server」の行には、先ほどのwhereisまたはfindで見つかったSamba実行プログラムのパスを記述する。多くのディストリビューションではデフォルトでSWATが無効になっているため、最後の行は「disable=yes」となっていることが多い。また、私の環境では、このファイル内に「port」と「groups」の行がなかったので、追加する必要があった。編集を終えて「/etc/init.d/xinetd restart」と実行すれば、SWATの実行準備は完了だ。
注意: 古いシステムでは、xinetdの代わりにinetdが用意されていることがある。その場合は「/etc/inetd.conf」ファイルを探し、そこに次のようなエントリを追記する必要がある。
# swat is the Samba Web Administration Tool swat stream tcp nowait.400 root /usr/sbin/swat swat
編集した内容を有効にするには、「/etc/init.d/inetd restart」を実行する。