糖尿病康复,内容丰富有趣,生活中的好帮手!
糖尿病康复 > 网络文件系统(samba nfs iscsi)

网络文件系统(samba nfs iscsi)

时间:2024-03-24 00:16:54

相关推荐

网络文件系统(samba nfs iscsi)

一、samba服务简介

1、smb协议

smb(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通信协议,它为局域网内的不同操作系统的计算机之间提供文件及打印机等资源的共享服务。SMB 协议是客户机/服务器型协议,客户机通过该协议可以访问服务器上的共享文件系统、打印机及其他资源。

2、ftp 服务 与 samba 服务对比

(1)ftp 的优缺点:

优点:文件传输、应用层协议、可跨平台

缺点:只能实现文件传输,无法实现文件系统挂载;无法直接修改服务器端文件

(2)Samba 的特性:

使用 smb/cifs 协议、可跨平台、可实现文件系统挂载、可实现服务器端修改文件

作用:

windows系统共享文件时用到的协议smb

smb是由miscrosoft+sun

Linux 系统用到的是cifs

CIFS 是一个新提出的协议,它使程序可以访问远程Internet计算机上的文件并要求此计算机提供服务。CIFS 使用客户/服务器模式。客户程序请求远在服务器上的服务器程序为它提供服务。服务器获得请求并返回响应。CIFS是公共的或开放的SMB协议版本,并由Microsoft使用。SMB协议在局域网上用于服务器文件访问和打印的协议。像SMB协议一样,CIFS在高层运行,而不像TCP/IP协议那样运行在底层。CIFS可以看做是应用程序协议如文本传输协议和超文本传输协议的一个实现

二、samba基本信息

由于/etc/samba/ samba.conf 中内容较少,配置文件不是很完整所以cp smb.conf.example smb.conf 使配置文件完整

三、samba的安装与启用

samba的安装:dnf install samba samba-common samba-client -ysamba服务启动:systemctl enable --now smbsamba服务启用firewall-cmd --permanent --add-service=sambafirewall-cmd --reload

测试:

smbclient -L //172.25.254.101 ##当要输入root密码时请直接回车

三、samba用户的建立

1.samba用户必须是本地存在的用户

2.samba用户的建立

smbpasswd -a westos ##添加用户pdbedit -L ##查看用户列表pdbedit -x westos ##删除用户

四、samba用户访问加目录

当selinux开启时:setsebool -P samba_enable_home_dirs on(1)windows下:\\172.25.254.20 ##访问net use ##查看访问记录net use * /del ##删除访问记录(2)在linux下:smbclient //172.25.254.101/westos -U westos

验证:

五、samba服务共享目录

mkdir /westosdirtouch /westosdir/westosfile{1..5}semanage fcontext -a -t samba_share_t '/westosdir(/.*)?'restorecon -RvvF /westosdir/vim /etc/samba/smb.confsystemctl restart smb

[westos_share] ##共享名称

comment = westos dir ##共享说明

path = /westosdir ##共享路径

没有设置安全上下文的情况:

设置安全上下文之后情况:

如果共享目录为系统目录:例如/mnt

[westos_share]

comment = westos dir

path = /mnt

因为系统文件不能随便给权限或者设置其安全上下文,所以需要开启下面这个服务samba_export_all_ro

getsebool -a | grep sambasetsebool -P samba_export_all_ro on

验证:

六、samba的访问控制

hosts allow 172.25.254.1 172.25.254. ##当写到单独共享时之对此共享生效

hosts deny##当写到【GLOBAL】时对samba整体生效

测试:

七、samba的常用配置参数

测试:(此时的测试可以将这个共享目录挂载之后进行写入)

vim /etc/samba/smb.confwritable = yes##可写systemctl restart smb.serverchmod 777 /westosdir 为了方便实验,所以给这个目录777权限mount -o username=westos,password=westos //172.25.254.101/westos_share /mnt

vim /etc/samba/smb.confwrite list = lee 指定lee 可写systemctl restart smb.service

usermod -G westos leevim /etc/samba/smb.confwrit list = +westos westos组可写systemctl restart smb.servicemount -o username=lee,password=westos //172.25.254.101/westos_share /mnttouch file1

vim /etc/samba/smb.confvalid users = lee ##指定访问用户systemctl restart smb.servicemount -o username=westos,password=westos //172.25.254.101/westos_share /mntmount -o username=lee,password=westos //172.25.254.101/westos_share /mn

指定访问组和上面一个道理,这里不进行测试

vim /etc/samba/smb.confbrowseable = yes|no##是否隐藏共享systemctl restart smb.servicesmbclient -L //172.25.254.101

vim /etc/samba/smb.confmap to guest = bad user##写到全局设定中(118)guest ok = yes##允许匿名用户访问systemctl restart smb.service mount -o username=guest //172.25.254.101/westos_share /mnt

八、samba的多用户挂载

在客户端如果用普通的挂载方式

没有用过用户验证的人也可以访问samba服务

dnf install cifs-utils -yvim /root/smbpassusername=westospassword=westos

mount -o credentials=/root/smbpass,sec=ntlmssp,multiuser //172.25.254.101/westos_share /mnt#credentials=/root/smbpass 指定认证文件#sec=ntlmssp 指定认证类型#multiuser 支持多用户

root@client ~]# su - westos

