需求:ms sql数据库需要进行异地备份,本来打算提供rsync实现windows到linux的同步,但是其中需要改写目录以及设置计划任务,90多台机器运维懒得去适应新用法,于是还是按照他们的习惯用samba实现文件共享,来达到他们直接通过sql server存储过程直接同步到文件服务器上。
实现:
文件共享服务器:10.10.10.9
1.安装samba
yum install samba
service smb start
chkconfig smb on
2.编辑配置文件
[root@caiji-9 samba]# vim /etc/samba/smb.conf [global] workgroup = MYGROUP server string = Samba Server Version %v hosts allow = 10. log file = /var/log/samba/log.%m # max 50KB per log file, then rotate max log size = 50 security = user #user模式,实现用户名密码访问;还可支持share等模式 encrypt passwords = yes #密码加密,默认为yes passdb backend = smbpasswd #密码后台,用smbpasswd加密;还可支持tdb,ladmp等 smb passwd file = /etc/samba/smbpasswd #smbpasswd加密的密码文件所在位置 [caiji_bakcenter] #对外可见共享名称 comment = caiji bak center #共享模块的描述 path = /data/caiji_bak #共享模块的实际路径 browseable = yes #共享是否可见 writable = yes #共享是否可写 printable = no public = no #共享是否匿名可见 valid users = dataget #共享的有效用户 write list = dataget #可写权限的用户
由于我们密码后台使用的smbpasswd,因此使用smbpasswd添加用户即可。
smbpasswd -a dataget
输入密码后,会在/etc/samba下生成smbpasswd密码文件。
注:由于dataget用户在linux系统中不存在,因此会导致smbpasswd -a dataget失败,如:
[root@caiji-9 samba]# smbpasswd -a dataget New SMB password: Retype new SMB password: Failed to add entry for user dataget
另外我们需要将共享目录的属主或权限改一下,chown dataget.dataget caiji_bak或chmod 777 caiji_bak
更改完成后,在cmd中输入\\10.10.10.9,输入用户名密码即可登陆。
ps:1在windows系统中,我们可以利用net use \\10.10.10.9\caiji_bakcenter "密码" /user:IP \"账户" 实现命令行级别的文件共享。
2.此次配置比较简单,并没有涉及到user模式下的匿名访问以及share模式等的介绍,希望能给我们需要这一功能的人快速入门。
原文:http://blog.csdn.net/yanggd1987/article/details/44628591