菜鸟学Linux之六:samba服务的搭建与部署

简介:
Samba的概述:
        首先我们在学习samba的时候会有很多的人为什么要学习samba服务器呢?samba是连接两大操作系统平台之间的纽带,由于samba的出现方便了Linux和Windows下的互相通信。可以实现资源的共享以及文件的拷贝等一些强大的功能。当然我们也可以把samba服务器加入到域中。
Samb的环境:
        Samba服务器可以实现文件的打印共享,身份验证和权限设置;名称解析,以及浏览服务。
Samba的工作原理:
            Samba服务器在Linux系统之上实现SMB/CIFS协议,即可以在Linux系统中为Windows主机提供网络文件共享服务;samba服务器中包括以下两个服务程序。Smbd服务程序和nmbd服务程序。而nmbd的主要功能就是进行netbios域名解析的,而且提供网络上的共享资源的列表。Smbd是主要进行对samba服务器上的共享目录的管理,而他是针对网络上的共享资源。
Samba服务器的搭建:
一、samba用户帐号以及用户目录设置: 1.1.1.1. 在安装之前我们先来查看是不是已经安装了samba服务器呢?如图1-1所示是samba服务器所需要的安装软件,而下面的这几个软件也是安装samba服务器的软件。
  clip_image002
 
1.1.1.2. smb.conf用户帐号以及用户目录权限的设置:在配置文件中【homes】共享目录是samba服务器默认提供配置的,也是比较特殊的共享位置。【homes】共享目录并不特定指某个目录,而是表示samba用户的宿主目录,是samba用户登后可以访问同名系统的宿主目录中的内容。如图1-2所示: 
 
 
clip_image004  
 
1.1.1.3. 建立samba用户帐号;samba服务器不使用Linux系统的用户帐号进行认证,而是维护自己的用户帐号文件,samba服务器的用户帐号文件保存在“/etc/samba”目录中,文件名是“smbpasswd”,但是初始状态是不存在,在第一次使用的smbpasswd命令创建samba用户时自动建立。我们需要注意的是samba服务器的用户帐号和系统的用户帐号是保存在各自的数据库中,而不是放在同一个数据库中的。使用smbpasswd命令的“-a”选项可以向“smbpasswd”文件添加samba用户帐号,命令中需要指定要添加的用户名作为参数,“smbpasswd”命令在执行过程中会提示设置该samba用户的口令,在创建samba用户帐号之前我们需要建立同名的“Linux”系统用户帐号。
  clip_image006
 
1.1.1.4. 当我们创建用户完成之后在smbpasswd文件中会有该用户的用户帐号的记录,我们来查看一下他的权限以及他的密码,在查看smbpasswd文件中同时保存有用户帐号和用户密码,因此为了安全我们只对root用户与读写的权限其他没有相应的权限。在使用sambapass命令建立samba帐号的时候我们需要注意一下几点:samba帐号使用帐号独立的smbpasswd文件保存用户的帐号和加密口令信息;samba服务器中的用户帐号应该具有与其他同名的Linux系统用户帐号;当samba用户不需要登录Linux系统时,同名的系统帐号不需要设置口令;如图1-4所示:
 
clip_image008  
 
二、添加公共目录设置;
 
在samba服务器的默认设置中没有公用目录,需要我们进行手动的添加。 对于公用目录我们需要设置的时候我们需要注意;任何asmba的用户都可以访问公共目录并对目录具有读写权限。任何用户在公共目录都以linux中的nobody系统的用户出现,在公共目录中任何用户建立的文件夹都属于nobody系统用户。
 
2.1.1.1.首先我们需要创建公共目录,然后修改它相应的权限。如图2-1所示:
 
clip_image010
 
2.1.1.2.当我们把公共目录“public”创建号之后我们需要在“/etc/samba/smb.conf”中添加这几行命令。“path”是用于设置共享目录对应的Linux系统目录;“public”设置为Yes是表示该共享目录对于samba用户是可见的。“only guest”设置为yes表示的是所用用户在使用共享目录时候所用的用户身份都是“guest”,当然系统的用户是Linux系统用户nobody;“writable”设置为yes是表示该共享目录对于用户可写。如图2-2所示:
 