[westos@client ~]$ cd /mnt

[westos@client mnt]$ ls ##客户端主机的westos用户没有通过认证

ls: cannot open directory '.': Permission denied

[westos@client mnt]$ ls

ls: cannot open directory '.': Permission denied

[westos@client mnt]$ cifscreds add -u westos 172.25.254.101

Password:

[westos@client mnt]$ ls ##通过认证可以显示

file1 file2 file3

[westos@test /]$ cifscreds add -u lee 172.25.254.101

Key search failed: Key has expired ##当遇到此报错信息

[westos@test /]$ cifscreds add -u lee -d 172.25.254.101

Password:

[westos@test ~]$ cifscreds clearall ##执行以上两条命令解决报错

autofs+samba

autofs:在客户端实现自动挂载卸载的软件下载:dnf install autofs.x86_64配置方式:vim /etc/auto.master最终挂载点的上层目录 自动以子策略文件/mnt /etc/auto.sambavim 自动以子策略文件(/etc/auto.samba)最终挂载点 挂载参数 挂载资源samba -fstype=cifs,username=westos,password=westos ://172.25.254.101/westos_sharesystemctl restart autofs

测试:

cd /mnt/samba

df

cd /root

等待资源闲置超时 ##默认300秒 vim /etc/autofs.conf ---->Timeout=3

df

挂载资源自动卸载

NFS

Net File System

NFS是基于UDP/IP协议的应用,其实现主要是采用远程过程调用RPC机制,RPC提供了一组与机器、操作系统以及低层传送协议无关的存取远程文件的操作。RPC采用了XDR的支持。XDR是一种与机器无关的数据描述编码的协议,他以独立与任意机器体系结构的格式对网上传送的数据进行编码和解码,支持在异构系统之间数据的传送。

工作原理:

NFS的工作原理是使用客户端/服务器架构,由一个客户端程序和服务器程序组成。服务器程序向其他计算机提供对文件系统的访问,其过程称为输出。NFS客户端程序对共享文件系统进行访问时,把它们从NFS服务器中“输送”出来。文件通常以块为单位进行传输。其大小是8KB(虽然它可能会将操作分成更小尺寸的分片)。NFS传输协议用于服务器和客户机之间文件访问和共享的通信,从而使客户机远程地访问保存在存储设备上的数据。

特点:

(1)提供透明文件访问以及文件传输;

(2)容易扩充新的资源或软件,不需要改变现有的工作环境;

(3) 高性能,可灵活配置。

nfs的启用

