目次
Samba Web siteからSambaソースファイルを
入手できる。開発バージョンのSambaは、Subversionかrsync
を使って
入手できる(訳注:現在はgit)。
Sambaは公開された環境で開発されている。開発者はGITを使って、新しい ソースコードを「checkin」(「commit」としても知られる) する。この章は、 Using Git for Samba Development page Samba Wikiサイトを参照のこと。
pserver.samba.org
も、
unpacked
というSambaのサイトの所から、Subversionツリーのほとんどの部分のパックされてない
コピーをエクスポートでき、また、
rsync
という、Sambaの匿名rsyncサーバー経由でも同じようにできる。ftpよりはrsyncの方が、
rsyncはデータを圧縮転送できるのでお勧めであり、また、抜けているデータのみを
転送出来るという、部分更新が出来て、オーバーヘッドが少ないという点でもお勧めで
ある。rsyncについてのより詳細な情報は、
the rsync home page
を参照のこと。
アンパックされたツリーの欠点は、GITのように、ローカルな変更の自動マージを
サポートしないと言うことである。rsync
によるアクセスは、
初期導入に最も便利である。
インストールする前に、任意のソースファイルのPGP署名を検証することを強く推奨する。 ミラーサイトからダウンロードしていないとしても、PGP署名の検証は、標準的な習慣と すべきである。多くの人は現在PGPの代替としてGNU GPGツールを使っている。GPGは PGPの代わりとして使える。
そんなわけで、以下のようにしてファイルをダウンロードする:
$
wget http://samba.org/samba/ftp/samba-latest.tar.asc
$
wget http://samba.org/samba/ftp/samba-latest.tar.gz
$
wget http://samba.org/samba/ftp/samba-pubkey.asc
最初のファイルはSambaソースファイルのPGP署名である。もう1つはSambaの公開PGPキーそれ自身 である。以下のようにしてPGPキーをインポートする:
$
gpg --import samba-pubkey.asc
そして、Sambaソースコードの正当性を以下のようにして検査する:
$
gzip -d samba-latest.tar.gz
$
gpg --verify samba-latest.tar.asc
もしも、「Good signature from Samba Distribution Verification Key...,」 というようなメッセージが表示されたならば、すべて問題はない。信頼性の関係についての 警告は無視して良い。以下のような表示が出たら問題である:
gpg: BAD signature from 「Samba Distribution Verification Key」
バイナリを構築するためには、ソースディレクトリの最上位で、
./configure
プログラムを動かす。これは、使用している
OS用にSambaを自動的に設定する。もしも特別な要求があるならば、最初に
以下のように起動しても良いだろう:
root#
./configure --help
これは、どのような特別なオプションが有効に出来るかの一覧を表示する。その後、
必要な任意の引数を付けて、./configure
を実行する:
root#
./configure
[... arguments ...]
root#
make
一度コンパイルが成功すると、以下のようなコマンドを実行することで、 バイナリとマニュアルページをインストールできる:
root#
make install
ADSをサポートするようにSambaをコンパイルするためには、以下のものをシステムに インストールする必要がある:
MIT あるいは Heimdal Kerberos開発ライブラリ (ソース、あるいはパッケージからのどちらかからインストール)
OpenLDAP開発ライブラリ。
もしも、使用しているKerberosライブラリが標準でない位置にあるならば、
以下のconfigure オプションを追加するのを忘れないこと。
--with-krb5=
.
DIR
configrue を実行後、生成されたbin/default/include/config.h
が、
以下のような行を含んでいるかを確認する:
#define HAVE_KRB5 1 #define HAVE_LDAP 1
もしもそうでない場合、configureはインストールされているKRB5ライブラリか
LDAPライブラリを見つけるのに失敗している。なぜそうなったかを
bin/config.log
をみて確認して修正する。
Red Hat Linuxでは、少なくとも:
krb5-workstation (for kinit)
krb5-libs (for linking with)
krb5-devel (because you are compiling from source)
を標準開発環境に追加する必要があることを意味する。
もしも、使用しているシステム上にこれらのファイルがインストールされて いないならば、どこにそれらがあるかをインストールCDでチェックすべきであり、 使用しているツールにあわせてインストールする。もしもどのツールが使っている かが分からない場合は、Red Hat Linuxのドキュメントを参照すること。
SuSE Linuxはバイナリパッケージを構築する事が出来るのに必要とされるだろうHeimdal パッケージをインストールする。使用しているシステム上に、開発ライブラリが インストールされているかを調べるべきである。
SuSE Linux のSamba RPMはKerberosをサポートする。SuSE Linux固有の設定に関連する 情報は、使用しているSuSE Linuxシステムのドキュメントを参照して欲しい。さらに、 SuSEは使用可能な機能を最大限提供するように、Sambaパッケージのメンテナンスをとても 頻繁に行っている。使用可能な、SuSEが提供しているパッケージの使用について考慮 すべきである。
smbd, winbindd と nmbdの起動を、デーモンかinetd
からの起動のどちらかにするかを選ぶ必要がある。両方同時に行ってはいけない!
inetdによって必要時に起動するように、
inetd.conf
にそれらを記述するか、コマンドラインか、
/etc/rc.local
に記述することで、デーモンとして起動できる。
コマンドラインオプションの詳細についてはマニュアルを参照のこと。どのユーザーで
Sambaを起動する必要があることについての部分を注意深く読むこと。ほとんどの場合、
rootで起動する必要がある。
推奨される、デーモンによる方法を使ってsmbd と nmbdを開始することの利点は、 最初の接続要求時に、若干より迅速に反応すると言うことである。
サービスをデーモンとして起動するには、startsmb
という、
下記のようなスクリプトを作成すべきである。
#!/bin/sh /usr/local/samba/sbin/smbd -D /usr/local/samba/sbin/winbindd -D /usr/local/samba/sbin/nmbd -D
chmod +x startsmb
でこれを実行可能にする。
手動か、/etc/rc.local
からstartsmb
を
実行することが出来る。
これを停止するには、プロセスnmbd と smbdにkillシグナルを送る。
もしも、SVR4形式のinitシステムを使っているならば、そのシステムにSambaを
適合するように、examples/svr4-startup
スクリプトを
みてやってもよいだろう。
Sambaの起動の手順の概要を以下で説明する。Sambaを起動する前に、Sambaの
smb.conf
をきちんと設定しておくこと。設定後、以下のようにしてSambaを
起動する:
root#
service smb startroot#
service winbind start
このステップで nmbd, smbd と winbinddを起動する。
システムが再起動したときに、自動的にこれらのサービスが再起動するようにするには、 以下を実行する:
root#
chkconfig smb onroot#
chkconfig winbind on
Sambaは毎再帰同時に自動的に起動するようになる。
Novell SuSE Linux 製品は自動的にすべての基本的なSambaコンポーネントを既定値の
インストール作業でインストールする。smb.conf
ファイルを設定後、以下を行う
事でSambaを起動する:
root#
rcnmb startroot#
rcsmb startroot#
rcwinbind start
以下のコマンドを実行後、Sambaはシステム再起動後に自動的に起動する:
root#
chkconfig nmb onroot#
chkconfig smb onroot#
chkconfig winbind on
これで、Sambaサーバーはシステム再起動後に自動的に起動する。