您的位置:首页 > 运维架构 > Linux

centos与windows共享文件夹

2015-09-02 09:54 661 查看
方式一:

本例是将windows共享文件夹挂载在linux机器的/mnt/windows/ 目录下进行访问。

windows机器ip:192.168.1.101 ,用户名:administrator 密码:123456

linux机器ip:192.168.1.102

一:在windows机器上创建一个文件夹(gongxiang)并将其设置为共享文件夹.

二:在linux机器上创建挂载目录/mnt/windows

#mkdir /mnt/windows

接下来就是将gongxiang目录挂载在/mnt/windows 目录下

#mount -t cifs -o username=administrator,password=123456 //192.168.1.101/gongxiang /mnt/windows

这样gongxiang目录就被挂载在/mnt/windows 下,进入/mnt/windows可以看到gongxiang里的所有文件

直接在/mnt/windows 目录下便可对windows系统上的共享文件进行拷贝。

方式二:

Linux与Linux间通过什么共享文件呢——NFS,Windows与Windows之间呢——共享文件功能,那Windows与Linux之间通过samba。


检查是否安装samba

# rmp -qa|grep samba


若安装了,则会显示如下,
samba4-libs-4.0.0-58.el6.rc4.x86_64
samba-common-3.6.9-168.el6_5.x86_64
samba-winbind-3.6.9-168.el6_5.x86_64
samba-client-3.6.9-168.el6_5.x86_64
samba-3.6.9-168.el6_5.x86_64
samba-winbind-clients-3.6.9-168.el6_5.x86_64


否则,使用
# yum install smaba


安装samba.


配置samba

设置开机启动
# chkconfig smb on
# chkconfig nmb on


也可以使用setup命令可通过界面配置开机启动服务,
# setup






新建smb用户用于访问Linux共享文件
# useradd smb       # 新建用户
# smbpasswd -a smb  # 修改密码


此时/home目录会增加一个smb的用户。该Linux用户目录将可直接共享到Windows下。若要共享其它文件,按步骤3配置文件。如果不用了,删除smb用户也是可以的,
# smbpasswd -x smb  # 删除smb用户


samba配置文件【/etc/samba/smb.conf】。
[tmp]
comment = Tmp Directories
path = /tmp                         # 共享的Linux目录
public = no                         # 目录不公开
writeable = yes                     # 可写
browseable = yes                    # 可读
valid users = smb                   # 访问用户,上面新建的,也可以使用原来已有的



让smaba通过防火墙

使用samba需要穿过防火墙,因此根据不同情况,这里提供3种方法:

方法1
# system-config-firewall






方法2

配置/etc/sysconfig/iptables文件,添加
-A INPUT -m state --state NEW -m tcp -p tcp --dport 139 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 445 -j ACCEPT
-A INPUT -m state --state NEW -m udp -p udp --dport 137 -j ACCEPT
-A INPUT -m state --state NEW -m udp -p udp --dport 138 -j ACCEPT


允许139 445 137 138几个端口通过。配置完后重启防火墙,
# /etc/rc.d/init.d/iptables restart


方法3

索性,把防火墙关了,
# service iptables stop    # 暂时关闭
# chkconfig iptables off  # 永久关闭



关闭SELINUX

# vim /etc/selinux/config
SELINUX=permissive


此时需要重启下系统,
# reboot


启动samba

# service samba start   # 启动
# service samba restart # 重启


可以通过
# service samba status


查看samba启动状态。


Windows访问

先查看Linux虚拟机网络ip地址,
# ifconifg
eth0      Link encap:Ethernet  HWaddr 00:0C:29:FD:DC:43
inet addr:192.168.56.58  Bcast:192.168.56.255  Mask:255.255.255.0
inet6 addr: fe80::20c:29ff:fefd:dc43/64 Scope:Link


在Windows下使用Win+R开启运行窗口,输入
\\192.168.56.58


即可访问Linux共享的目录。





此时使用
# smbstatus


查看连接状态。





文件访问权限:

若无法从Windows中往共享目录中拷贝文件,可能由于共享目录对smb用户的写权限不足,Linux中使用chmod 777 -R dir可改变dir目录权限。由于权限原因,本文中使用/tmp目录共享,因为/tmp目录对所有用户的权限比较开放。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: