因为我的centos为一台阿里云服务器,想和我本机(mac)进行文件共享。所以在我的阿里云上安装配置samba。
服务器环境:centos 7.3
本地环境:mac
第1步:首先查看是否已经安装过了samba或者之前安装过没卸载干净(如果之前装过且没有卸载干净,需要转到文章最后进行卸载赶紧后,在转到第二步进行安装):
rpm -qa |grep samba
第2步:yum安装
yum -y install samba
第3步:创建共享文件夹
先创建一个需要共享的文件夹,这里用shared_directory
。如果已经有,直接执行chmod
改变它的权限。
mkdir /home/USER_NAME/shared_directory sudo chmod 777 /home/USER_NAME/shared_directory
注意这里的 USER_NAME 就是你的用户名。
第4步:配置samba.conf
可以直接修改/etc/samba/smb.conf
,在文件末尾添加:
[share] path = /home/USER_NAME/shared_directory // 这里需要修改成你的用户名和共享文件夹名 available = yes browseable = yes public = yes writable = yes
第5步:添加samba账户
sudo touch /etc/samba/smbpasswd sudo smbpasswd -a USER_NAME // 这里USER_NAME修改成你的用户名
根据提示输入两次密码。在这里有时可能报:
解决方法是:这是因为没有加相应的系统账号,所以会提示Failed to add entry for user的错误,只需增加相应的系统账号 xuelisheng 就可以了:
groupadd xuelisheng -g 6000 useradd xuelisheng -u 6000 -g 6000 -s /sbin/nologin -d /dev/null
第6步:查看samba服务状态
service smb status
如果发现还未启动,需要启动:
service smb start
第7步:设置samba开机自启动
chkconfig smb on
第8步:mac连接
finder->前往->连接服务器
【总结】
1、如果第8步出现连接不上的情况:即
我们在服务器上发现samba服务开启的端口为139和445:
然后我们可以在本地telnet一下远程服务器的这两个端口,
发现是不通的,这是因为我用的是阿里云服务器,默认这两个端口都是关闭的,所以登录web版的阿里云,直接进行防火墙设置,进行配置:
此时本地telnet发现通了:
此时无法连接的情况得以解决。
2、卸载samba
转自:https://blog.csdn.net/linglongwunv/article/details/5212868
(1)首先检查Samba服务包,输入命令#rpm -qa | grep samba,会出现下面两到三个包:
samba-common-2.2.7a-7.9.0.i386 //服务器和客户端均需要的文件
samba-2.2.7a-7.9.0.i386 //服务器端文件
samba-client-2.27a-7.9.0.i386 //客户端文件
(2)逐个删除,输入命令#rpm -e samba,首先卸载samba-2.2.7a-7.9.0.i386;
然后输入命令#rpm -e samba-common-2.2.7a-7.9.0.i386,卸载samba-common-2.2.7a-7.9.0.i386;
如果有samba-client-2.27a-7.9.0.i386也卸载掉,一般不会有。
(3)samba-common-2.2.7a-7.9.0.i386可能会出现不能删除的情况,输入命令#rpm -e --nodeps samba-common-2.2.7a-7.9.0.i386就可以了。
(4)此时已将samba卸载,可重复步骤1检查是否将samba服务包全部卸载,
3、另外解决mac无法连接samba的两种解决方法(可以都尝试一下):
(1)关闭SElinux:
(2)关闭防火墙:
关闭:service iptables stop
永久关闭:chkconfig iptables off
查看状态 service iptables status