系统及相关软件版本说明:
操作系统:CentOS 7
samba源码:v-4-9-stable
[root@bogon ~]# uname -a
Linux bogon 3.10.0-957.el7.x86_64 #1 SMP Thu Nov 8 23:39:32 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
[root@bogon etc]# cat redhat-release
CentOS Linux release 7.6.1810 (Core)
最新稳定版samba源码版本为v-4-10-stable ,该版本要求安装Python3。
yum install -y jansson-devel.x86_64 gpgme-devel.x86_64 libarchive-devel.x86_64
yum install attr bind-utils docbook-style-xsl gcc gdb krb5-workstation \
libsemanage-python libxslt perl perl-ExtUtils-MakeMaker \
perl-Parse-Yapp perl-Test-Base pkgconfig policycoreutils-python \
python-crypto gnutls-devel libattr-devel keyutils-libs-devel \
libacl-devel libaio-devel libblkid-devel libxml2-devel openldap-devel \
pam-devel popt-devel python-devel readline-devel zlib-devel systemd-devel \
lmdb-devel python-gpgme
yum install python34-devel python-devel python-ipaddr.noarch -y
yum -y install libacl-devel.x86_64 pam-devel.x86_64
部分依赖包无法直接安装,可能需要使用指令查找该包具体可安装的版本,例如:
[root@bogon samba-4.9-stable]# yum search gpgm
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
* base: mirror.jdcloud.com
* centos-gluster6: mirror.jdcloud.com
* epel: mirrors.yun-idc.com
* extras: mirror.jdcloud.com
* updates: mirror.jdcloud.com
============================================================================================= N/S matched: gpgm ==============================================================================================
gpgme-devel.i686 : Development headers and libraries for gpgme
gpgme-devel.x86_64 : Development headers and libraries for gpgme
kf5-gpgmepp.x86_64 : C++ wrapper and Qt integration for GpgMe library
kf5-gpgmepp-devel.x86_64 : Development files for kf5-gpgmepp
gpgme.i686 : GnuPG Made Easy - high level crypto API
gpgme.x86_64 : GnuPG Made Easy - high level crypto API
pygpgme.x86_64 : Python module for working with OpenPGP messages
名称和简介匹配 only,使用“search all”试试。
[root@bogon samba-4.9-stable]#
使用git从github上下载samba源码:
git clone --recursive -b v4-9-stable https://github.com/samba-team/samba.git samba-4.9-stable
--recursive表示递归下载该项目依赖的其它的代码仓,-b v4-9-stable表示下载v4-9-stable版本分支。下载源码至samba-4.9-stable文件。
分别执行以下指令,若执行过程中没有报错,则安装成功,samba默认的安装路径了/usr/local
./configure
make
make install
进入/usr/local目录可以看到samba安装成功:
[root@bogon samba-4.9-stable]# cd /usr/local/
[root@bogon local]# ls
bin etc games include lib lib64 libexec python3 samba sbin share src
[root@bogon local]# cd samba/
[root@bogon samba]# ls
bin bind-dns etc include lib lib64 private sbin share var
配置文件放置在该目录下,默认无smb.conf文件,需手动创建:
/usr/local/samba/etc/smb.conf
#smb.conf默认是没有的需要手动创建,示例在安装包samba-4.5.2/examples/smb.conf.default
在smb.conf中添加以下的内容
[global]
workgroup = MYGROUP
server string = Samba Server
server role = standalone server
log file = /usr/local/samba/var/log.%m
max log size = 50
dns proxy = no
[homes]
comment = Home Directories
browseable = no
writable = yes
这段配置默认把用户的home目录共享
新建用户
[root@localhost ~]#useradd test
更改samba用户密码,注意用户密码和samba用户密码不是同一个密码
[root@localhost ~]# /usr/local/samba/bin/smbpasswd -a test
关闭防火墙
[root@localhost ~]# systemctl stop firewalld
启动samba
[root@localhost ~]# /usr/local/samba/sbin/smbd
[root@localhost ~]# /usr/local/samba/sbin/nmbd
在其他主机输入已设置samba共享设备的IP地址,例如:
\\192.168.123.129\
可以看到已经创建并设置共享的test账户