在Linux上,如何安装Samba
Beryl
・9 分钟阅读
什么是Samba?
服务器消息块(SMB)是Microsoft客户端和Microsoft服务器之间使用的协议。
客户端需要访问服务器的共享资源时,它发出smb请求,并且使用smb确认发送服务器回复。
这就是为什么Samba是必需的,它就是为了与Linux共享资源而且开发的。
Windows和unix/Linux系统已经在一起工作一段时间了,
Samba在Unix平台上运行,但是,它可以与Windows客户机(如本地机)通信。
它允许Linux系统连接Windows网络端口而不会引起任何问题。Windows用户可以访问文件和服务,而且无需请寻找Unix/Linux主机提供的服务。
如何在Linux中逐步配置samba服务器?
选择要安装Samba的Linux系统,然后开始执行命令,并且按照该部分中的步骤执行。
在这里,你将学习如何从Windows访问Linux共享文件夹。
首先,我们将阅读ubuntu 16.04版教程。
如何在Ubuntu 16.04上安装samba :
步骤1:从安装samba包开始。
sudo apt install samba
然后它会询问你是否要继续。
Do you want to continue? [Y/n]: Y
输入Y,你将返回到安装,一旦完成,执行以下命令。
步骤2:如果你没有准备共享的文件,然后使用以下命令创建一个。
sudo mkdir /media/Storage
步骤 3:
A]下一步是编辑smb.conf文件,你可以通过以下命令在vim编辑器中打开该文件。
sudo vim /etc/samba/smb.conf
现在在smb.conf文件中找到以下内容
workgroup=WORKGROUP
注:
WORKGROUP是您添加工作组的地方。
一旦你发现它将它替换为你的工作组。
workgroup= WORKGROUP
B]转到你将在下面显示的代码类似的部分,然后在下面添加下面的部分。
[Storage]
comment = Obsidian storage area
path= /media/Storage
browseable= yes
read only = no
guest ok = no
create mask = 0755
现在保存文件并退出。
按"esc"键,然后按": "和"wq"
sudo service smbd restart
步骤4:你可以创建一个用户名,并且为它设置密码。
sudo smbpasswd -a username
输出:
New SMB password:
Retype new SMB password:
注意:创建密码时,您必须提及您的用户名。这是你创建用户名的方式。
用你的用户标识替换单词"username "
记住要提前添加或创建一个用户,否则必须面对以下错误:
error -> Failed to add entry for user username.
这就结束了ubuntu 16.04 samba安装。你必须注意到这个ubuntu samba安装教程很快,而且简短,但是,重要的是它完成了工作。
接下来是"如何在CentOS 7上安装samba 。"
如何在CentOS 7上安装Samba :
开始之前,我们先开始这个,我们要共享的驱动器是/mnt/XT/Pages 。
你将在centos中逐步学习samba服务器配置。
那么,让我们从如何安装samba教程开始。
步骤1:使用以下命令安装samba包。
你将看到安装软件包所需的下载大小和大小。
你会被要求 Is this ok [y/N]:
输入"y"并按回车。
第2步:此步骤可使系统联机。
systemctl enable smb
systemctl enable nmb
步骤3:将文件smb.conf重命名为samba.conf.bak
这是备份文件,如果在安装或任何时候出现错误,你有此备份可回滚。
mv /etc/samba/smb.conf /etc/samba/samba.conf.bak
步骤4:使用以下命令创建另一个配置文件。
touch /etc/samba/smb.conf
步骤5:创建文件后,我们需要对它进行编辑。
vi /etc/samba/smb.conf
打开文件后,向其添加以下内容。
[global]
workgroup = WORKGROUP
server string = Samba Server Version %v
security = user
passdb backend = tdbsam
[Pages]
path = /mnt/XT/Pages
valid users = priya
guest ok = no
writable = yes
browsable = yes
在进行上述更改后,保存文件,并且退出。
注:
我们将passdb后端设置为tdbsam,作为对用户请求的直接响应。
它适用于用户数少于250的网站,如果您的网站有更多流量,则应使用OpenLDAP或Active Directory集成。
Priya在这里是个合法的用户。
步骤6:重新启动smb 。
systemctl restart smb
步骤7:当你尝试访问共享驱动器时,它将询问你其他的凭据,即用户名和密码。
我们已经在配置文件中提到了用户"priya"
现在我们将创建一个smbuser priya,并且为用户分配密码。
smbpasswd -a priya
输出:
New SMB password:
Retype new SMB password:
步骤8:现在返回,并且尝试访问你的共享驱动器,你可以填写用户名和密码字段来访问驱动器,它应该一切顺利。
注意:如果仍然不能访问,你应该使用下面的命令来检查权限。
检查正在共享的文件的条目,你所面对的问题是由于nfsnobody 。
要解决这个问题,你必须更改所有者,然后更改权限。
chown -R root:root /mnt/XT/Pages
现在,我们将为用户Priya设置读,写和执行权限。
setfacl -Rm priya:rwx /mnt/XT/Pages
使用getfacl你可以找到可以访问文件的用户。
getfacl /mnt/XT/Pages
systemctl restart smb
如果不能正常工作,那么执行下面的命令。
getenforce
chcon -t samba_share_t /mnt/XT/Pages
systemctl restart smb
第9.步就是,通过编辑smb配置文件,你可以访问其他文件或目录。
vi /etc/samba/smb.conf
当文件打开时,你可以进行下列更改。
[global]
workgroup = WORKGROUP_NAME
server string = Samba Server Version %v
security = user
passdb backend = tdbsam
[Pages]
path = /mnt/XT/Pages
valid users = priya, tom
guest ok = no
writable = yes
browsable = yes
就像你看到的,我们可以增加更多的用户,只需用命令分隔前一个用户,留一个空格,然后输入用户名。