# 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.
設置開機啟動
# 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配置文件。
[tmp] comment = Tmp Directories path = /tmp # 共享的Linux目錄 public = no # 目錄不公開 writeable = yes # 可寫 browseable = yes # 可讀 valid users = smb # 訪問用戶,上面新建的,也可以使用原來已有的
使用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 # 永久關閉
# vim /etc/selinux/config SELINUX=permissive
此時需要重啟下系統,
# reboot
# service samba start # 啟動 # service samba restart # 重啟
可以通過
# service samba status
查看samba啟動狀態。
先查看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目錄對所有用戶的權限比較開放。