Linux下的网络文件系统共享

######1. samba服务简介 ########
作用:
smb = Server Message Block      Sum
cifs = Common Internet File System  Miscrosoft
windows系统共享文件时用到的协议smb
smb是由miscrosoft+sun

Linux cifs


######2.samba基本信息######
服务启动脚本:
smb.service
主配置目录:
/etc/samba
主配置文件:
/etc/smb.conf
安全上下文:
samba_share_t
端口:
139
445
安装包:
samba
samba-common

######2.samba的安装与启用######
samba的安装:
dnf install samba samba-common samba-client -y

samba服务启动:
systemctl enable --now smb

samba服务启用
firewall-cmd --permanent --add-service=samba
firewall-cmd --reload
systemctl enable --now smb.service测试:
smbclient  -L //172.25.254.125    ##当要输入root密码时请直接回车
列出共享目录

 

###### 3.samba用户的建立 #############
1.samba用户必须是被地存在的用户
2.samba用户的建立
smbpasswd -a westos    ##添加用户
smb密码是独立的密码和和westos登陆系统的密码无关
pdbedit -L        ##查看用户列表
pdbedit -x westos        ##删除用户

 

#######4.samba用户访问加目录######
主配置文件改写
cd /etc/samba/
cp -p smb.conf.example  smb.conf

当selinux开启时:                  会阻止访问家目录
setsebool  -P samba_enable_home_dirs on   调整selinux中的smb波尔值允许客户访问家目录

访问
smbclient  //172.25.254.125/westos -U westos

 

#######5.samba服务共享目录 #######
mkdir /westosdir
touch /westosdir/westosfile{1..5}
semanage fcontext -a -t samba_share_t '/westosdir(/.*)?'
restorecon -RvvF /westosdir/
vim /etc/samba/smb.conf
[westosdir]            ##共享名称
    comment = westosdir    ##共享说明
    path = /westosdir    ##共享路径

systemctl restart smb


测试:
smbclient  //172.25.254.125/westosdir -U westos

访问系统目录
[etc]            ##共享名称
    comment = etc    ##共享说明
    path = /etc    ##共享路径
当用户不能查看/etc目录时,不能更改安全上下文
getsebool -a | grep samba
samba_export_all_ro --> off    on selinux将不再对samba服务访问文件时的安全上下文进行限制
samba_export_all_rw --> off    on selinux将不再对samba服务对于文件写的安全上下文进行限制
setsebool -P samba_export_all_rw on    更改
         samba_export_all_ro

 

 

 

##### 6.samba的访问控制######
hosts allow    172.25.254.30 172.25.254.        ##当写到单独共享时之对此共享生效
hosts deny                    ##当写到【GLOBAL】时对samba整体生效
写到某一个共享目录下的配置文件下只对这个文件生效

 

#### 7.samba的常用配置参数#####
服务器端vim /etc/samba/smb.conf
valid users = westos    ##指定访问用户
valid users = +westos|@westos    ##指定访问组
browseable = yes|no    ##是否隐藏共享
systemctl restart smb

 

 

 

 

服务器端vim /etc/samba/smb.conf
writable = yes        ##可写
systemctl restart smb
客户端 mount //172.25.254.125/westosdir /mnt/ -o username=szy,password=westos
cd /mnt  对共享文件可写

write list = westos    ##指定用户可写
write list = +westos    ##指定组可写
write list = @westos

 

 


119 map to guest = bad user    ##写到全局设定中,把没有用户身份的用户都映射为guest账号
guest ok = yes        ##允许匿名用户访问
    smbclient  //172.25.254.125/westosdir
admin users = lee    ##指定此共享的超级用户身份呢

 

 

######8.autofs+samba#########
dnf install autofs -y

autofs:
在客户端实现自动挂载卸载的软件

 


配置方式:
vim /etc/auto.master
最终挂载点的上层目录    自动以子策略文件
/westos           /etc/auto.samba

 


vim 自动以子策略文件(/etc/auto.samba)
最终挂载点    挂载参数    挂载资源
samba        -fstype=cifs,username=westos,password=westos    ://172.25.254.125/westosdir

 

systemctl restart autofs

测试:
cd /westos/samba
df
自动挂载上
cd /
等待资源闲置超时    ##默认300秒 vim /etc/autofs.conf ---timeout=8(修改默认时间为8秒)
df
挂载资源自动卸载

 

 

####9.samba的多用户挂载#####
在客户端如果用普通的挂载方式
没有用过用户验证的人也可以访问samba服务
dnf install cifs-utils -y

vim /root/smbpass
username=westos
password=lee


chmod 600 /root/smbpass

 

mount -o credentials=/root/smbpass,sec=ntlmssp,multiuser //172.25.254.20/westosdir /mnt

#credentials=/root/smbpass    指定认证文件
#sec=ntlmssp            指定认证类型
#multiuser            支持多用户

 

su - westos
[westos@test /]$ ls /mnt        ##客户端主机的wetos用户没有通过认证
ls: cannot access '/mnt': Permission denied

