别摸鱼啦,说的就是你,学习编程从入门到放弃。掌握编程思维方式,由浅至深,理解编程技术原理,积累知识,向往自由编程。
samba 简述
samba是一个基于 TCP/IP 协议的开源软件套件,可以在Linux、Windows、macOS等操作系统上运行。它允许不同操作系统的计算机之间实现文件和打印机共享。
samba 提供了一个服务,使得Windows操作系统可以像访问本地文件一样访问Linux、Mac等操作系统上的共享文件。实现跨平台的文件共享,提高办公环境的效率和便利性。
samba 也支持Windows网络邻居协议,可以使得Windows计算机可以在网络上发现和访问其他计算机上的共享资源。
Linux samba 下载安装
Debian 或 Ubuntu
sudo apt-get install samba smbclient samba-common
Fedora 或 CentOS
sudo yum install samba samba-common samba-client
Linux samba查看
查看系统中samba软件包命令如下:
Debian 或 Ubuntu
dpkg -l | grep samba
dpkg -l | grep smbclient
Fedora 或 CentOS
rpm -qa | grep samba
Linux samba 基础软件包介绍
(ubuntu和centos)samba软件包名有所不同。samba、samba-common、samba-client(smbclient )这三个是samba的核心基础软件包,必须要安装。
-
samba:
用于实现SMB/CIFS(Server Message Block/Common Internet File System)协议。samba服务器提供了文件共享和打印服务,允许Windows客户端通过网络与Linux/UNIX服务器交互。
-
samba-common:
samba软件包的公共文件和库。它包含一些共享的配置文件、脚本、语言文件和其他公共资源,这些资源被samba服务器和客户端程序所共享和使用。
-
samba-client:
samba软件包的客户端组件。它提供了一些用于与samba服务器进行交互的命令行工具,例如smbclient、smbget和smbtree等。这些工具允许用户在Linux/UNIX系统上访问和管理远程的samba共享文件夹。
samba服务器组件
samba有两个主要的进程smbd和nmbd:
-
smbd(Server Message Block Daemon):
smbd实现了SMB(Server Message Block)协议,处理来自客户端的SMB请求,用于在不同操作系统之间进行文件和打印机共享。
-
NMBD(NetBIOS Name Server Daemon):
nmbd实现了NetBIOS(Network Basic Input/Output System)协议,负责处理来自客户端的NetBIOS名称查询请求,将域名·解析为IP地址,并提供设备域名注册和解析服务。
samba服务器配置
/etc/samba/smb.conf 是samba服务器的主要配置文件,其中包含了samba服务器的各种设置和选项。通过编辑此文件,自定义samba服务器的行为和功能。
第一步 smb.conf 配置文件示例
sudo vim /etc/samba/smb.conf,打开smb.conf 文件,添加[shared_folder] 配置,示例如下:
#全局参数设置(部分)
[global]
# 设置Samba服务器所在的工作组名称
workgroup = WORKGROUP
# 设置服务器的描述字符串
server string = Samba Server %v
# 设置Samba服务器的安全模式为用户级别身份验证
security = user
# 将无效用户映射为访客用户
map to guest = Bad User
# 禁用Samba服务器的DNS代理功能
dns proxy = no
[printers]
# 打印机共享的注释说明
comment = All Printers
# 打印机共享的路径
path = /var/spool/samba
# 设置打印机共享不可浏览
browseable = no
# 设置打印机共享可打印
printable = yes
# 允许访客用户访问打印机共享
guest ok = yes
[shared_folder]
# 共享文件夹的注释说明
comment = Shared Folder
# 需要填写实际的共享文件夹的路径
path = /home/samba_shared_path
# 允许访问共享文件夹的有效用户列表
valid users = sambaUser
# 设置为可写入
writable = yes
# 可以被所有用户浏览到资源名称
browseable = yes
# 设置新创建的文件的权限掩码
create mask = 0644
# 设置新创建的文件夹的权限掩码
directory mask = 0755
#guest ok = yes # 可以让用户随意登录,不需要身份验证
#read only = no # 设置共享文件夹为只读模式
第二步 添加用户并设置密码
sudo uaseadd sambaUser
sudo smbpasswd -a sambaUser
第三步 重启 samba 并查看 samba 状态
systemctl restart smbd
systemctl status smbd
第四步 添加共享文件用于测试
同属一个组的用户可以访问对应的目录或文件,
如目录:samba_shared_path 属组 sambashare,而用户:sambaUser 也属组 sambashare,所以用户:sambaUser能够访问目录:samba_shared_path
使用下面的命令,改变共享路径的属主和属组
sudo chown sambaUser:sambashare /home/samba_shared_path/
第五步 登录 samba
使用 ifconfig 查看 samba 服务器ip地址,如下图所示:
window + R 快捷键 打开运行对话框,输入 \\192.168.30.129(samba服务器对应的IP地址):
这个时候会弹出登录界面,直接输入之前设置的 samba 登录账号和密码。
samba 常用的命令
查看 samba 用户
显示 sabma 用户列表
删除 samba 用户
下面命令只会删除 samba 用户,而不会删除相应的操作系统用户
sudo smbpasswd -x username
下期讲解 samba 访问过程中遇到的问题以及解决方式
创作不易,动动发财的小手点个关注再走呗文章来源:https://www.toymoban.com/news/detail-763389.html
文章来源地址https://www.toymoban.com/news/detail-763389.html
到了这里,关于[linux] samba服务器安装、配置,有细节的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!