よくわからないエンジニア

よく分からないエンジニアの日々の記録

よくわからないエンジニア

CentOS7 Sambaをソースインストールする

題名の通りです。LPIC 202対策でSamabaをCentOS7にインストールします。

目次

Sambaの最新版をダウンロード

sambaのサイト(https://www.samba.org/)から最新版をダウンロードします。Current stable releaseが4.6.1だったのでとりあえずそれを入れときます。

# cd /usr/local/src
# wget https://download.samba.org/pub/samba/stable/samba-4.6.1.tar.gz

結構容量大きいです。

sambaの解凍&configure

tarでとりあえず解凍します。

# tar xvfz samba-4.6.1.tar.gz
# cd samba-4.6.1/
# ./configure --help

help見てみます。とりあえずprefix使ってconfigureかけます。
※defaultでも/usr/local/sambaって書いてあるのでいらんかもしれないです。

# ./configure --prefix=/usr/local/samba
Checking for custom code                                                          : Could not find the python development headers
/usr/local/src/samba-4.6.1/wscript:109: error: the configuration failed (see '/usr/local/src/samba-4.6.1/bin/config.log')

怒られました。python-develが無いからだろうか。yumで入れます。

# yum install python-devel
# ./configure --prefix=/usr/local/samba
Checking for gnutls >= 1.4.0 and broken versions                                                : not found
/usr/local/src/samba-4.6.1/source4/lib/tls/wscript:51: error: Building the AD DC requires GnuTLS (eg libgnutls-dev, gnutls-devel) for ldaps:// support and for the BackupKey protocol

今度はgnutlsが無いと怒っているのだろう。指示通り、gnutls-develを入れます。

# yum install gnutls-devel
# ./configure --prefix=/usr/local/samba
Checking for acl_get_fd                                                                         : not found
/usr/local/src/samba-4.6.1/source3/wscript:507: error: ACL support not found. Try installing libacl1-dev or libacl-devel.  Otherwise, use --without-acl-support to build without ACL support. ACL support is required to change permissions from Windows clients.

ACL関連で怒られました。エラー読むとWindowsからパーミッション変えたけりゃ、ACL supportが必要とのことなので、withoutではなく解決する方向で勧めます。

# yum install libacl-devel
# ./configure --prefix=/usr/local/samba
Checking whether ldap_set_rebind_proc takes 3 arguments                                         : ok
/usr/local/src/samba-4.6.1/source3/wscript:703: error: LDAP support not found. Try installing libldap2-dev or openldap-devel. Otherwise, use --without-ldap to build without LDAP support. LDAP support is required for the LDAP passdb backend, LDAP idmap backends and ADS. ADS support improves communication with Active Directory domain controllers.

はい。openldap-develを入れます。

# yum install openldap-devel
# ./configure --prefix=/usr/local/samba
'configure' finished successfully (50.821s)

やったー!

コンパイル&インストール

何も考えずにmake && make installします。

# make && make install
'install' finished successfully (1m51.573s)

とりあえず問題なく入ったっぽいので、今回はここまで。設定は次回↓

www.unknownengineer.net