samba服务的搭建与使用

news2024/12/28 23:43:57

关闭selinux

#暂时关闭selinux
查看selinux状态
[root@localhost ~]# getenforce
Disabled 
[root@localhost ~]# 
如果此处是‘enforcing’,则执行下列代码
[root@localhost ~]# setenforce 0
再次查看selinux状态
[root@localhost ~]# getenforce
permissive
#永久关闭selinux
vim /etc/selinux/config
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.
SELINUX=disabled //将此处修改为‘disabled’
# SELINUXTYPE= can take one of three values:
#     targeted - Targeted processes are protected,
#     minimum - Modification of targeted policy. Only selected processes are protected. 
#     mls - Multi Level Security protection.
SELINUXTYPE=targeted 
或者
sed -i 's/SELINUX=permissive/SELINUX=disabled/' /etc/selinux/config

关闭防火墙

查看防火墙状态
systemctl status firewalld
systemctl stop firewalld
systemctl disable firewalld

安装samba软件

[root@localhost ~]# yum -y install samba

创建共享目录

[root@localhost ~]# mkdir /common
[root@localhost ~]# chmod 777 /common
创建试文件
[root@localhost ~]# echo "hello the world" > /common/smb.txt 

修改配置文件

做完以上准备工作后,如果希望 Samba 服务可以共享指定的目录给客户端,就需要在其 配置文件中写入目录共享的代码段,Samba 默认配置文件是 默认情况下, Samba 已经配置为允许用户通过远程共享访问账户自己的家目录,为了将我们在准备阶段创建 的/common 目录共享给客户端,需要在该配置文件末尾追加对 common 目录的共享设置,实现 快速自定义共享。#共享名称为 common

[root@localhost ~]# vim /etc/samba/smb.conf

        cups options = raw

[homes]
        comment = Home Directories
        valid users = %S, %D%w%S
        browseable = No
        read only = No
        inherit acls = Yes

[printers]
        comment = All Printers
        path = /var/tmp
        printable = Yes
        create mask = 0600
        browseable = No

[print$]
        comment = Printer Drivers
        path = /var/lib/samba/drivers
        write list = @printadmin root
        force group = @printadmin
        create mask = 0664
        directory mask = 0775
增加以下内容
[common]  #共享名称为 common
        comment = public  #共享注释
        path = /common   #重要,指定共享路径
        browseable = yes  #所有人可见
        guest ok = no   #拒绝匿名访问
        guest ok = yes  #允许匿名访问(可选)
        writable = yes  #支持写入数据

创建访问账号

useradd -s /sbin/nologin smbuser
smbpasswd -a smbuser

smbpasswd 命令的描述和用法如下。
描述:修改账户 samba 密码。
用法:smbpasswd [选项] 账户名称
选项: 添加账户并设置密码。
-x 删除 SMB 账户。
-d 禁用 SMB 账户。
-e 启用 SMB 账户。

启动服务

[root@localhost ~]# systemctl start smb
[root@localhost ~]# systemctl start nmb
设置开机自启
[root@localhost ~]# chkconfig smb on
[root@localhost ~]# chkconfig nmb on
或者
[root@localhost ~]# systemctl enable smb
[root@localhost ~]# systemctl enable nmb

访问 Samba 共享

Windows 客户端访问
打开资源管理器,再上方搜索栏中输入:\\192.168.1.10
在弹出的窗口中输入。用户名和密码

Linux 客户端访问

Linux 客户端使用 smbclient 命令可以访问服务器上的共享资源,如果安装有图形环境,也
可以通过 Linux 图形界面连接服务器,下面是具体的方法。
[root@localhost ~]# smbclient -L //192.168.1.10 #查看192.168.1.10 主机共享信息
Enter SAMBA\root's password: 
Anonymous login successful

	Sharename       Type      Comment
	---------       ----      -------
	print$          Disk      Printer Drivers
	common          Disk      public
	IPC$            IPC       IPC Service (Samba 4.10.16)
Reconnecting with SMB1 for workgroup listing.
Anonymous login successful

	Server               Comment
	---------            -------

	Workgroup            Master
	---------            -------
	SAMBA                LOCALHOST
	WORKGROUP            ðí╦´
	
[root@localhost ~]# smbclient -U smbuser //192.168.1.10/common
Enter SAMBA\smbuser's password: 
Try "help" to get a list of possible commands.
smb: \> ls
  .                                   D        0  Mon Jul  1 19:26:06 2024
  ..                                  D        0  Mon Jul  1 19:06:37 2024
  test.txt                            N       16  Mon Jul  1 19:07:33 2024

		36805060 blocks of size 1024. 35298040 blocks available
