该文大部分来之网上的贴子,但并非单纯的复制粘贴,有些地方结合自己安装的心得有所改动。
参考链接0:(一步一学Linux与Windows 共享文件Samba,讲的非常详细)
http://www.linuxsir.org/main/node/158?q=node/158#0.1
参考链接1:http://www.06net.com/article/20100816/52046.html
参考链接2:http://www.lx138.com/home.php?mod=space&uid=1198&do=blog&id=22
参考链接3:http://www.linuxsir.org/main/?q=node/158#3.5.3
参考链接4:http://hi.baidu.com/houxn22/blog/item/b51f147a159abeff2e73b32d.html
第一步:安装samba服务器
yum -y install samba
[root@localhost ~]# mkdir /home/ajaxhe/share ← 建立共享文件专用目录
[root@localhost ~]# chown -R nobody /home/ajaxhe/share ← 设置专用目录归属为 nobody
[root@localhost ~]# chmod 777 /home/ajaxhe/share ← 将专用目录属性设置为 777
[root@localhost ~]# smbpasswd -a ajaxhe ← 将系统用户 ajaxhe(此用户必须是已存在的,如果不存在,useradd name添加吧)加入到 Fedora Samba 用户数据库(此处的系统用户可以你当前的登录用户即可,一般不需要再添加新用户)
New SMB password: ← 输入该用户用于登录 Samba 的密码
Retype new SMB password: ← 再次确认输入该密码
第四步:启动 samba服务
首先要把防火墙打开
[root@localhost ~]# vi /etc/sysconfig/iptables ← 编辑 iptables 配置文件
-A INPUT -m state --state NEW -m tcp -p tcp --dport 25 -j ACCEPT ← 找到此行,在下面添加如下行:
-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 -p udp -m udp --dport 137 -j ACCEPT
-A INPUT -p udp -m udp --dport 138 -j ACCEPT
下面重新启动iptables是修改生效:
[root@localhost ~]# service iptables restart。显示ok就行了
第五步:启动 Fedora Samba 服务(含两个守护进程:smb,nmb)。
[root@localhost ~]# chkconfig smb on ← 设置 Fedora Samba 自启动
[root@localhost ~]# chkconfig --list smb ← 确认 Fedora Samba 启动标签,确认 2-5 为 on 的状态
[root@localhost ~]#chkconfig nmb on ← 设置 nmb 自启动
[root@localhost ~]## chkconfig --list nmb ← 确认 nmb 启动标签,确认 2-5 为 on 的状态
nmb 0:off 1:off 2:on 3:on 4:on 5:on 6:off
[root@localhost ~]#service smb start(或者service smb start) ← 启动 Fedora Samba 服务
Starting SMB services: [ OK ]
[root@localhost ~]#service nmb start ← 启动 nmb 服务
Starting NMB services: [ OK ]
最后:解除selinux中对samba的限制
#setsebool –P samba_enable_home_dirs on
#setsebool –P samba_export_all_ro on
#setsebool –P samba_export_all_rw on
我们可以用命令getsebool –a | grep samba
查看上面三项是否打开,打开的话你的共享应该就正常了。
结果测试:
1. 从一台linux电脑访问服务器:
终端中键入命令:
mount -t cifs -o username=ajaxhe,password=123456 //192.168.1.101/Fedora14 /mnt
这样我们就可在/mnt文件夹下看到服务器/home/ajaxhe/share文件夹中内容
(住:此处的Fedora14是我们前面第二步里面提到的共享文件夹名)
2.从一台windows xp电脑访问服务器
在cmd中输入:
\\192.168.1.101(你的linux的ip地址,注意斜杠的方向)
输入用户名和密码就可以共享文件夹了