samba windows与linux互相访问从网络整理而来
一、本机查询是否已安装samba
# rpm -q samba1
二、安装samba
# yum install samb1
三、查询smb和nmb的状态
# /sbin/chkconfig | grep smb# /sbin/chkconfig | grep nmb1
2
四、 配置samba
vi /etc/samba/smb.conf1
[global] deadtime = 0 ;deadtime用来设置断掉一个没有打开任何文件的连接的时间。单位是分钟,0代表Samba Server不自动切断任何连接。 ;将Windows 客户端的文字编码设置为简体中文 GBK dos charset = GBK ;指定Samba所在服务端新建文件或目录时的编码为 GBK unix charset =GBK [fileuser];这个用户可以使用系统中已经存在的用户 comment = fileuser ;设置访问的文件的路径 path = /home/fileuser ; 如果这里指到其他用户的目录下,一定要注意对这个目录的访问权限,否则windows机器上没有访问读写。 自己测试时:chmod -R 775 /home/..... writable = yes ;以下配置解决windows向linux写文件时的权限问题,可以参考() create mode = 0644 force create mode = 0644 directory mode = 0755 force directory mode = 0755
五、 测试配置的参数
# testparm /etc/samba/smb.conf1
六、新增一个用户,用于文件目录查看
# useradd -g dba fileuser1
注意:
1. 如果后期要删除这个用户, 出现用户已登录的提示;需要先关闭smb和nmb的服务
2. 这里的dba要根据实际情况修改
七、设置用户密码
# /usr/bin/smbpasswd -a fileuser1
八、防火墙设置
vi /etc/sysconfig/iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 139 -j ACCEPT-A INPUT -p tcp -m state --state NEW -m tcp --dport 445 -j ACCEPT-A INPUT -p udp -m state --state NEW -m udp --dport 137 -j ACCEPT-A INPUT -p udp -m state --state NEW -m udp --dport 138 -j ACCEPT
九、selinux设置
/usr/sbin/sestatus -v1
如果是关闭的则不需要以下设置# setenforce 0
# vi /etc/selinux/config
将SELINUX=enforcing改为SELINUX=disabled为开机重启后不再执行
# setsebool -Psamba_enable_home_dirs on
# setsebool -Psamba_export_all_rw on
# getsebool -a | grep samba 查看一下
十一、添加到系统服务中
# /sbin/chkconfig --level 2345 smb on# /sbin/chkconfig --level 2345 nmb on
十二、重启服务
#/sbin/service smb restart#/sbin/service nmb restart
十三、 在windows上访问文件在Windows资源管理器输入“\\共享IP地址\共享用户”,输入用户和密码后就可以访问了
示例
注:
这种方法,可以在不同的windows机器下访问用一个linux的文件夹。
十四、linux下访问windows下系统在windows下新建一个用户,这里我用了Administrator
密码为Administrator。 在这个用户共享一个文件夹samba_test。
先在另外一台windows机器上试下,看是否能访问,如果可以访问说明共享正常。
cifs-utils 和samba都要安装(非常重要)
在linux目录下新建
# mkdir /mnt/samba_test# mount -t cifs -o username=Administrator,password=**** //10.1.108.14/samba_test /mnt/samba_test
4.开机自动执行
在/etc/rc.local中加入
mount -t cifs -o username=Administrator,password=**** //10.1.108.14/samba_test /mnt/samba_test
下面是我试验的例子:
注:
不能把windows下的多个目录同进挂到linux下的相同目录,不同子目录可以,即不能多对一。