systemctl start nfs-serverfirewall-cmd --permanent --add-service=rpc-bindfirewall-cmd --permanent --add-service=mountdfirewall-cmd --permanent --add-service=nfsfirewall-cmd --reload

测试:

[root@server ~]# showmount -e 172.25.254.101

Export list for 172.25.254.101:

nfs配置

vim /etc/exports ##此文件更改后生效exportfs -rv共享目录 共享给谁(共享参数)/westosdir *(ro)

测试:

nfs配置参数

测试:

mount 172.25.254.101:/westosdir /mnt/

nfs+autofs

参看autofs.samba章节内容

vim /etc/auto.master/mnt auto.nfsvim /etc/auto.nfsnfs 172.25.254.101:/westosdirsystemctl restart autofs.service cd /mnt/nfsdf

测试:

iscsi

iSCSI(Internet Small Computer System Interface,发音为/ˈаɪskʌzi/),Internet小型计算机系统接口,又称为IP-SAN,是一种基于因特网及SCSI-3协议下的存储技术,由IETF提出,并于2月11日成为正式的标准。与传统的SCSI技术比较起来,iSCSI技术有以下三个革命性的变化:

把原来只用于本机的SCSI协议透过TCP/IP网络发送,使连接距离可作无限的地域延伸;

连接的服务器数量无限(原来的SCSI-3的上限是15);

由于是服务器架构,因此也可以实现在线扩容以至动态部署.

功能:

iSCSI利用了TCP/IP的port 860 和 3260 作为沟通的渠道。透过两部计算机之间利用iSCSI的协议来交换SCSI命令,让计算机可以透过高速的局域网集线来把SAN模拟成为本地的储存装置。

iSCSI使用 TCP/IP 协议(一般使用TCP端口860和3260)。 本质上,iSCSI 让两个主机通过 IP 网络相互协商然后交换SCSI命令。这样一来,iSCSI 就是用广域网仿真了一个常用的高性能本地存储总线,从而创建了一个存储局域网(SAN)。不像某些 SAN 协议,iSCSI 不需要专用的电缆;它可以在已有的交换和 IP 基础架构上运行。然而,如果不使用专用的网络或者子网( LAN 或者 VLAN ),iSCSI SAN 的部署性能可能会严重下降。于是,iSCSI 常常被认为是光纤通道(Fiber Channel)的一个低成本替代方法,而光纤通道是需要专用的基础架构的。但是,基于以太网的光纤通道(FCoE)则不需要专用的基础架构。

1.fdisk /dev/vdb -------> /dev/vdb12.dnf install targetcli -y

iscsi_server #服务端配置targetcli #进入运行环境/> /backstores/block create westos_storage1 /dev/vdb1 #将/dev/vdb变成网络磁盘/> /iscsi create iqn.-.westos:storage1 #创建一个人iqn 的表达方式的链/> /iscsi/iqn.-.westos:strage1/tpg1/luns create /backstores/block/westos_storage1 #将网络磁盘和链联系起来/> /iscsi/iqn.-.westos:strage1/tpg1/acls create iqn.-.westos:westoskey1 #创建key 密码/> exit #退出保存

iscsi_client #客户端dnf install iscsi-initiator-utils.x86_64 -y vim /etc/iscsi/initiatorname.iscsiInitiatorName=iqn.-.westos:westoskey1<---- key checksystemctl restart iscsidiscsiadm -m discovery -t st -p 172.25.254.101iscsiadm -m node -T iqn.-.westos:strage1 -p 172.25.254.101 -l ---> /dev/sdafdisk /dev/sda ---> /dev/sda1mkfs.xfs /dev/sda1mount /dev/sda1 /mntiscsiadm -m node -T iqn.-.westos:strage1 -p 172.25.254.101 -u删除/dev/sdaiscsiadm -m node -T iqn.-.westos:strage1 -p 172.25.254.101 -o delete 删除树文件

如果觉得《网络文件系统(samba nfs iscsi)》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。