linux网络服务学习(4):SAMBA

1.什么是SAMBA

SAMBA也是一种文件共享工具

(1)服务名:smb

(2)软件名:samba

(3)配置文件:

/etc/samba/smb.conf(主配置文件)

/etc/samba/smbusers(别名配置文件)

(4)与FTP的区别:

FTP SAMBA
作用 共享文件 共享文件与打印服务
应用协议 FTP协议 smb/cifs协议
端口 21 139、445
能否挂载在客户端 不能
能否修改服务器端文件 不能
能否跨局域网 不能

2.登录验证模式

与vsftp一样,samba也有3种登录模式:匿名用户、本地用户、虚拟用户。默认是本地登录模式。

2.1本地用户登录

2.1.1安装服务端并启动服务

yum -y install samba
#安装服务器端
systemctl start smb
systemctl enable smb

2.1.2创建samba用户

useradd -s /sbin/nologin smbuser
#创建一个专用于smb服务的用户smbuser

#想创建samba用户,必须先创建一个系统用户,然后再用pdbedit命令把系统用户转化为samba用户
pdbedit -a smbuser
#新建samba用户。输入这条命令后,会提示输入新密码

如果想删掉samba用户可以通过以下命令:

pdbedit -x 用户名
#这样是删掉了samba用户,但同名的系统用户仍然保留

2.1.3权限设置

2.1.3.1使用samba用户家目录为共享目录

默认情况下,samba用户的家目录就是客户端登录后使用的共享目录。

打开配置文件/etc/samba/smb.conf.example,找到下图的homes一栏,所有的samba用户家目录的权限都会受到它的限制

其中,writeable代表可写入,browseable代表登录其他用户时可被浏览到。

与FTP一样,samba共享目录的权限除了受到配置文件的限制,还受到目录本身的基本权限限制,因此也要对samba用户家目录用chmod命令进行修改,当然这样也方便了对不同的samba用户进行不同的权限设置。

*需要注意的是,对于samba用户家目录的上级目录/home,需要其他用户至少有x的权限,否则打不开共享目录

2.1.3.2使用自定义的共享路径

自定义的共享目录可以在配置文件中自行设置共享权限,配置自定义共享目录的步骤如下:

在配置文件/etc/samba/smb.conf.example和/etc/samba/smb.conf中添加下列内容:

[smbshare]
#中括号内的标题可以自定义,但最好与共享目录同名
path=/var/smbshare
#/var/smbshare就是自定义的共享目录,可以提前创建,也可以修改配置文件后再创建
public=yes
#是否允许匿名登录
browseable=yes
writable=yes

然后创建共享目录,并重启服务即可生效

mkdir /var/smbshare
systemctl restart smb

自定义共享目录同样受到目录基本权限的限制

2.1.4连接测试

2.1.4.1windows连接测试

(1)登录共享目录

windows系统可以直接通过win+r键入\\samba服务器ip的方式来登录,就像windows系统间访问共享文件夹一样(其实windows的共享文件夹也是基于smb协议的)

登录后可以看到服务器下的共享目录

(2)把共享目录映射到本地磁盘

windows不仅可以连接到samba服务器,还可以把共享目录映射到本地的网络磁盘(对应linux的挂载)

右击此电脑——映射网络驱动器——输入\\samba服务器ip\共享目录

然后就可以在磁盘中看到映射过来的linux磁盘了

2.1.4.2 Linux端连接

(1)安装samba客户端

yum -y install samba-client

(2)登录samba用户家目录

smbclient -U smbuser //192.168.0.66/smbuser
#-U 用户名 是指定samba用户的,如果不写,会默认使用匿名用户登录
#//samba服务器ip 后必须要加 /共享目录

除了登录,还可以查看samba信息(包括其他共享目录等),查看命令如下:

smbclient -U smbuser -L //服务器ip

(3)登录自定义共享目录

smbclient -U smbuser //192.168.0.66/smbshare
#这里的smbshare其实并不是共享目录的名称,而是配置文件中中括号内的名称,只是我把它们设置了相同的名字

(4)客户端挂载共享目录

临时挂载:

 mount -t cifs -o username=smbuser,password=149162536 //192.168.0.66/smbshare /mnt/samba

永久挂载:

打开/etc/fstab,输入下图内容:

3.samba命令

跟ftp一样,samba有着自己的一套命令,可以通过?查看

相关推荐

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-03-25 20:10:08       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-03-25 20:10:08       100 阅读
  3. 在Django里面运行非项目文件

    2024-03-25 20:10:08       82 阅读
  4. Python语言-面向对象

    2024-03-25 20:10:08       91 阅读

热门阅读

  1. Rancher(v2.6.3)——Rancher部署Nginx(单机版)

    2024-03-25 20:10:08       41 阅读
  2. Leetcode 28:找出字符串中第一个匹配项的下标

    2024-03-25 20:10:08       40 阅读
  3. k8s中,pod服务的状态和pod里面的容器的状态关系

    2024-03-25 20:10:08       46 阅读
  4. 使用免费ChatGPT提升工作效率

    2024-03-25 20:10:08       40 阅读
  5. 游戏客户端面经

    2024-03-25 20:10:08       46 阅读
  6. Python-字典的常用方法以及常用技巧-Dict

    2024-03-25 20:10:08       37 阅读
  7. 面试算法-99-单词拆分

    2024-03-25 20:10:08       38 阅读
  8. 第九章 Spring5 高级应用及核心原理(二)

    2024-03-25 20:10:08       32 阅读
  9. Python之装饰器-带参装饰器

    2024-03-25 20:10:08       41 阅读
  10. 查看nginx日志文件

    2024-03-25 20:10:08       45 阅读
  11. 3-9 枚举类代码 演示

    2024-03-25 20:10:08       39 阅读
  12. GESP C++二级认证真题 2024年3月

    2024-03-25 20:10:08       47 阅读