clip_image012  
 
 
2.1.1.3.当我们把配置文件修改以后我们来测试我们修改的配置文件是不是正确如图2-3所示:
 
clip_image014  
 
2.1.1.4.当我们测试出现上图所示的界面的时候我们只要“enter”即可完成如图2-4所示的结果;图中的“public”是我们创建的用户。
 
  clip_image016
 
2.1.1.5.完成上面的步骤我们需要重启服务,这样整个服务器上的设置就完成了。
 
clip_image018  
 
三、客户端的测试: 3.1.1.1.在Windows上面测试samba服务器是不是能够完成。 3.1.1.2.在“开始——运行”中我们来输入samba服务器的IP地址。然后在弹出的对话框中需要输入用户名和密码(注意在这里我们输入的是我们创建的samba用户的帐号),具体配置如图3-2所示:
 
  clip_image020
 
3.1.1.3.然后会弹出如图3-3所示的界面:然后我们看是不是有权限创建文件。
 
clip_image022  
 
3.1.1.4.然后在如图3-4所示的界面中我们来查看我们所创建的目录。
  clip_image024 clip_image026
 
 
3.2.1.1.在Linux客户机上测试samba服务器是不是能够登录。 3.2.1.2.使用smbclient是samba服务器客户端的登录方式,使用的类型和Telnet、ftp类型相似。Smbclient登录的最大好处是可以指定特定的用户来登录使用。如图3-2所示:
 
clip_image028  
 
3.2.1.3.然后我们通过smbstatus名来查看当前主机中samba服务器的连接信息,包括链接服务器每个samba客户端的IP地址、主机名称、登录用户名、锁定的文件等一些详细的信息。具体如图3-3所示:
 
clip_image030  
 
四、通过swat软件来管理服务器。 在安装之前我们需要注意的是:swat服务应该安装在samba服务器运行的主机中;使用swat服务的管理终端可以是与samba服务器同局域网的Linux主机或者Windows主机;具体的一些细节我们在下面的配置中来慢慢的了解。 4.1.1.1.首先在服务器上挂载,然后来安装swat软件,swat软件在第四张光盘上,具体的安装步骤如图4-1所示:
 
clip_image032  
 
4.1.1.2.安装完成之后我们来重启服务来完成swat软件的安装。
  clip_image034
 
4.1.1.3.编辑配置文件,配置文件保存在“/etc/xinetd.d”目录中;文件的名是swat。在该默认的情况下设置的“only_from”是127.0.0.1,在这里我们设置的IP地址是我们让所要客户机的IP地址,当然相对的用户我们在这里只是设置“root”来完成,其他的都按照默认的来进行安装。具体的配置如图4-3所示:
 
clip_image036  
 
4.1.1.4.在修改完swat配置文件之后我们需要重新启动xinetd服务,使设置生效,如图4-4所示:
 
clip_image038  
 
4.1.1.5.然后我们在客户端上访问swat(在服务器上允许的客户机),然后在弹出的窗口中输入“root”以及密码,注意的在这里我们可以根据实际的情况来设置那个用户来登录。如图4-5所示:
 
clip_image040  
 
4.1.1.6.登陆成功之后就会出现迷你的界面。如图4-6所示的界面:(在如图所示的界面中可以设置更多的权限);
  clip_image042
 
4.1.1.7.如图4-7所示示我们设置share的界面:
 
clip_image044


本文转自devilangel 51CTO博客,原文链接:http://blog.51cto.com/devliangel/168712,如需转载请自行联系原作者

