你的位置:首页 > 操作系统

[操作系统]samba共享服务


方法一
1、安装samba:可以先检查下是否已经安装:rpm -qa | grep samba,没有的话自己安装下,这里介绍下基于RPM包的一种在线安装模式yum
yum是一种快速安装模式,它会自动解决软件安装时的依赖问题并自动去特定的服务器下载相应的软件进行安装,命令十分简单:yum install samba,快捷方便的背后离不开程序员的辛苦啊!
2、创建共享文件夹,这里就是mkdir -m 777 /home/def/share
3、修改/etc/samba/smb.conf,这里面的参数就比较多,主要是
workgroup = WORKGROUP(这个就是windows工作组模式,还有一种是域模式)
hosts allow = 192.168.1.100(可以放问的IP地址,这里写的时windows地址)
然后在文件的结尾加上
[public](共享名,就是windows访问时会显示的名称)
comment = Public Stuff(注释)
path = /home/def/share(共享名)
public = yes(公开)
writable = yes(可写)
当然这里只是些基础的参数,还有其他的参数根据情况设置,比如会出现乱码,还要指定编码格式。
4、重启smb服务:service smb restart
5、创建samba客户:smbpasswd -a def,回车后会提示输入密码。这个就是将来远程主机登录时需要的密码,这里的def帐号必须时系统已经有的
帐号,没有的话会报错,然后新输的密码就是远程登录密码,这样做的好处就是自己的密码和远程登录的密码分开。
6、windows下连接,启动运行,输入\\192.168.1.200,输入smb帐号密码就可以了
7.如果windows修改没有权限
确保setlinux关闭,可以用setenforce 0命令执行。 默认的,SELinux禁止网络上对Samba服务器上的共享目录进行写操作,即使你在smb.conf中允许了这项操作。       /usr/bin/setenforce 修改SELinux的实时运行模式  
setenforce 1 设置SELinux 成为enforcing模式
setenforce 0 设置SELinux 成为permissive模式  
如果要彻底禁用SELinux 需要在/etc/sysconfig/selinux中设置参数selinux=0 ,或者在/etc/grub.conf中添加这个参数 /usr/bin/setstatus -v   
 
方法二

1、在Windows上设置一个共享目录

如:将d:\RedHat_disk设置为共享目录

2、在Windows上创建一个用户,如tommy,密码111111

3、将tommy用户加入到共享目录d:\redhat_disk的访问组中,并设定tommy

对该共享目录有完全控制权限(读、写)

4、在Linux下安装samba-client客户端

# yum install samba-client

5、安装cifs-utils软件包

# yum install cifs-utils

6、在Linux下创建一个挂载点

# mkdir  /mnt/Windows

7、挂载Windows上的共享目录d:\redhat_disk到Linux下的/mnt/Windows目录下

# mount -t cifs -o username=tommy  //192.168.1.123/redhat_disk /mnt/Windows

Enter password: 111111

8、如果挂载成功,则可以进入/mnt/Windows下,新建一个文件,看看Windows上能否看见

9、在/etc/fstab文件中,加入该共享目录的挂载信息

//192.168.1.123/redhat_disk      /mnt/Windows    cifs    username=tommy,password=111111  0 0

10、到此为止,Windows上的共享目录//192.168.1.123/redhat_disk就被成功挂载到了Linux上面了,并且Linux重启后,会自动挂载该目录到/mnt/Windows目录下