操作环境:CentOS 7 64bit
检查是否安装samba
# rpm -qa|grep samba
linux中,rpm -qa 和 rpm -q的区别
查询一个包是否被安装
# rpm -q < rpm package name>
列出所有被安装的rpm package
# rpm -qa
若安装了,则会显示如下,
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 samba
安装samba
配置samba
设置开机启动,如果以下命令执行不了,执行yum install samba重新安装
# chkconfig smb on
# chkconfig nmb on
也可以使用setup命令可通过界面配置开机启动服务
# setup
新建用户用于访问Linux共享文件
# useradd xxx # 新建用户
# smbpasswd -a 用户名 # 修改密码
“`
修改samba配置文件 /etc/samba/smb.conf
[tmp]
comment = Tmp Directories
path = /tmp # 共享的Linux目录
public = no # 目录不公开
writeable = yes # 可写
browseable = yes # 可读
valid users = xxx # 访问用户
让samba通过防火墙
修改防火墙设置public samba为可信或者直接关闭它
systemctl start firewalld.service #启动firewall
systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall开机启动
关闭SELINUX
# vim /etc/selinux/config
SELINUX=permissive
重启系统
reboot
启动samba
# service smb start # 启动
# service smb restart # 重启
查看samba启动状态
# service smb status
Windows访问
查看Linux虚拟机网络ip地址 #ifconfig
在cmd输入虚拟机ip
运行cmd命令或者在打开文件夹我的电脑,在搜索框中输入 \\ip
即可访问Linux共享的目录。
文件访问权限
若无法从Windows中往共享目录中拷贝文件,可能由于共享目录对用户的写权限不足,Linux中使用chmod 777 -R dir可改变dir目录权限。由于权限原因,本文中使用/tmp目录共享,因为/tmp目录对所有用户的权限比较开放。