一、安装
#tar zxvf samba-3.0.24.tar.gz
#cd samba-3.0.24/source
#tar zxvf samba-3.0.24.tar.gz
#cd samba-3.0.24/source
#env CPPFLAGS="-I/usr/local/openldap/include" LDFLAGS="-L/usr/local/openldap/lib" ./configure --prefix=/usr/local/samba --sysconfdir=/etc/samba --with-ldap --with-syslog --with-quotas --with-acl-support --with-automount --with-smbmount --with-libsmbclient
说明:这种编译方式是为了整合LDAP而做了特殊配置,如果你打算启用LDAP,请确保您已经成功安装LDAP;我这里由于是源码安装的LDAP,所以需要指明头文件及库文件的搜索路径;如果你不需要实现此功能,可以把env声明语句去掉而直接从./configure开始,而且还要去掉--with-ldap项。
#make
#make install
#make installbin
#make installman
#cp ../examples/smb.conf.default /usr/local/samba/lib/smb.conf
复制一个主配置文件范例,以使得服务能够启动
# mkdir -pv /var/log/samba
创建日志文件目录
#echo "/usr/local/openldap/lib" >> /etc/ld.so.conf
#ldconfig -v
如果你上面没有选择整合LDAP,此句可以去掉
#/usr/local/samba/sbin/smbd -D
#/usr/local/samba/sbin/nmbd -D
启动服务进程,如果是Windows域成员的话,还要开启以下服务
#/usr/local/samba/sbin/winbindd -B
二、编写启动脚本
也可以以标准服务的形式启动samba,以下是启动脚本
1.建立启动脚本
#vi /etc/init.d/smbd
添加如下内容:
#!/bin/sh
# Source function library.
. /etc/rc.d/init.d/functions
# Source networking configuration.
. /etc/sysconfig/network
# Check that networking is up.
[ ${NETWORKING} = "no" ] && exit 0
# Check that smb.conf exists.
[ -f /usr/local/samba/lib/smb.conf ] || exit 0
RETVAL=0
case "$1" in
start)
echo -n "Starting SMB services: "
/usr/local/samba/sbin/smbd -D -d 3
RETVAL=$?
echo
echo -n "Starting NMB services: "
/usr/local/samba/sbin/nmbd -D -d 3
RETVAL2=$?
echo
[ $RETVAL -eq 0 -a $RETVAL2 -eq 0 ]
RETVAL=1
;;
stop)
echo -n "Shutting down SMB services: "
killproc smbd
RETVAL=$?
echo
echo -n "Shutting down NMB services: "
killproc nmbd
RETVAL2=$?
[ $RETVAL -eq 0 -a $RETVAL2 -eq 0 ]
echo ""
;;
restart)
$0 stop
$0 start
RETVAL=$?
;;
reload)
echo -n "Reloading smb.conf file: "
killproc -HUP smbd
RETVAL=$?
echo
;;
status)
status smbd
status nmbd
RETVAL=$?
;;
*)
echo "Usage: $0 {start|stop|restart|status}"
exit 1
esac
exit $RETVAL
2.修改权限,使其可执行
#chmod 700 /etc/init.d/smbd
3.加入系统服务,使其开机可以自动运行
#chkconfig --add smbd
#chkconfig --level 2345 smbd on
三、启用图形管理界面swat
1.在xinetd中添加服务启动项
#vi /etc/xinetd.d/swat
添加如下内容
service swat
{
port = 901 #指定服务的端口号
socket_type = stream #指定socket的数据传输格式
wait = no
only_from = 0.0.0.0 #指定可以访问此服务的客户端来源为所有机器,像这样设置将非常危险;你可以指定为127.0.0.1或某此特定的IP以限制访问,减少风险。
user = root #启动swat的用户
server = /usr/local/samba/sbin/swat #服务程序的路径
log_on_failure += USERID
disable = no #开启服务
}
2. 编辑/etc/services
请确保你的文件中有以下项
swat 901/tcp
3. 重启xinetd
#service xinetd restart
查看服务端口是否开启
#netstat -tnlp |grep :901
4.打开浏览器,输入以下链接即可访问
[url]http://yourIP:901[/url]
转载于:https://blog.51cto.com/weijia/119817