Windowsとファイルを共有する (samba 3.x)

対象プラットフォーム: FreeBSD 7.x / FreeBSD 6.x

はじめに

このページでは、samba 3.xを利用してWindowsとファイルを共有する方法について説明します。

「libiconv」のビルド

samba 3.xでは、ファイル名等に日本語を扱う際に、iconvと呼ばれる外部機能を利用します。
デフォルトのiconvでは、Windows環境での文字コードの一部を扱えないため、これらの文字コードを扱えるよう、「WITH_EXTRA_PATCHES」のknobを付与してmakeします。

インストールはportsを利用して行います。
portsの取得および展開方法については、「最新のportsを取得して展開する」を参照してください。

portsの展開が完了した後、下記手順で「libiconv」をmakeし、インストールします。

「libiconv」のインストール
$ cd /usr/ports/converters/libiconv
$ make config-recursive
$ make install clean -DWITH_EXTRA_PATCHES

完了後、下記方法で「libiconv」が正しくインストールされているか確認してください。

「libiconv」の動作確認
$ iconv -l | grep EUCJP-MS

「EUCJP-MS」が表示されれば、libiconvは正しくmake、インストールされています。

「samba 3.x」のビルド

次に、samba 3.x本体をportsからmakeします。

「samba 3.x」のビルド
$ cd /usr/ports/net/samba3
$ make config-recursive
$ make install clean

途中、make時のオプションを選択する画面が表示されますので、必要なものを適宜チェックしてください。

「smb.conf」の設定

次に、samba 3.xの設定ファイルである「smb.conf」を編集します。
FreeBSDでは「samba.conf」は「/usr/local/etc/」に格納されていますので、エディタで下記の通り編集してください。

「smb.conf」の設定
[global]
   workgroup = kishiro.local
   server string = Samba Server (FreeBSD)
   security = share
   hosts allow = 192.168.16. 127.
   load printers = no
   log file = /var/log/samba/log.%m
   max log size = 50
   passdb backend = tdbsam
   socket options = IPTOS_LOWDELAY
   dns proxy = no
   display charset = EUCJP-MS
   unix charset = CP932
   dos charset = EUCJP-MS

[share]
   comment = Shared Directories
   path = /home/share
   public = yes
   browseable = yes
   writable = yes
   create mode = 777

[ftp]
   comment = Anonymous FTP Directories
   path = /home/ftp
   public = yes
   browseable = yes
   writable = yes
   create mode = 777

[global]セッションでは、すべてのセッションで共有される設定を記載します。
「workgroup」はこのsamba 3.xサーバが参加するワークグループを、「server string」はWindowsのネットワークコンピュータ上で表示されるsamba 3.xサーバの説明を記述してください。

「security」は、samba 3.xのファイルの共有方法についての設定です。
「security=share」とすると、保存するファイルはすべてのユーザで共有され、すべてのユーザで追記、削除が可能になります。

「hosts allow」はこのsamba 3.xサーバに接続を許可するマシンのIPアドレス等を記述します。
「hosts allow=192.168.16. 127.」と記述すると、「192.168.16.0/24」および「127.0.0.0/24」のネットワークに存在するマシンからのみ接続が可能になります。

samba 3.xがsamba 2.xから大きく変更された点として、文字コートの扱いがあります。
「unix charset」は、それぞれsamba 3.xが動作するUNIX OS(この場合はFreeBSD)でのファイル名の符号化方式で、通常「EUCJP-MS」を指定します。
また、「dos charset」は、Windows側で使用される文字コードで、通常「CP932」を指定します。
「display charset」はSWATが表示時に利用する文字コードですので、SWATを使用しない場合には設定しなくても構いません。

次の[share]および[ftp]セッションは、共有用およびFTP用のディレクトリ設定について記載しています。
これ以外のディレクトリの設定が必要な場合は、適宜追加してください。

「inetd.conf」の設定

Linux系のOSでは、samba 3.xをinetd経由で起動する場合があるようですが、FreeBSD環境ではsamba 3.xをスタンドアロンで起動させるのが一般的です。
このため、FreeBSD環境では、「inetd.conf」の編集は不要です。

「inetd.conf」の該当個所(変更不要)
#netbios-ssn    stream tcp    nowait    root    /usr/local/sbin/smbd    smbd
#netbios-ns     dgram udp     wait      root    /usr/local/sbin/nmbd    nmbd

「rc.conf」の設定

最後に、システムの起動時にsamba 3.xが自動的に起動するよう、「/etc」に格納されている設定ファイル「rc.conf」に下記の記述を追記します。

「rc.conf」の設定
samba_enable="YES"

この設定により、システム再起動時にsamba 3.xが自動的に起動するようになります。


あなたの探し物は見つかりましたか?
まさにこれだ 参考になった ちょっと違う これじゃない
何かコメントがあればお願いします


目次に戻る

image