smb: \> help
?              allinfo        altname        archive        backup         
blocksize      cancel         case_sensitive cd             chmod          
chown          close          del            deltree        dir            
du             echo           exit           get            getfacl        
geteas         hardlink       help           history        iosize         
lcd            link           lock           lowercase      ls             
l              mask           md             mget           mkdir          
more           mput           newer          notify         open           
posix          posix_encrypt  posix_open     posix_mkdir    posix_rmdir    
posix_unlink   posix_whoami   print          prompt         put            
pwd            q              queue          quit           readlink       
rd             recurse        reget          rename         reput          
rm             rmdir          showacls       setea          setmode        
scopy          stat           symlink        tar            tarmode        
timeout        translate      unlock         volume         vuid           
wdel           logon          listconnect    showconnect    tcon           
tdis           tid            utimes         logoff         ..             
!              
smb: \> 

Linux客户端图形化访问
[root@localhost ~]# nautilus-connect-server

目录挂载

有时候,挂载 Samba 共享目录实现如本地文件系统一样的使用体验是很有意义的,使用 root
管理员身份运行 mount 命令可以挂载这样的文件系统,将挂载信息写入 fstab 文件可以实现永久
挂载的目的。

创建共享目录
[root@localhost ~]# mkdir /com
临时挂载
[root@localhost ~]# mount -t cifs //192.168.1.10/common -o username=smbuser,password=123456 /com
[root@localhost ~]# ls /com
test.txt
[root@localhost ~]# 

永久挂载
[ root@centos6 ~ ] # echo '' //192.168.1.10/common /com /smb \ #实现永久挂载
> cifs defaults,username=smbuser,password=<password> 0 0 /etc/fstab

配置文件详解

Samba 配置文件非常简洁明了,所有的设置都在/etc/samba/smb.conf 配置文件中进行,通过 对该配置文件的修改,可以将 Samba 配置为一台匿名文件服务器、基于账户的文件服务器或打 印服务器,默认情况下,Samba 会已开启本地账号家目录共享与打印机共享,配置文件中以# 或;符号开头的行为注释行,配置文件分为若干段,除了 global(全局配置段)之外的其余所有 段用来描述共享资源,全局段中的配置代表全局有效,是全局的默认设置。但如果全局配置段 中的设置项与共享段中的设置项有冲突,则共享设置段中的设置为实际有效值。下面具体说明 配置文件中各个配置选项的含义。

[global] #定义全局策略
workgroup = MYGROUP #定义工作组
server string = Samba Server Version %v
#服务器提示字串,默认显示 samba 版本,建议修改默认值以防止针对版本的网络攻击
interfaces = lo ethO 192.168.12.2/24 192.168.13.2/24
#如果你的服务器有多个网络接口,可以通过 interfaces 选项指定 Samba 监听哪些网络接口
;hosts allow = 127. 192.168.12. 192.168.13. EXCEPT 192.168.13.13
#hosts allow 指定仅允许哪些主机有权访问 Samba 服务器资源,该参数可以放置在全局
#段也可以放置在共享段。与此相反的选项是 hosts deny, 用来设置黑名单列表,这里可
#以指定允许访问的主机名、工 P 地址或网段,当指定网段时可以使用 192.168.12.或
#192.168.12.0/255.255.255.0 两种格式,使用 EXCEPT 可以指定例外的 工P 地址
log file = /var/log/samba/log.%m
#定义日志文件,因为使用了 Samba 变量%m, 所以每个访问共享的主机会产生独立的
#日志文件,当m 会被替换为客户端的主机名
max log size = 5。
#定义日志单个文件最大容量为 50KB
security = user
#设置 security 选项将影响客户端访问 samba 的方式,是非常重要的设置选项之一。security
#可以被设置为 server 或 domain, user 代表通过用户名、密码验证访问者的身份,
#账户需要是服务器本机系统账户;share 代表匿名访问;server 代表基于验证身份的访问,
#但账户信息保存在另一台 SMB 服务器上;domain 同样是基于验证的访问,账户信息保存在活动目
#录中
passdb backend = tdbsam
#账户与密码的存储方式,smbpasswd 代表使用老的明文格式存储账户及密码;tdbsam 代
#表基于 TDB 的密文格式存储;Idapsam 代表使用 LDAP 存储账户资料
deadtime = 10
#客户端在 10 分钟内没有打开任何 Samba 资源,服务器将自动关闭会话,在大量的并发访问环境中,
#这样的设置可以提高服务器性能
display charset = UTF8 #设置显示使用的字符集为 UTF8
max connections = 0
#设置最大连接数,0 代表无限制,若设置该规则超过此限制的连接请求服务器将拒绝连接
guest account = nobody #设置匿名账号为 nobody
load printers = yes #是否共享打印机
cups options = raw #打印属性
[homes] #共享名称
comment = Home Directories #注释,共享的描述信息
browseable = no #共享目录是否可以被浏览
writable = yes #共享目录是否可以进行写操作
[printers]
comment = All Printers
#打印机共享
path = /var/spool/samba
browseable = no
guest ok = no
writable = no
printable = yes
#打印机共享池
[common] #共享名称为 common
comment = Common share #注释,共享描述信息
path = /common #重要,指定共享路径
valid users =tom jerry #有效账户列表
create mask = 0750 #客户端上传文件的默认权限,默认为 0%4
directory mask = 0775 #客户端创建目录的默认权限,默认为 0755
browseable = yes
writable = no
#共享目录是否对所有的人可见 yes 或 no
write list = tom #写权限账户列表,这里设置 tom 可写
admin users =tom #该共享的管理员,具有完全权限
invalid users = root bin #禁止 root 与 bin 访问 common 共享
guest ok = no #是否允许匿名访问,仅当全局设置 security=share 时有效 (yes或no)

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1883295.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