相关文章
|
4月前
|
Ubuntu Linux 测试技术
Linux系统之部署轻量级Markdown文本编辑器
【10月更文挑战第6天】Linux系统之部署轻量级Markdown文本编辑器
213 1
Linux系统之部署轻量级Markdown文本编辑器
|
22天前
|
Linux Docker 容器
Linux 中停止 Docker 服务报 warning 导致无法彻底停止问题如何解决?
在 Linux 系统中,停止 Docker 服务时遇到警告无法彻底停止的问题,可以通过系统管理工具停止服务、强制终止相关进程、检查系统资源和依赖关系、以及重置 Docker 环境来解决。通过以上步骤,能够有效地排查和解决 Docker 服务停止不彻底的问题,确保系统的稳定运行。
98 19
|
21天前
|
监控 Linux
Linux systemd 服务启动失败Main process exited, code=exited, status=203/EXEC
通过以上步骤,可以有效解决 systemd 服务启动失败并报错 `Main process exited, code=exited, status=203/EXEC` 的问题。关键在于仔细检查单元文件配置、验证可执行文件的有效性,并通过日志分析具体错误原因。确保可执行文件路径正确、文件具有执行权限,并且可以独立运行,将有助于快速定位和解决问题。
223 7
|
2月前
|
消息中间件 Java Kafka
【手把手教你Linux环境下快速搭建Kafka集群】内含脚本分发教程,实现一键部署多个Kafka节点
本文介绍了Kafka集群的搭建过程,涵盖从虚拟机安装到集群测试的详细步骤。首先规划了集群架构,包括三台Kafka Broker节点,并说明了分布式环境下的服务进程配置。接着,通过VMware导入模板机并克隆出三台虚拟机(kafka-broker1、kafka-broker2、kafka-broker3),分别设置IP地址和主机名。随后,依次安装JDK、ZooKeeper和Kafka,并配置相应的环境变量与启动脚本,确保各组件能正常运行。最后,通过编写启停脚本简化集群的操作流程,并对集群进行测试,验证其功能完整性。整个过程强调了自动化脚本的应用,提高了部署效率。
【手把手教你Linux环境下快速搭建Kafka集群】内含脚本分发教程,实现一键部署多个Kafka节点
|
2月前
|
Ubuntu 网络协议 Linux
快速部署WSL(Windows Subsystem for Linux)
WSL提供了一种轻量级的方法,使开发者能够在Windows上无缝运行Linux环境。通过本文介绍的步骤,可以快速安装、配置和使用WSL,以满足开发和测试的需求。
189 8
|
4月前
|
搜索推荐 Linux 测试技术
Linux系统之部署homer静态主页
【10月更文挑战第11天】Linux系统之部署homer静态主页
105 41
Linux系统之部署homer静态主页
|
3月前
|
Linux 应用服务中间件 Shell
linux系统服务二!
本文详细介绍了Linux系统的启动流程,包括CentOS 7的具体启动步骤,从BIOS自检到加载内核、启动systemd程序等。同时,文章还对比了CentOS 6和CentOS 7的启动流程,分析了启动过程中的耗时情况。接着,文章讲解了Linux的运行级别及其管理命令,systemd的基本概念、优势及常用命令,并提供了自定义systemd启动文件的示例。最后,文章介绍了单用户模式和救援模式的使用方法,包括如何找回忘记的密码和修复启动故障。
58 5
linux系统服务二!
|
3月前
|
Linux 应用服务中间件 Shell
linux系统服务!!!
本文详细介绍了Linux系统(以CentOS7为例)的启动流程,包括BIOS自检、读取MBR信息、加载Grub菜单、加载内核及驱动程序、启动systemd程序加载必要文件等五个主要步骤。同时,文章还对比了CentOS6和CentOS7的启动流程图,并分析了启动流程的耗时。此外,文中还讲解了Linux的运行级别、systemd的基本概念及其优势,以及如何使用systemd管理服务。最后,文章提供了单用户模式和救援模式的实战案例,帮助读者理解如何在系统启动出现问题时进行修复。
73 3
linux系统服务!!!
|
4月前
|
运维 监控 Linux
Linux系统之部署Linux管理面板1Panel
【10月更文挑战第20天】Linux系统之部署Linux管理面板1Panel
244 4
Linux系统之部署Linux管理面板1Panel
|
4月前
|
Web App开发 资源调度 网络协议
Linux系统之部署IP工具箱MyIP
【10月更文挑战第5天】使用Docker部署Radicale日历和联系人应用Linux系统之部署IP工具箱MyIP
179 1
Linux系统之部署IP工具箱MyIP