Samba 4 Compile Ubuntu 12.04
Install dependencies
apt-get -y install build-essential libacl1-dev libattr1-dev libblkid-dev libgnutls-dev libreadline-dev python-dev python-dnspython gdb pkg-config libpopt-dev libldap2-dev dnsutils libbsd-dev attr krb5-user libkrb5-dev ntp acl krb5-kdc curl libcups2-dev libpam-dev libssl-dev
Get Source
mkdir -p src/arch
cd src/arch/
wget ftp://ftp.isc.org/isc/bind9/9.9.2-P1/bind-9.9.2-P1.tar.gz
wget http://samba.org/samba/ftp/stable/samba-4.0.3.tar.gz
Install Bind
cd ~/src
tar xzf arch/bind-9.9.2-P1.tar.gz
cd bind-9.9.2-P1/
./configure --with-gssapi --with-dlopen=yes --prefix=/usr/ --sysconfdir=/etc/named --localstatedir=/var/named
make
make install
useradd bind
curl http://pastebin.com/raw.php?i=VnYMgAqQ | tr -d '\015' > /etc/init.d/named
chmod 755 /etc/init.d/named
update-rc.d named defaults
Install Samba 4
cd ~/src
tar xzf arch/samba-4.0.3.tar.gz
cd samba-4.0.3/
./configure --enable-selftest --prefix=/usr/ --sysconfdir=/etc/ --localstatedir=/var/samba --enable-fhs
make
make install
curl http://pastebin.com/raw.php?i=etbsyCkQ | tr -d '\015' > /etc/init.d/samba4
chmod 755 /etc/init.d/samba4
update-rc.d samba4 defaults
/etc/init.d/named
- /etc/init.d/named
#! /bin/bash
#
# named Bring up/down named service
#
# chkconfig: - 90 10
# description: Activates/Deactivates all named interfaces configured to \
# start at boot time.
#
### BEGIN INIT INFO
# Provides: named
# Required-Start: $remote_fs $syslog
# Required-Stop: $remote_fs $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Start daemon at boot time
# Description: Enable service provided by daemon.
### END INIT INFO
# Source function library.
export NAMEDPATH="/usr/sbin/named"
export NAMEDOPTIONS="-u bind"
export NAMEDPID="/var/named/run/named/named.pid"
if [ -f /etc/sysconfig/named ]; then
. /etc/sysconfig/named
fi
CWD=$(pwd)
prog="named"
start() {
# Attach irda device
echo -n $"Starting $prog: "
${NAMEDPATH} ${NAMEDOPTIONS}
sleep 2
if [ "`ps ax | grep -v \"grep\" | grep ${NAMEDPATH}`" != "" ] ; then echo -n "succuess"; else echo -n "failure"; fi
echo
}
stop() {
# Stop service.
echo -n $"Shutting down $prog: "
if [ -f ${NAMEDPID} ]
then
kill "`cat ${NAMEDPID}`"
fi
sleep 2
if [ "`ps ax | grep -v \"grep\" | grep ${NAMEDPATH}`" = "" ] ; then echo -n "succuess"; else echo -n "failure"; fi
echo
}
# See how we were called.
case "$1" in
start)
start
;;
stop)
stop
;;
restart|reload)
stop
start
;;
*)
echo $"Usage: $0 {start|stop|restart}"
exit 1
esac
exit 0
/etc/init.d/samba4
- /etc/init.d/samba4
#! /bin/bash
#
# samba4 Bring up/down samba4 service
#
# chkconfig: - 90 10
# description: Activates/Deactivates all samba4 interfaces configured to \
# start at boot time.
#
### BEGIN INIT INFO
# Provides: samba4
# Required-Start: $remote_fs $syslog
# Required-Stop: $remote_fs $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Start daemon at boot time
# Description: Enable service provided by daemon.
### END INIT INFO
# Source function library.
export SAMBA4PATH="/usr/sbin/samba"
if [ -f /etc/sysconfig/samba4 ]; then
. /etc/sysconfig/samba4
fi
CWD=$(pwd)
prog="samba4"
start() {
# Attach irda device
echo -n $"Starting $prog: "
${SAMBA4PATH}
sleep 2
if [ "`ps ax | grep -v \"grep\" | grep ${SAMBA4PATH}`" != "" ] ; then echo -n "succuess"; else echo -n "failure"; fi
echo
}
stop() {
# Stop service.
echo -n $"Shutting down $prog: "
killall samba
sleep 2
if [ "`ps ax | grep -v \"grep\" | grep ${SAMBA4PATH}`" = "" ] ; then echo -n "succuess"; else echo -n "failure"; fi
echo
}
status() {
${SAMBA4PATH} --show-build
}
# See how we were called.
case "$1" in
start)
start
;;
stop)
stop
;;
status)
status irattach
;;
restart|reload)
stop
start
;;
*)
echo $"Usage: $0 {start|stop|restart|status}"
exit 1
esac
exit 0