舞会无领导:一种树形动态规划的视角

没有上司的舞会 Ural 大学有 &#x1d441; 名职员&#xff0c;编号为1∼&#x1d441;。 他们的关系就像一棵以校长为根的树&#xff0c;父节点就是子节点的直接上司。 每个职员有一个快乐指数&#xff0c;用整数 &#x1d43b;&#x1d456; 给出&#xff0c;其中1≤&…

【Llama 2的使用方法】

Llama 2是Meta AI&#xff08;Facebook的母公司Meta的AI部门&#xff09;开发并开源的大型语言模型系列之一。Llama 2是在其前身Llama模型的基础上进行改进和扩展的&#xff0c;旨在提供更强大的自然语言处理能力和更广泛的应用场景。 以下是Llama 2的一些关键特性和更新点&am…

1Python的Pandas:基本简介

1. Pandas的简介 Pandas 是一个开源的 Python 数据分析库&#xff0c;由 Wes McKinney 在 2008 年开始开发&#xff0c;目的是为了解决数据分析任务中的各种需求。Pandas 是基于 NumPy 库构建的&#xff0c;它使得数据处理和分析工作变得更加快速和简单。Pandas 提供了易于使用…

mac|浏览器链接不上服务器但可以登微信

千万千万千万不要没有关梯子直接关机&#xff0c;不然就会这样子呜呜呜 设置-网络&#xff0c;点击三个点--选择--位置--编辑位置&#xff08;默认是自动&#xff09; 新增一个&#xff0c;然后选中点击完成 这样就可以正常上网了

网络编程:UDP编程笔记

1.字节序的概念和转换 小端格式: 低位字节数据存储在低地址 大端格式: 高位字节数据存储在低地址 在主机上时为小端存储,在网络上时为大端,所以接收到数据时,要转为小端口 如下图: #include <arpa/inet.h> 发送者调用的函数: uint32_t htonl(uint32_t hostlong); //转…

【工具推荐】ONLYOFFICE8.1版本编辑器测评——时下的办公利器

文章目录 一、产品介绍1. ONLYOFFICE 8.1简介2. 多元化多功能的编辑器 二、产品体验1. 云端协作空间2. 桌面编辑器本地版 三、产品界面设计1. 本地版本2. 云端版本 四、产品文档处理1. 文本文档&#xff08;Word)2. 电子表格&#xff08;Excel&#xff09;3. PDF表单&#xff0…

Linux——移动文件或目录,查找文件,which命令

移动文件或目录 作用 - mv命令用于剪切或重命名文件 格式 bash mv [选项] 源文件名称 目标文件名称 注意 - 剪切操作不同于复制操作&#xff0c;因为它会把源文件删除掉&#xff0c;只保留剪切后的文件。 - 如果在同一个目录中将某个文件剪切后还粘贴到当前目录下&#xff0c;…

芒果YOLOv10改进122:注意力机制系列:最新结合即插即用CA(Coordinate attention) 注意力机制,CVPR 顶会助力分类检测涨点!

论文所提的Coordinate注意力很简单,可以灵活地插入到经典的移动网络中,而且几乎没有计算开销。大量实验表明,Coordinate注意力不仅有益于ImageNet分类,而且更有趣的是,它在下游任务(如目标检测和语义分割)中表现也很好。本文结合目标检测任务应用 应专栏读者的要求,写一…

Jasper studio报表工具中,如何判断subDataSource()子报表数据源是否为空

目录 1.1、错误描述 1.2、解决方案 1.1、错误描述 今天在处理一个有关Jasper Studio报表模板制作的线上问题&#xff0c;需要根据某个报表子数据源是否为空&#xff0c;来决定对应的组件是否显示&#xff0c;找了好久的资料都没有实现&#xff0c;最后找到一种解决办法。就是…

