sambaインストール - Sambaとは(準備)

メモ:

SambaはLinux等でWindowsのファイルサーバやプリントサーバ機能を提供するソフトです。Windows上のExplore等でLinuxのファイルを共有しちゃおうということです。

2004/10/31時点で Samba2.x のサポートが終了しているようなので3.x系をインストールします。3.xで日本語を使用するには、patchをあてたlibiconvが必要となります。

libiconv は、日本語を含む文字コードの変換に使用されます。まず、libiconv,libiconv-patch,samba3.xをダウンロードします。

上記3ファイルを準備します。

sambaのインストール

libiconvを展開します。

$ tar zxvf libiconv-1.9.1.tar.gz
$ cd libiconv-1.9.1
$ zcat ../libiconv-1.9.1-cp932-patch.gz | patch -p1
$ ./configure
$ make
$ su
# make install

これで、libiconvへのパッチ適用とインストールが終了します。

インストールが正常に完了したかを確認します。

$ /usr/local/bin/iconv -l | grep -i EUCJP-MS

実行すると

EUC-JP-MS EUCJP-MS EUCJP-OPEN EUCJP-WIN

表示された行の中に EUCJP-MS があることを確認します。

確認ができたらsambaを展開します。

$ tar zxvf samba-3.0.10.tar.gz
$ cd  samba-3.0.10/source
$ ./configure --with-libiconv=/usr/local --with-pam
$ make
$ su
# make install

設定

ソースを展開したディレクトリのexsampleディレクトリのsmb.conf.Defaultを /usr/local/samba/lib/ へコピーします。

$ cp smb.conf.Default /usr/local/samba/lib/smb.conf

smb.confを編集します。

日本語を使用する場合下記のように追加するとありましたが文字化けしてしましました。

[global]
    dos charset = CP932
    unix charset = EUCJP-MS
    display charset = EUCJP-MS

次に試したのが以下の設定です。

Windows上は問題ないのですが、Linux上が見えませんUTF-8でファイル名が作成されているようです。

[global]
    dos charset = CP932
    unix charset = UTF-8
    display charset = UTF-8

※原因不明なため継続して調べます。

設定1.特定のグループだけがアクセス可能な設定

/var/www を指定されたグループがアクセス可能とするように設定します。あらかじめLinux上のユーザーを作成しておきます。

次にsambaのユーザーを作成します。

# smbpasswd -a ユーザー名

グループの作成と対象ユーザーを所属させます。

# groupadd web
# usermod -G web ユーザー名
(/etc/groupを編集)

ディレクトリの設定を変更します。

#chgrp web www
#chmod 775 www

共有設定をsmb.confへ追加します。

[www]
comment = www DocumentRoot
path = /var/www
writable = yes
create mode = 0664
directory mode = 0775

上記設定を追加します。