ここでは Samba をインストールし、構成する手順について説明します。
これ以降のセクションでは、Samba または Winbind の特定のディレクトリを参照します。前の例で示したこれらの参照の一般的なパス名をまとめておきます。これらの例が示されている構成に関する制限事項を参照してください。
Samba を http://www.samba.org から広域ファイルシステムにインストールし、広域ファイルシステムに Samba インスタンスと Winbind がある場合 (例 1–1)
Samba-bin-directory — /global/samba/bin
Samba-sbin-directory — /global/samba/sbin または
/global/samba/bin (Samba がデフォルトの設定値でインストールされている場合)
Samba-configuration-directory — /global/samba/SAMBA1
Winbind-configuration-directory — /global/samba/winbind
Samba を Solaris 9 からローカルファイルシステムにインストールし、Samba インスタンスがフェイルオーバーファイルシステムにある場合 (例 1–2)
Samba-bin-directory — /usr/sfw/bin
Samba-sbin-directory — /usr/sfw/sbin
Samba-configuration-directory — /local/samba/SMB1
次の手順で、Samba をインストールし、構成します。
Sun Cluster における Samba の配備方法を決定 – Samba をどのように配備するかを決定する必要があります。
配備する Samba インスタンス数を決定します。
Winbind を配備するかどうかを決定します。
各 Samba インスタンスと Winbind インスタンス (配備する場合) に使用させるクラスタファイルシステムを決定します。
Samba クラスタファイルシステムのマウント – Sun Cluster における Samba と Winbind の配備方法を決定してから、クラスタファイルシステムがマウントされていることを確認する必要があります。
Samba インスタンスにフェイルオーバーファイルシステムを使用させる場合は、手動でファイルシステムをマウントする必要があります。
Sun Cluster 内の全ノードへの Samba のインストール – Samba は広域ファイルシステムにインストールすることをお勧めします。ローカルファイルシステムにソフトウェアをインストールした場合とクラスタファイルシステムにインストールした場合のメリットとデメリットについては、『Sun Cluster Data Services Installation and Configuration Guide 』の 3 ページ、「Determining the Location of the Application Binaries 」を参照してください。
http://www.samba.org から Samba をダウンロード— /usr/local/samba がクラスタファイルシステムであるか、またはクラスタファイルシステムへのシンボリックリンクであることを確認します。 ただし、Samba ソフトウェアにローカルディスクを使用する場合は、Sun Cluster 内のすべてのノードでこの手順を繰り返す必要があります。
Samba をダウンロードして圧縮を解除 (unzip) したあとで、Samba を Winbind とともにインストールする例を示します。
# cd <samba_install_directory>/source # # ./configure --with-winbind --with-pam # # make # # make install |
または、Solari 9 CD から Samba をインストール — Sun Cluster 内の Samba サービスを稼働させるすべてのノードに、以下のパッケージをインストールする必要があります。
SUNWsmbac
SUNWsmbar
SUNWsmbau
SUNWsfman
障害モニターユーザー用のエントリを作成します。
Winbind を使用しない場合
Sun Cluster のすべてのノードで、/etc/group にエントリを作成します。
# groupadd -g 1000 <fmgroup> |
Sun Cluster のすべてのノードで、/etc/passwd にエントリを作成します。このユーザーにはロックされたパスワードを与えます。シェルとホームディレクトリは与えません。
# useradd -u 1000 -g 1000 -s /bin/false <fmuser> |
Winbind を使用する場合
ホームディレクトリ、ユーザープロファイル、およびログオンスクリプトを指定しないで、NT PDC に障害モニターユーザーを作成します。さらに、Password never expire パラメータを True に、User cannot change password パラメータを True に設定します。
Samba インスタンス (複数可) に必要なディレクトリを作成 – 複数の Samba インスタンスを配備する場合は、Samba インスタンスごとに、すなわちsamba-configuration-directory ごとにこの手順を繰り返す必要があります。 さらに、共有用のディレクトリを作成する必要があります。このディレクトリには任意の名前を指定できます。
# cd <samba-configuration-directory> # # mkdir -p lib logs private shares var/locks |
<samba-configuration-directory> については、構成に関する制限事項 を参照してください。 構成に関する制限事項 の例と以下の例で使用している一般的なパス名の一覧については、Samba のインストールと構成を参照してください。
SAMBA1 と SAMBA2 という 2 つの Samba インスタンスの例を示します。Samba は http://www.samba.org からインストールされていて、/usr/local/samba は広域ファイルシステムとしてマウントされた /global/samba へのシンボリックリンクが設定されています。SAMBA1 の samba-configuration-directory は /global/samba/SAMBA1 です。SAMBA2 の samba-configuration-directory は /global/samba/SAMBA2 です。
# ls -l /usr/local/samba lrwxrwxrwx 1 root other 13 Oct 11 11:20 /usr/local/samba -> /global/samba # # cd /global/samba # # ls -l total 18 drwxr-xr-x 2 root other 512 Oct 11 15:00 bin drwxr-xr-x 3 root other 512 Oct 14 13:49 lib drwxr-xr-x 6 root other 512 Oct 11 15:00 man drwxr-xr-x 2 root other 512 Oct 14 10:05 private drwxr-xr-x 7 root other 512 Oct 14 13:39 SAMBA1 drwxr-xr-x 7 root other 512 Oct 14 13:40 SAMBA2 drwxr-xr-x 6 root other 512 Oct 11 15:01 swat drwxr-xr-x 3 root other 512 Oct 14 10:45 var drwxr-xr-x 2 root other 512 Jan 17 09:28 winbind # # cd SAMBA1 # # mkdir -p lib logs private shares var/locks # # cd ../SAMBA2 # # mkdir -p lib logs private shares var/locks |
要件に基づいて Samba の smb.conf ファイルを作成 — Sun Cluster HA for Samba データサービスは Samba 用のサンプル smb.conf ファイルを提供します。
Sun Cluster の初期インストール時に Sun Cluster HA for Samba パッケージ (SUNWscsmb) をインストールしなかった場合は、Sun Cluster HA for Samba パッケージのインストール を参照してこのパッケージをインストールする必要があります。そのあとでここに戻り、Samba のインストールと構成作業を続けてください。
/opt/SUNWscsmb/samba/etc/smb.conf_sample の内容は Samba 構成ファイルのサンプルです。このサンプルファイルを使用して、独自の Samba インスタンス <samba-configuration-directory>/lib/smb.conf を作成できます。ただし、各自の構成値が反映されるように、ファイルを編集する必要があります。
# cp /opt/SUNWscsmb/samba/etc/smb.conf_sample \ <samba-configuration-directory>/lib/smb.conf |
Winbind コンポーネントをインストールしている場合は smb.conf_sample をコピーしたあとで、<samba-configuration-directory> /lib/smb.conf の global セクションに以下のエントリを追加する必要があります。 以下の値は、smb.conf(5) のマニュアルページに基づいたデフォルト値です。
winbind uid = 10000-20000 winbind gid = 10000-20000 winbind enum users = yes winbind enum groups = yes |
pid directory は、smb.conf_sample の中で指定されているように、<samba-configuration-directory> /var/locks を示さなければなりません。
Samba smb.conf ファイルのテスト — Samba smb.conf ファイルを作成してから、作業を続ける前に構成をテストする必要があります。
# <samba-bin-directory>/testparm \ <samba-configuration-directory>/lib/smb.conf |
NT ドメインメンバーとして構成している場合は、ドメインを結合します。
# <samba-bin-directory>/smbpasswd \ -c <samba-configuration-directory>/lib/smb.conf \ -j <DOMAIN> -r <PDC>\ -U <Administrator on the PDC> |
正常に処理されると、次のメッセージが表示されます。
# smbpasswd: Joined domain <DOMAIN> |
NT PDC として構成している場合、または security = user を指定して構成している場合は障害モニターユーザーを追加します。
# <samba-bin-directory>/smbpasswd \ -c <samba-configuration-directory>/lib/smb.conf \ -a <fmuser> |
現在、Solaris 9 のパッケージに組み込まれている Samba v2.2.2 では、 smbpasswd プログラムが -c パラメータを認識せず、/etc/sfw で smb.conf ファイルを見つけようとします。この問題を回避するには、/etc/sfw/smb.conf から <samba-configuration-directory> /lib/smb.conf へのシンボリックリンクを作成します。複数の Samba インスタンスを配備する場合はシンボリックリンクを削除し、Samba インスタンスごとに手順を繰り返す必要があります。
Winbind インスタンスに必要なディレクトリを作成 – 以下の手順が必要なのは Winbind コンポーネントを使用する場合だけです。それ以外の場合は、以下の手順を省いて Samba のインストールと構成の確認 に進んでください。
Winbind を配備する場合は、winbind-configuration-directory 内に以下のディレクトリとシンボリックリンクを作成する必要があります。
# cd <winbind-configuration-directory> # # mkdir -p lib locks private var # mkdir -p /var/winbind/pid # ln -s /var/winbind/pid var/locks |
<winbind-configuration-directory> については、構成に関する制限事項 を参照してください。構成に関する制限事項 の例と以下の例で使用している一般的なパス名の一覧については、Samba のインストールと構成 を参照してください。
Winbind インスタンスの例を示します。Samba は http://www.samba.org からインストールされており、/usr/local/samba は広域ファイルシステムとしてマウントされた /global/samba へのシンボリックリンクが設定されています。Winbind 用の winbind-configuration-directory は /global/samba/winbind です。
# ls -l /usr/local/samba lrwxrwxrwx 1 root other 13 Oct 11 11:20 /usr/local/samba -> /global/samba # # cd /global/samba # # ls -l total 18 drwxr-xr-x 2 root other 512 Oct 11 15:00 bin drwxr-xr-x 3 root other 512 Oct 14 13:49 lib drwxr-xr-x 6 root other 512 Oct 11 15:00 man drwxr-xr-x 2 root other 512 Oct 14 10:05 private drwxr-xr-x 7 root other 512 Oct 14 13:39 SAMBA1 drwxr-xr-x 7 root other 512 Oct 14 13:40 SAMBA2 drwxr-xr-x 6 root other 512 Oct 11 15:01 swat drwxr-xr-x 3 root other 512 Oct 14 10:45 var drwxr-xr-x 2 root other 512 Jan 17 09:28 winbind # # cd winbind # # mkdir -p lib locks private var # mkdir -p /var/winbind/pid # ln -s /var/winbind/pid var/locks |
要件に基づいて Winbind の smb.conf ファイルを作成 (必要な場合) — Sun Cluster HA for Samba データサービスは、サンプルとして Winbind 用のサンプル smb.conf ファイルを提供します。
Sun Cluster の初期インストール時に Sun Cluster HA for Samba パッケージ (SUNWscsmb) をインストールしなかった場合は、Sun Cluster HA for Samba パッケージのインストール を参照してこのパッケージをインストールする必要があります。そのあとでここに戻り、Samba のインストールと構成作業を続けてください。
/opt/SUNWscsmb/winbind/etc/smb.conf_sample の内容は Winbind 構成ファイルのサンプルです。このサンプルファイルを使用して、独自の Winbind インスタンス <winbind-configuration-directory> /lib/smb.conf を作成できます。ただし、各自の構成値が反映されるように、ファイルを編集する必要があります。さらに、smb.conf ファイルの [global] セクションに以下のエントリを追加する必要があります。
# cp /opt/SUNWscsmb/winbind/etc/smb.conf_sample \ <winbind-configuration-directory>/lib/smb.conf |
smb.conf_sample をコピーしたあとで、以下のエントリを <winbind-configuration-directory> /lib/smb.conf の[global] セクションに追加する必要があります。
smb passwd file = <winbind-configuration-directory>/private lock directory = <winbind-configuration-directory>/locks pid directory = <winbind-configuration-directory>/var/locks |
Winbind コンポーネントをスケーラブルサービスとして動作させる場合は、Winbind の構成ディレクトリを広域ファイルシステムとしてマウントする必要があります。ロックディレクトリを使用してデータベースに登録する Name and ID Resolution については、winbindd(8) のマニュアルページを参照してください。
pid directory は、構成ディレクトリ /var/locksを示さなければなりません。さらに、構成ディレクトリ /var/locks はローカルファイルシステム、すなわち /var/winbind/pid に対するシンボリックリンクであることを確認します。
winbind をネームサービスとして追加 — Sun Cluster HA for Samba データサービスが稼働するすべてのノード上で、/etc/nsswitch.conf の passwd と group に対応するネームサービスとして winbind を追加します。
# grep winbind /etc/nsswitch.conf passwd: files winbind group: files winbind |
シンボリックリンクのコピーおよび作成 — Sun Cluster HA for Samba データサービスが稼働するすべてのノード上で、winbind 用にいくつかのファイルとシンボリックリンクを設定する必要があります。
# cd <samba-install-directory> # # cp source/nsswitch/libnss_winbind.so /usr/lib # # ln -s /usr/lib/libnss_winbind.so /usr/lib/libnss_winbind.so.1 # # ln -s /usr/lib/libnss_winbind.so /usr/lib/nss_winbind.so.1 |
1 つのノードで winbind を起動します。
Samba のインストール方法によって、winbind プログラムは <samba-bin-directory> に置かれる場合と、<samba-sbin-directory> に置かれる場合があります。
# <samba-[s]bin-directory>/winbindd & |
secrets.tdb データベースに入力します。
# getent passwd # getent group |
winbindd を停止します。
# pkill -TERM winbindd |