网络文件系统——上(samba,NFS,实现网络共享文件)
目录
一、samba
1、samba安装和启用
2、创建samba服务共享目录
3、匿名用户无法访问内容,建立samba用户,samba用户访问成功
4、通过挂载方式,让用户访问
5、在客户端实现自动挂载和卸载(autofs+samba)
6、samba的访问控制及常用配置参数
7、samba的多用户挂载
二、NFS(Net File System)
1、安装
2、 nfs配置,将共享目录共享给172.25.254.50,只读
3、 nfs配置,将共享目录共享给172.25.254.50,可读写
4、自动挂载卸载nfs+autofs
5、指定用户身份
6、当挂载时使用超级用户,则沿用超级用户身份
一、samba
- smb = Server Message Block windows系统共享文件时用到的协议smb
- cifs = Common Internet File System Linux 系统共享文件时用到的协议cifs
- 实际上smb和cifs是一回事
1、samba安装和启用
100为安装samba的服务器,50为测试主机
[root@westosa100 ~]# dnf install samba samba-common samba-client -y
[root@westos_student50 Desktop]# dnf install samba samba-common samba-client -y
[root@westosa100 ~]# systemctl enable --now smb
Created symlink /etc/systemd/system/multi-user.target.wants/smb.service → /usr/lib/systemd/system/smb.service.
[root@westosa100 ~]# firewall-cmd --permanent --add-service=samba
success
[root@westosa100 ~]# firewall-cmd --reload
success
2、创建samba服务共享目录
[root@westosa100 ~]# mkdir /westosshare
[root@westosa100 ~]# touch /westosshare/westosfile{1..5}
[root@westosa100 ~]# semanage fcontext -a -t samba_share_t '/westosshare(/.*)?'
[root@westosa100 ~]# restorecon -RvvF /westosshare/
[root@westosa100 ~]# vim /etc/samba/smb.conf
[westos_smb]comment = local westosdirpath = /westosshare
[root@westosa100 ~]# systemctl restart smb.service
[root@westos_student50 Desktop]# smbclient -L //172.25.254.100/westos_smb
Enter SAMBA\root's password:
Anonymous login successfulSharename Type Comment--------- ---- -------print$ Disk Printer Driverswestos_smb Disk local westosdirIPC$ IPC IPC Service (Samba 4.11.2)
SMB1 disabled -- no workgroup available
- 在50主机测试,共享成功
3、匿名用户无法访问内容,建立samba用户,samba用户访问成功
[root@westos_student50 Desktop]# smbclient //172.25.254.100/westos_smb
Enter SAMBA\root's password:
Anonymous login successful
tree connect failed: NT_STATUS_ACCESS_DENIED
[root@westosa100 ~]# id westos
uid=1000(westos) gid=1000(westos) groups=1000(westos)
[root@westosa100 ~]# smbpasswd -a westos
New SMB password:
Retype new SMB password:
Added user westos.
[root@westosa100 ~]# pdbedit -L
westos:1000:westos
[root@westos_student50 Desktop]# smbclient //172.25.254.100/westos_smb -U westos
Enter SAMBA\westos's password:
Try "help" to get a list of possible commands.
smb: \> ls. D 0 Sat Nov 27 14:43:31 2021.. D 0 Sat Nov 27 14:42:50 2021westosfile1 N 0 Sat Nov 27 14:43:31 2021westosfile2 N 0 Sat Nov 27 14:43:31 2021westosfile3 N 0 Sat Nov 27 14:43:31 2021westosfile4 N 0 Sat Nov 27 14:43:31 2021westosfile5 N 0 Sat Nov 27 14:43:31 202117814528 blocks of size 1024. 14078488 blocks available
4、通过挂载方式,让用户访问
[root@westos_student50 Desktop]# mount //172.25.254.100/westos_smb /mnt/ -o username=westos,password=westos
[root@westos_student50 Desktop]# df
Filesystem 1K-blocks Used Available Use% Mounted on
devtmpfs 1893192 0 1893192 0% /dev
tmpfs 1921028 0 1921028 0% /dev/shm
tmpfs 1921028 18392 1902636 1% /run
tmpfs 1921028 0 1921028 0% /sys/fs/cgroup
/dev/sda3 79127812 24645932 54481880 32% /
/dev/sda1 518816 220672 298144 43% /boot
/dev/loop0 8238560 8238560 0 100% /var/www/html/source
tmpfs 384204 16 384188 1% /run/user/42
tmpfs 384204 24 384180 1% /run/user/0
//172.25.254.100/westos_smb 17814528 3736040 14078488 21% /mnt
[root@westos_student50 Desktop]# ls /mnt
westosfile1 westosfile2 westosfile3 westosfile4 westosfile5
5、在客户端实现自动挂载和卸载(autofs+samba)
[root@westos_student50 Desktop]# dnf install autofs-1:5.1.4-40.el8.x86_64 -y
[root@westos_student50 Desktop]# umount /mnt ###将之前的挂载先卸掉
[root@westos_student50 Desktop]# df
Filesystem 1K-blocks Used Available Use% Mounted on
devtmpfs 1893192 0 1893192 0% /dev
tmpfs 1921028 0 1921028 0% /dev/shm
tmpfs 1921028 18392 1902636 1% /run
tmpfs 1921028 0 1921028 0% /sys/fs/cgroup
/dev/sda3 79127812 23624204 55503608 30% /
/dev/sda1 518816 220672 298144 43% /boot
/dev/loop0 8238560 8238560 0 100% /var/www/html/source
tmpfs 384204 16 384188 1% /run/user/42
tmpfs 384204 24 384180 1% /run/user/0
[root@westos_student50 Desktop]# vim /etc/auto.master
/smb /etc/auto.samba ####最终挂载点的上层目录 自动挂载子策略文件
[root@westos_student50 Desktop]# vim /etc/auto.samba
westos_smb -fstype=cifs,username=westos,password=westos ://172.25.254.100/westos_smb
##最终挂载点 挂载参数 挂载资源
[root@westos_student50 Desktop]# vim /etc/autofs.conf
timeout = 3 ###默认300秒,资源闲置就会卸载,这里为了试验效果改为3s
[root@westos_student50 Desktop]# systemctl restart autofs
[root@westos_student50 Desktop]# cd /smb/westos_smb
[root@westos_student50 westos_smb]# df
Filesystem 1K-blocks Used Available Use% Mounted on
devtmpfs 1893192 0 1893192 0% /dev
tmpfs 1921028 0 1921028 0% /dev/shm
tmpfs 1921028 18400 1902628 1% /run
tmpfs 1921028 0 1921028 0% /sys/fs/cgroup
/dev/sda3 79127812 23622408 55505404 30% /
/dev/sda1 518816 220672 298144 43% /boot
/dev/loop0 8238560 8238560 0 100% /var/www/html/source
tmpfs 384204 16 384188 1% /run/user/42
tmpfs 384204 24 384180 1% /run/user/0
//172.25.254.100/westos_smb 17814528 3736032 14078496 21% /smb/westos_smb
[root@westos_student50 westos_smb]# cd
[root@westos_student50 ~]# df
Filesystem 1K-blocks Used Available Use% Mounted on
devtmpfs 1893192 0 1893192 0% /dev
tmpfs 1921028 0 1921028 0% /dev/shm
tmpfs 1921028 18400 1902628 1% /run
tmpfs 1921028 0 1921028 0% /sys/fs/cgroup
/dev/sda3 79127812 23622408 55505404 30% /
/dev/sda1 518816 220672 298144 43% /boot
/dev/loop0 8238560 8238560 0 100% /var/www/html/source
tmpfs 384204 16 384188 1% /run/user/42
tmpfs 384204 24 384180 1% /run/user/0
- 测试,进入设置的挂载点,实现了自动挂载,之后退出目录,等待三s,实现了自动卸载
6、samba的访问控制及常用配置参数
######当写到单独共享时之对此共享生效,当写到【GLOBAL】时对samba整体生效,下图是写到单独的共享目录westos_smb中的########
- hosts allow 172.25.254.30 白名单
- hosts deny 172.25.254.50 黑名单
#### samba的常用配置参数#####
- writable = yes ##可写
- write list = westos ##指定用户可写
- write list = +westos ##指定组成员可写
- write list = @westos ##指定组成员可写
- valid users = lee ##指定访问用户,只有lee可以使用共享文件
- valid users = +lee|@lee ##指定访问组
- browseable = yes|no ##是否隐藏共享,隐藏后看不见共享文件,但可以使用
- map to guest = bad user ##写到全局设定中
- guest ok = yes ##允许匿名用户访问
- admin users = lee ##指定此共享的超级用户身份
测试就不做了,跟前面很多实验黑白名单,写权限等测试类似 ,思想是一样的
7、samba的多用户挂载
在客户端如果用普通的挂载方式没有用过用户验证的人也可以访问samba服务这显然是不合理的,因此使用多用户挂载的方式
- 实验前,先把匿名访问关掉,之后重启smb服务
[root@westos_student50 Desktop]# dnf install cifs-utils -y
[root@westos_student50 Desktop]# vim /root/smbpass
username=westos
password=westos
[root@westos_student50 Desktop]# mount -o credentials=/root/smbpass,sec=ntlmssp,multiuser //172.25.254.100/westos_smb /mnt/ #credentials=/root/smbpass 指定认证文件#sec=ntlmssp 指定认证类型#multiuser 支持多用户
[root@westos_student50 Desktop]# su - westos
Last login: Sun Nov 28 09:48:06 CST 2021 on pts/2
[westos@westos_student50 ~]$ cifscreds add -u westos 172.25.254.100
Password:
[westos@westos_student50 ~]$ ls /mnt
ls: cannot access '/mnt': Permission denied
[westos@westos_student50 ~]$ cifscreds clearall
[westos@westos_student50 ~]$ cifscreds add -u westos 172.25.254.100
Password:
[westos@westos_student50 ~]$ ls /mnt
westosfile1 westosfile2 westosfile3 westosfile4 westosfile5
注:
- [westos@test /]$ cifscreds add -u lee 172.25.254.20
Key search failed: Key has expired ##
- 当遇到上面的报错信息时,##执行以下两条命令解决报错
[westos@test /]$ cifscreds add -u lee -d 172.25.254.20
Password:
[westos@test ~]$ cifscreds clearall
二、NFS(Net File System)
用于 linux linux ,linux unix , unix unix 之间实现文件共享
[root@westosa100 ~]# dnf install nfs-utils
[root@westosa100 ~]# systemctl enable --now nfs-server
Created symlink /etc/systemd/system/multi-user.target.wants/nfs-server.service → /usr/lib/systemd/system/nfs-server.service.
[root@westosa100 ~]# firewall-cmd --permanent --add-service=rpc-bind
success
[root@westosa100 ~]# firewall-cmd --permanent --add-service=mountd
success
[root@westosa100 ~]# firewall-cmd --permanent --add-service=nfs
success
[root@westosa100 ~]# firewall-cmd --reload
success
[root@westosa100 ~]# showmount -e 172.25.254.100
Export list for 172.25.254.100:
[root@westos_student50 ~]# showmount -e 172.25.254.100
Export list for 172.25.254.100:
1、安装
- 在50测试主机测试,共享成功
2、 nfs配置,将共享目录共享给172.25.254.50,只读
[root@westosa100 ~]# vim /etc/exports ####共享配置文件,此目录更改后,exportfs -rv生效
/mnt 172.25.254.50(ro)
[root@westosa100 ~]# exportfs -rv
exporting 172.25.254.50:/mnt
[root@westosa100 ~]# chmod 777 /mnt/ #####更改权限,使共享目录可写
[root@westos_student50 ~]# mount 172.25.254.100:/mnt /mnt/
[root@westos_student50 ~]# ls /mnt/
8-abstract-dark.xml circles-dark.xml desktop-backgrounds-default.xml westos.sql
8-abstract-light.xml circles-light.xml hello-world-dark.xml
[root@westos_student50 ~]# cd /mnt/
[root@westos_student50 mnt]# touch nfstest
touch: cannot touch 'nfstest': Read-only file system
- 只可以读,不可以写
3、 nfs配置,将共享目录共享给172.25.254.50,可读写
[root@westosa100 ~]# vim /etc/exports
/mnt 172.25.254.50(rw) ###改为可写
[root@westosa100 ~]# exportfs -rv
exporting 172.25.254.50:/mnt
[root@westos_student50 mnt]# cd
[root@westos_student50 ~]# umount /mnt/
[root@westos_student50 ~]# mount 172.25.254.100:/mnt /mnt/
[root@westos_student50 ~]# cd /mnt/
[root@westos_student50 mnt]# touch nfstest
[root@westos_student50 mnt]# ls
8-abstract-dark.xml circles-dark.xml desktop-backgrounds-default.xml nfstest
8-abstract-light.xml circles-light.xml hello-world-dark.xml westos.sql
- 卸载后重新挂载,可写可读
4、自动挂载卸载nfs+autofs
同7中samba+autofs
5、指定用户身份
[root@westosa100 ~]# vim /etc/exports
/mnt 172.25.254.50(rw,anonuid=1000,anongid=1000) ###制定用户身份所有人所有组为westos,1000为westos的id
[root@westosa100 ~]# exportfs -rv
exporting 172.25.254.50:/mnt
[root@westos_student50 mnt]# cd
[root@westos_student50 ~]# umount /mnt/
[root@westos_student50 ~]# id westos
uid=1000(westos) gid=1000(westos) groups=1000(westos)
[root@westos_student50 ~]# mount 172.25.254.100:/mnt /mnt/
[root@westos_student50 ~]# cd /mnt/
[root@westos_student50 mnt]# touch test2
[root@westos_student50 mnt]# ll
total 28
-rw-r--r-- 1 root root 823 Aug 13 2019 8-abstract-dark.xml
-rw-r--r-- 1 root root 829 Aug 16 2019 8-abstract-light.xml
-rw-r--r-- 1 root root 805 Aug 13 2019 circles-dark.xml
-rw-r--r-- 1 root root 811 Aug 13 2019 circles-light.xml
-rw-r--r-- 2 root root 1606 Feb 19 2019 desktop-backgrounds-default.xml
-rw-r--r-- 1 root root 829 Aug 13 2019 hello-world-dark.xml
-rw-r--r-- 1 nobody nobody 0 Nov 28 10:43 nfstest
-rw-r--r-- 1 westos westos 0 Nov 28 11:01 test2
-rw-r--r-- 1 root root 1931 Nov 21 09:37 westos.sql
- 查看westos的id
- 测试
6、当挂载时使用超级用户,则沿用超级用户身份
[root@westosa100 ~]# vim /etc/exports
[root@westosa100 ~]# cat /etc/exports
/mnt 172.25.254.50(rw,no_root_squash)
[root@westosa100 ~]# exportfs -rv
exporting 172.25.254.50:/mnt
[root@westos_student50 mnt]# cd
[root@westos_student50 ~]# umount /mnt/
[root@westos_student50 ~]# mount 172.25.254.100:/mnt /mnt/
[root@westos_student50 ~]# cd /mnt/
[root@westos_student50 mnt]# touch test3
[root@westos_student50 mnt]# ll
total 28
-rw-r--r-- 1 root root 823 Aug 13 2019 8-abstract-dark.xml
-rw-r--r-- 1 root root 829 Aug 16 2019 8-abstract-light.xml
-rw-r--r-- 1 root root 805 Aug 13 2019 circles-dark.xml
-rw-r--r-- 1 root root 811 Aug 13 2019 circles-light.xml
-rw-r--r-- 2 root root 1606 Feb 19 2019 desktop-backgrounds-default.xml
-rw-r--r-- 1 root root 829 Aug 13 2019 hello-world-dark.xml
-rw-r--r-- 1 nobody nobody 0 Nov 28 10:43 nfstest
-rw-r--r-- 1 westos westos 0 Nov 28 11:01 test2
-rw-r--r-- 1 root root 0 Nov 28 11:05 test3
-rw-r--r-- 1 root root 1931 Nov 21 09:37 westos.sql
- 测试
网络文件系统——上(samba,NFS,实现网络共享文件)相关推荐
- RHEL6.4上Samba/NFS服务器简单配置
近期在RHEL6.4上尝试搭建一个NAS,底层使用XFS文件系统,对外主要提供samba协议和NFS协议共享,这里把主要步骤记录下来. 环境:RHEL6.4,IP:192.168.50.117 1.关 ...
- linux上ftp和ns有什么区别,Linux下ftp使用及nfs网络文件系统
ftp 是一个文件传输协议 ,是tcp/ip 文件传输协议的一种 ftp可以用与文件的共享也可以用于文件的固定IP的收集 Linux下使用说明: 首先我们需要安装ftp程序 yum -y instal ...
- 网络文件系统---nfs
文件系统 nfs--案例 1.文件系统 1.1 本地文件系统 Linux: xfs ext win~ : ntfs fat 1.2网络文件系统 nfs 是Linux 与L ...
- CentOS / RHEL Cachefiles 加速网络文件系统NFS访问速度
为什么80%的码农都做不了架构师?>>> 1. CacheFiles介绍 NFS是一种经常使用到的网络共享文件系统,在分布式环境下,多台服务器的文件共享是一个问题.然而,对于这 ...
- linux学习笔记-RH135(六):网络文件系统
网络文件系统 一.samba服务 1.samba基本信息 2.samba的安装与启用 3.samba用户的建立 4.samba用户访问家目录 6.samba访问控制 7.samba的常用配置参数 8. ...
- 使用Network Recycle Bin启用映射网络驱动器上的回收站
前言 在内网环境中我们经常会使用NAS或者Samba在Windows中映射网络驱动器,方便局域网用户实时共享交换数据.但当存储在网络或映射网络上的任何文件被删除时,该文件将被永久删除.它不会去到本地计 ...
- 深入理解K8S网络原理上
K8s四层网络 抽象成四层网络 Node节点网络 底层基础设施支持节点主机之间网络的互通 Pod网络 能够相互做IP寻址.相互通讯 同一节点上的Pod网络 大多数场景下一个pod下面有1个容器 也有一 ...
- linux nfs acl 特定ip,技术|RHCSA 系列(七): 使用 ACL(访问控制列表) 和挂载 Samba/NFS 共享...
在上一篇文章(RHCSA 系列(六))中,我们解释了如何使用 parted 和 ssm 来设置和配置本地系统存储. RHCSA 系列: 配置 ACL 及挂载 NFS/Samba 共享 – Part 7 ...
- LinuxProbe 0x15 SAMBA文件共享服务、NFS网络文件系统、AutoFs自动挂载服务、DNS域名解析服务
配置网络文件系统(Network File System,NFS)服务来简化Linux系统之间的文件共享工作, 通过部署NFS服务在多台Linux系统之间挂载并使用资源. 在管理设备挂载信息时,使用a ...
- linux通过网关挂在nfs,NFS 网络文件系统挂载在A8板子上
我承认自己是菜鸟,没什么网络知识就来搞挂载nfs网络文件系统,花费了5天的时间才把nfs网络文件系统成功挂载在A8板子上,实现了A8板子和虚拟机的文件共享.分享一下个人经验: 以下是基于nfs已经完成 ...
最新文章
- Tesla AutoPilot纯视觉方案解析
- MySQL5.7登陆数据库管理控制平台问题 ERROR 1045(28000)
- mass Framework emitter模块
- 数据挖据之GeoHash核心原理解析
- 修改 IntelliJ IDEA 默认配置路径
- Shell基础-环境变量配置文件
- linux C库编译
- SpringBoot+MySql实现一对多再多对多的数据库的设计以及业务层增删改查的实现
- 【Python面试】 说说Python变量、函数、类的命名规则?
- 深入理解 JVM Class文件格式(六)
- 凯恩帝k1000ti参数设置_KND1000TI系统参数
- 【转载】SCI论文配图配色方案参考网站
- 2021_WSDM_Pre-Training Graph Neural Networks for Cold-Start Users and Items Representation
- Yolov5目标检测环境搭建过程(Cuda+Pytorch+Yolov5)
- 4k超清壁纸APP抓包获取所有壁纸下载地址
- 基础——ROM, RAM, FLASH, SSD, DDR3/4, eMMC, UFS, SD卡, TF卡,相互关系
- 基于飞桨图像分类套件PaddleClas的柠檬分类竞赛实战
- 响应式编程之Spring Webflux
- Redis(十)——HyperLogLog 基数统计和 Bitmap位图场景详解
- 手游侠岚服务端+客户端源码+资源说明+启动脚本