samba構築(3.2.0出たときの記録)

configure前の環境整備
・acl関連
- libacl1 libacl1-dev acl #POSIX ACL support… yes
- mountオプションにacl
・LDAP関連
- libldap2-dev
・kerberos5関連
- libkrb5-dev
ファイルの用意
・本体
- http://us1.samba.org/samba/ftp/stable/samba-3.2.0.tar.gz
・エンコードコンバートライブラリ
- http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.12.tar.gz
- http://www2d.biglobe.ne.jp/~msyk/software/libiconv/libiconv-1.12-ja-1.patch.gz
導入手順例
$ sudo aptitude install libacl1-dev acl libldap2-dev libkrb5-dev
$ wget http://us1.samba.org/samba/ftp/stable/samba-3.2.0.tar.gz
$ wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.12.tar.gz
$ wget http://www2d.biglobe.ne.jp/~msyk/software/libiconv/libiconv-1.12-ja-1.patch.gz
$ tar zxvf libiconv-1.12.tar.gz
$ cd libiconv-1.12
$ gzip -dc ../libiconv-1.12-ja-1.patch.gz | patch -p1
$ sudo vim /etc/ld.so.conf.d/i486-linux-gnu.conf #/usr/local/libがあることを確認
$ sudo ldconfig -v #パッケージで入る/usr/bin/iconvとは違うことに注意。
※森山将之さんありがとうございます。
$ ./configure
$ make; make check
$ sudo make install
$ cd ..
$ tar zxvf samba-3.2.0.tar.gz
$ cd samba-3.2.0/source
$ ./configure --prefix=/usr/local --with-fhs --localstatedir=/var --with-rootsbindir=/usr/local --with-lockdir=/var/lock/samba --with-piddir=/var/run/samba --with-configdir=/etc/samba --with-libiconv=/usr/local --with-syslog --with-quotas --with-winbind --with-utmp --with-acl-support
ここで指定しているオプション
--prefix=/usr/local
 install architecture-independent files in PREFIX
 Defaultだと[/usr/local/samba]になってしまうので。
--with-fhs
 Use FHS-compliant paths (default=no)
 後でわからなくならないように。
--localstatedir=/var
 modifiable single-machine data [PREFIX/var]
 Defaultだとprefix以下になって問題が出たので(registry.tdb位置で)。
--with-rootsbindir=/usr/local
 Which directory to use for root sbin.($ac_default_prefix/sbin)
--with-lockdir=/var/lock/samba
 Where to put lock files.($ac_default_prefix/var/locks)
--with-piddir=/var/run/samba
 Where to put pid files.($ac_default_prefix/var/locks)
--with-configdir=/etc/samba
 Where to put configuration files ($libdir)
--with-libiconv=/usr/local
 Use libiconv in BASEDIR/lib and BASEDIR/include.(default=auto)
 用意したものを使ってもらえるように。
--with-syslog
 Include experimental SYSLOG support (default=no)
--with-quotas
 Include disk-quota support (default=no)
--with-winbind
 Build winbind (default, if supported by OS)
--with-utmp
 Include utmp accounting (default, if supported by OS)
--with-acl-support
 Include ACL support (default=auto)
$ make #warning等、確認のこと。一見普通に終わってますが…どうかな?
$ sudo make install
$ sudo vim /etc/samba/smb.conf #編集
UTF-8環境としたときに動作実績が取れているのは下記内容が必須。
 [global]
 display charset = EUCJP-MS
 unix charset = UTF-8
 dos charset = CP932
$ sudo cp ../packaging/Debian/debian-sarge/samba.init /etc/init.d/samba
$ sudo vim /etc/init.d/samba
#/usr/sbin/nmbdなどのようにスクリプトパスが違うので、編集
$ sudo chmod +x /etc/init.d/samba
$ ldconfig -v #ライブラリに追加されているのでこれが必要libtallocだっけかな
$ sudo /etc/init.d/samba start #これで起動している
#/var/run/samba/にあるpidファイルどおりプロセスが動いていることを確認
xinetdを使用してswatを使う設定
$ sudo vim /etc/xinetd.d/swat #新規作成
service swat
{
disable = no
port = 901
socket_type = stream
wait = no
only_from = 127.0.0.1 192.168.1.0/24
user = root
server = /usr/local/sbin/swat
log_on_failure += USERID
}
$ sudo vim /etc/services
swat 901/tcp # swat<=これを確認 $ sudo /etc/init.d/xinetd restart これでrootでは入れるようになる。 ubuntuの場合、rootでは使えないようになっていると思うので おそらく $ sudo passwd によってパスワードの設定を行わないとユーザー登録が出来ない? Debianならこの設定方法で問題なく使用開始できます。(した)

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です