[westos@test ~]$ cifscreds add  -u szy    172.25.254.125
Password:

[westos@test ~]$ ls /mnt/        ##通过认证可以显示
file  file1111  file2  file22222


[westos@test /]$ cifscreds add  -u szy   172.25.254.125
Key search failed: Key has expired    ##当遇到此报错信息

[westos@test /]$ cifscreds add  -u szy   -d 172.25.254.125
Password:
[westos@test ~]$ cifscreds clearall    ##执行以上两条命令解决报错

 

####10.NFS####
Net File System


nfs基本信息####
nfs-utils        ##安装包
nfs-server        ##服务脚本

/etc/exports        ##共享配置文件

端口####
2049
netstat -antlupe | gerp 2049


nfs的安装和启用####
dnf install nfs-utils -y

systemctl start nfs-server
systemctl enable --now nfs-server
firewall-cmd --permanent --add-service=rpc-bind
firewall-cmd --permanent --add-service=mountd
firewall-cmd --permanent --add-service=nfs
firewall-cmd --reload

测试:
[root@dns_node1 ~]# showmount  -e 172.25.254.125    列出服务器中的共享资源
Export list for 172.25.254.125:

 

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

/westosdir        *(ro,sync)    只读共存,并在数据真实发生改变后才同步数据到nfs共享目录
showmount  -e 172.25.254.125 测试看到共享目录

nfs配置参数####
anonuid=1000,anongid=1000    ##指定用户身份
sync                ##更改生成后同步数据到服务器
async                ##时时同步数据到服务器
rw                ##读写
ro                ##只读
no_root_squash            ##root用户挂载不转换身份
不设定用户身份默认为nobody

 


测试:
mount 172.25.254.125:/westosdir  /mnt/
cd /mnt 建立文件查看效果

 

 

 

 

####autofs+nfs#######
dnf install autofs -y    安装

vim /etc/auto.master
/misc   /etc/auto.misc
#/westos /etc/auto.share
/westos /etc/auto.nfs

vim /etc/auto.nfs
nfs     -rw     172.25.254.125:/westosdir

systemctl restart autofs.service

测试:
cd /westos/nfs
df
自动挂载上
cd /
等待资源闲置超时    ##默认300秒 vim /etc/autofs.conf ---timeout=8(修改默认时间为8秒)
df
挂载资源自动卸载

 

 

 

 

#######11.iscsi共享磁盘分区#########
服务器端

1.
给虚拟机加一块5G磁盘并进行分区
fdisk /dev/vdb -------> /dev/vdb1

 

2.
dnf install targetcli  -y  安装服务
systemctl enable --now target  开启服务

3.
iscsi_server


targetcli   编写共享策略
/> ls        蓝色为目录紫色为目录中的命令
/> /backstores/block create westos:storage1 /dev/vdb1
/> /iscsi create iqn.2021-08.com.westos:strage1                ##IQN Iscsi Qualified Name
/> /iscsi/iqn.2021-08.com.westos:strage1/tpg1/luns create /backstores/block/westos_storage1
/> /iscsi/iqn.2021-08.com.westos:strage1/tpg1/acls create iqn.2021-08.com.westos:westoskey
/> exit

firewall-cmd --permanent --add-port=3260/tcp
firewall-cmd --reload
firewall-cmd --list-all

 


4.
客户端
iscsi_client

dnf install iscsi-initiator-utils.x86_64 -y
vim /etc/iscsi/initiatorname.iscsi
InitiatorName=iqn.2021-08.com.westos:westoskey

systemctl restart iscsid

iscsiadm -m discovery -t st -p 172.25.254.125
172.25.254.125:3260,1 iqn.2021-08.com.westos:strage1共享资源可以查询

iscsiadm  -m node -T iqn.2021-08.com.westos:strage1 -p 172.25.254.125 -l   
 successful.

fdisk -l    服务器会出现一个新的硬盘/dev/sda 大小为服务器中共享的设备大小

 

 

测试
fdisk   /dev/sda   ---> /dev/sda1   建立分区
mkfs.xfs /dev/sda1
mount /dev/sda1    /mnt    挂载到mnt下可使用

 

 


5.iscsi自动挂载

blkid 查看设备id

vim /etc/fstab
UUID=60c663fe-8f16-4219-a21c-cb29019a51f6 /mnt                    xfs     defaults_netdev 0 0

_netdev 表示此设备在挂载时先启动网络和iscsi服务后生效

开启系统自动挂载

 

 

6.删除磁盘共享

客户机
vim /etc/fstab   删除自动挂载信息
umount /mnt      卸载
tree /var/lib/iscsi 读取服务器的所有数据存放目录
iscsiadm  -m node -T iqn.2021-08.com.westos:storage1 -p 172.25.254.125 -u   退出登陆
iscsiadm  -m node -T iqn.2021-08.com.westos:storage1 -p 172.25.254.125 -o delete  删除数据
tree /var/lib/iscsi

 

 

 


服务器机
targetcli
clearconfig confirm=True  清空服务器中iscsi的共享数据

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值