linux 配置 Samba 共享文件到 windows

4,145

linux上配置Samba服务,使windows可以访问linux上的共享文件;

安装samba:可以先检查下是否已经安装:

rpm -qa | grep samba

RPM包的一种在线安装模式yum :没有的话自己安装下,这里介绍下基于

yum是一种快速安装模式,它会自动解决软件安装时的依赖问题并自动去特定的服务器下载相应的软件进行安装,安装命令:yum

yum install samba 

创建共享文件夹 

mkdir -m 777 /home/test/share

配置linux共享路径

vi /etc/samba/smb.conf

编辑/etc/samba目录下的smb.conf文件。

smb.conf中包含了多个全程单元,每个单元的名字放于方括号([])中,方括号也是区分各个单元的标识。第一个单元是[global],用于一些全局设置,对于不熟悉samba的用户来说,一般不要对此单元进行修改。第二个单元是[home],它的作用是使linux用户可以从其它机器上连接到自己的home目录。要设置一个特定的共享目录,建议在smb.conf文件尾部增加一个全程单元。一般包括几条语句。下面是一个例子: 

[Share] 
comment = Shared Folder with username and password 
path = /home/test 
valid users = test 
public = yes
writable = yes 
printable = no 
create mask = 0765 

说明:

comment:提示,在windows的网络邻居上显示为备注。 

path:linux上共享目录  

valid users: 允许访问linux共享目录的用户,此用户需是linux的samba用户 

public:允许guest访问 

writable: 允许用户写 

printable: 若设为yes,则被认定为打印机 

create mask:在共享目录上建立的文件的权限 

创建samba用户 SMB用户名,在下面的Windows访问时用到。此用户必须是在Linux系统中存在的用户,否则“smbpasswd -a”命令会失败。 

useradd -m -s /bin/csh test

smbpasswd -a test

重启smb服务

service smb restart

Windows中访问Linux共享的文件夹。

在“开始 > 运行”中输入“\\Linux服务器IP地址”即可登录到目标服务器

具体访问某目录,如Share,系统会弹出对话框,需要输入samba用户(test

输入用户名和密码后即可访问Linux系统中的文件,此用户名和密码即为上述增加的samba用户名和密码

Linux的共享文件夹映射为Windows本地的一个磁盘分区。

在“开始 > 运行”中输入“cmd”启动Windows命令行。

执行net use Q: \\Linux服务器IP地址\test 命令完成映射。

打开Windows的“我的电脑”可以看到Q盘了。


在windows上登陆时遇到错误:


可以登录samba服务器,但是没有权限访问linux下的共享目录

确保linux下防火墙关闭或者是开放共享目录权限

iptalbes -F

确保samba服务器配置文件smb.conf设置没有问题
确保setlinux关闭,可以用setenforce 0命令执行。 默认的,SELinux禁止网络上对Samba服务器上的共享目录进行写操作,即使你在smb.conf中允许了这项操作。

执行两个命令:

iptables -F

setenforce 0