MySQL架构和性能优化

文章目录 一、MySQL架构架构图存储引擎MyISAM引擎特点InnoDB引擎特点管理存储引擎 二、性能优化索引索引管理EXPLAIN 工具使用profile工具 监控 一、MySQL架构 架构图 存储引擎 MySQL提供了多种存储引擎供用户选择&#xff0c;每种存储引擎都有自己的特点和使用场景。 InnoDB…

【机器学习】FFmpeg+Whisper:二阶段法视频理解(video-to-text)大模型实战

目录 一、引言 二、FFmpeg工具介绍 2.1 什么是FFmpeg 2.2 FFmpeg核心原理 2.3 FFmpeg使用示例 三、FFmpegWhisper二阶段法视频理解实战 3.1 FFmpeg安装 3.2 Whisper模型下载 3.3 FFmpeg抽取视频的音频 3.3.1 方案一&#xff1a;命令行方式使用ffmpeg 3.3.2 方案二&a…

深入剖析Tomcat(十四) Server、Service 组件:如何启停Tomcat服务?

通过前面文章的学习&#xff0c;我们已经了解了连接器&#xff0c;四大容器是如何配合工作的&#xff0c;在源码中提供的示例也都是“一个连接器”“一个顶层容器”的结构。并且启动方式是分别启动连接器和容器&#xff0c;类似下面代码 connector.setContainer(engine); try …

MATLAB|更改绘图窗口的大小和位置

MATLAB绘图 plot、plot3、cdfplot都适用 效果 如下图&#xff0c;运行程序后可以直接得到这两个绘图窗口。 右上角的Figure1是原始图片&#xff0c;右下角的Figure2是调整了位置和大小后的绘图窗口。 完整源代码 % 绘图大小和位置调整 % Evand©2024 % 2024-7-1/Ver1…

代码随想录算法训练营第59天:动态[1]

代码随想录算法训练营第59天&#xff1a;动态 两个字符串的删除操作 力扣题目链接(opens new window) 给定两个单词 word1 和 word2&#xff0c;找到使得 word1 和 word2 相同所需的最小步数&#xff0c;每步可以删除任意一个字符串中的一个字符。 示例&#xff1a; 输入: …

MySQL 常见存储引擎详解(一)

本篇主要介绍MySQL中常见的存储引擎。 目录 一、InnoDB引擎 简介 特性 最佳实践 创建InnoDB 存储文件 二、MyISAM存储引擎 简介 特性 创建MyISAM表 存储文件 存储格式 静态格式 动态格式 压缩格式 三、MEMORY存储引擎 简介 特点 创建MEMORY表 存储文件 内…

【postgresql】版本学习

PostgreSQL 17 Beta 2 发布于2024-06-27。 PostgreSQL 17 Beta 2功能和变更功能的完整列表&#xff1a;PostgreSQL: Documentation: 17: E.1. Release 17 ​ 支持的版本&#xff1a; 16 ( 当前版本) / 15 / 14 / 13 / 12 ​ 不支持的版本&#xff1a; 11 / 10 / 9.6 / 9.5 /…

UE4_材质_材质节点_Fresnel

学习笔记&#xff0c;不喜勿喷&#xff0c;侵权立删&#xff0c;祝愿生活越来越好&#xff01; 一、问题导入 在创建电影或过场动画时&#xff0c;你常常需要想办法更好地突显角色或场景的轮廓。这时你需要用到一种光照技术&#xff0c;称为边沿光照或边缘光照&#xff0c;它…

Spring Cloud Circuit Breaker基础入门与服务熔断

官网地址&#xff1a;https://spring.io/projects/spring-cloud-circuitbreaker#overview 本文SpringCloud版本为&#xff1a; <spring.boot.version>3.1.7</spring.boot.version> <spring.cloud.version>2022.0.4</spring.cloud.version>【1】Circu…

为何交易价格可能超出预期?

当你尝试执行订单时&#xff0c;如果收到“报价超出”的提示&#xff0c;这通常意味着交易无法按你的预期价格成交。对于某些交易者来说&#xff0c;这可能会带来一些困扰&#xff0c;但在外汇等流动性极高的市场中&#xff0c;这种情况是相当常见的。 外汇市场之所以吸引众多…

HttpServletResponse设置headers返回,发现headers中缺少“Content-Length“和“Content-Type“两个参数。

业务中需要将用httpUtils请求返回的headers全部返回&#xff0c;塞到HttpServletResponse中&#xff0c;代码如下&#xff1a; HttpServletResponse response;// 返回headers Arrays.stream(httpResponse.getHeaders()).forEach(header -> response.setHeader(header.getNa…