IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发工具 -> 3.5 网络文件系统 -> 正文阅读

[开发工具]3.5 网络文件系统

1、samba安装与使用
dnf install samba samba-common samba-client -y
systemctl enable --now smb
firewall-cmd --permanent --add-service=samba
firewall-cmd --reload?

测试:
smbclient ?-L //172.25.254.150?? ?##当要输入root密码时请直接回车

2、samba用户管理
smbpasswd -a westos?? ?##添加用户,必须为系统中存在的用户
pdbedit -L?? ??? ?##查看用户列表
pdbedit -x westos ? ? ? ##删除用户

3、samba服务共享目录

cp smb.conf.example smb.conf -p ? ? ##复制配置文件的模板

指定用户登陆时,是访问不了家目录的,是selinux安全上下文的缘故。
setsebool -P samba_enable_home_dirs on ? ?##selinux将不会对samba服务访问家目录进行限制

mkdir /share ? ? ##自建想要共享的目录
vim /etc/samba/smb.conf ? ? ? ? ?##根据模板写共享目录参数
? ? ? ? [share]
? ? ? ? comment = share_
? ? ? ? path = /share
systemctl restart smb.service
emanage fcontext -a -t samba_share_t '/share(/.*)?' ? ##修改安全上下文是samba可以访问
restorecon -RvvF /share/ ? ?##立即生效

vim /etc/samba/smb.conf ? ? ##共享系统级目录。如果修改安全上下文会导致其他服务无法访问,所以修改相关sebool值即可
? ? ? ? [mnt]
? ? ? ? comment = mnt_
? ? ? ? path = /mnt
systemctl restart smb.service
setsebool -P samba_export_all_ro on ? ?##selinux将不再对samba服务访问文件的安全上下文进行限制
setsebool -P samba_export_all_rw on ? ?##selinux将不再对samba服务编写文件的安全上下文进行限制
getsebool -a | grep samba

4、samba的读写控制

全局黑白名单
vim /etc/samba/smb.conf
; ? ? ? interfaces = lo eth0 192.168.12.2/24 192.168.13.2/24
; ? ? ? hosts allow = 127. 192.168.12. 192.168.13.
? ? ? ? hosts allow = 172.25.254.250 ? ? ##全局白名单
? ? ? ? hosts deny ?= 172.25.254.150 ? ? ##全局黑名单
systemctl restart smb.service

指定共享目录参数
vim /etc/samba/smb.conf
? ? ? ? [share]
? ? ? ? comment = share_
? ? ? ? path = /share
? ? ? ? hosts allow =172.25.254.250
? ? ? ? browseable = no ? ? ? ? ##是否-L时显示此目录
? ? ? ? valid user = westos ? ? ##此目录只能westos用户访问
; ? ? ? ?valid user = @westos ? ##此目录只能属于westos组的用户访问
? ? ? ? writable = yes ? ? ? ? ?##此目录允许读写
; ? ? ? ?write list = +westos ? ##此目录允许属于westos组的用户读写
systemctl restart smb.service

匿名用户
vim /etc/samba/smb.conf
? ? ? ? map to guest = bad user ? ##映射匿名身份为guest账号

? ? ? ? [share]
? ? ? ? comment = share_
? ? ? ? path = /share
; ? ? ? ?hosts allow =172.25.254.250
; ? ? ? ?browseable = no
; ? ? ? ?valid user = westos
; ? ? ? ?valid user = @westos
; ? ? ? ?writable = yes
; ? ? ? ?write list = +yao ? ? ?##此共享允许guest访问
? ? ? ?guest ok = yes ? ??
systemctl restart smb.service

客户端:
mount //172.25.254.150/share /mnt -o username=westos,password=westos ? ##使用westos登陆共享目录
mount //172.25.254.150/share /mnt -o username=guest ? ##guest登陆


5、autofs+samba 实现自动挂载

客户端中:
dnf install autofs ? ? ? ? ? ? ?##安装autofs
mkdir /westos ? ? ? ? ? ??
vim /etc/auto.master ? ? ? ? ? ?##编写策略文件 ? ?
----8 /westos /etc/auto.share ?##最终挂载的上层目录 ? 子策略文件,名字任意
vim /etc/auto.share ? ? ? ?##编写子策略文件
---samba ? ? -fstype=cifs,username=yao.password=yao ? ?://172.25.254.150/share ##最终挂载点的相对路径 ?挂载参数 ?ip及资源
vim /etc/autofs.conf
---15 timeout = 3 ? ? ? ?##挂载资源3秒没有程序使用则自动卸载 默认300秒
systemctl restart autofs.service

测试:
[root@westoslinux ~]# cd /westos
[root@westoslinux westos]# ls
[root@westoslinux westos]# cd samba
[root@westoslinux samba]# df
Filesystem ? ? ? ? ? ? 1K-blocks ? ?Used Available Use% Mounted on
devtmpfs ? ? ? ? ? ? ? ? ?403532 ? ? ? 0 ? ?403532 ? 0% /dev
tmpfs ? ? ? ? ? ? ? ? ? ? 419132 ? ? ? 0 ? ?419132 ? 0% /dev/shm
tmpfs ? ? ? ? ? ? ? ? ? ? 419132 ? ?6060 ? ?413072 ? 2% /run
tmpfs ? ? ? ? ? ? ? ? ? ? 419132 ? ? ? 0 ? ?419132 ? 0% /sys/fs/cgroup
/dev/vda3 ? ? ? ? ? ? ? 17814528 3342308 ?14472220 ?19% /
/dev/vda1 ? ? ? ? ? ? ? ?1038336 ?173172 ? ?865164 ?17% /boot
tmpfs ? ? ? ? ? ? ? ? ? ? ?83824 ? ? ? 4 ? ? 83820 ? 1% /run/user/0
//172.25.254.150/share ?17814528 3397952 ?14416576 ?20% /westos/samba
[root@westoslinux samba]# cd
[root@westoslinux ~]# df
Filesystem ? ? 1K-blocks ? ?Used Available Use% Mounted on
devtmpfs ? ? ? ? ?403532 ? ? ? 0 ? ?403532 ? 0% /dev
tmpfs ? ? ? ? ? ? 419132 ? ? ? 0 ? ?419132 ? 0% /dev/shm
tmpfs ? ? ? ? ? ? 419132 ? ?6060 ? ?413072 ? 2% /run
tmpfs ? ? ? ? ? ? 419132 ? ? ? 0 ? ?419132 ? 0% /sys/fs/cgroup
/dev/vda3 ? ? ? 17814528 3342308 ?14472220 ?19% /
/dev/vda1 ? ? ? ?1038336 ?173172 ? ?865164 ?17% /boot
tmpfs ? ? ? ? ? ? ?83824 ? ? ? 4 ? ? 83820 ? 1% /run/user/0

6、samba的多用户挂载
dnf install cifs-utils -y ? ? ?##安装多用户认证安全插件
vim /root/smbpasswd ? ? ? ? ? ?##编写密码文件
---username=yao
---password=yao
chmod 600 /root/smbpasswd ??
mount -o credentials=/root/smbpasswd,multiuser,sec=ntlmssp //172.25.254.150/share ?/mnt/ ? ? ##挂载
#credentials=/root/smbpasswd?? ?指定认证文件
#sec=ntlmssp?? ??? ??? ?指定认证类型
#multiuser?? ??? ??? ?支持多用户

su - westos
ls /mnt ? ? ? ##没有安全认证,访问不了
cifscreds add -u westos 172.25.254.150 ? ?##添加认证
cifscreds clearall ? ? ? ? ?##清空密码

7、nfs(Net File System)

nfs启用:
服务器
systemctl enable --now nfs-server.service
firewall-cmd --permanent --add-service=rpc-bind
firewall-cmd --permanent --add-service=mountd
firewall-cmd --permanent --add-service=nfs
firewall-cmd --reload ? ? ? ?##nfs的运行机制较为不同,需要三个服务
客户端
showmount -e 172.25.254.150 ? ?##列出nfs服务器的共享资源

nfs配置:
服务器
vim /etc/exports
/sharedir ? ?*(ro,sync) 172.25.254.250(rw,sync,anonuid=1000,anongid=1000)
? ? ? ? ? ? ? ? ? ? ##nonuid=1000,anongid=1000?? ?指定用户身份
? ? ? ? ? ? ? ? ? ? ##sync?? ??? ? ? ? ? ?更改生成后同步数据到服务器
? ? ? ? ? ? ? ? ? ? ##async?? ??? ? ? ? ? ?时时同步数据到服务器
? ? ? ? ? ? ? ? ? ? ##rw?? ??? ? ? ? ? ?读写
? ? ? ? ? ? ? ? ? ? ##ro?? ??? ??? ?只读
? ? ? ? ? ? ? ? ? ? ##no_root_squash?? ??? ?客户端root用户挂载后沿用root身份到服务器中
exportfs -rv ? ? ##使更改生效
客户端查看效果
mount 172.25.254.150:/sharedir ?/mnt/ ?##其他主机挂载后只能读;250可读写,没有任何参数时默认身份为nobody

nfs+autofs:
客户端
vim /etc/auto.master
---/westosdir /etc/auto.nfs ? ? ? ?##最终挂载点的上一级目录 ? ?子挂载策略
vim /etc/auto.nfs
---nfs ? -rw ?172.25.254.150:/sharedir ? ? ##最终挂载的相对路径 ?挂载参数 ?挂载资源
systemctl restart autofs.service


8、关于设备共享

建立共享:

服务器
dnf install targetcli ? ? ? ? ? ? ? ##安装共享策略管理软件
systemctl enable --now target ? ? ??
targetcli ? ? ? ? ? ? ? ? ? ? ? ? ? ##编写共享策略
ls ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ##蓝色为目录,紫色为目录中的命令
/backstores/block create westos_share1 /dev/vdb1 ?##设立软件中设备的别名
/iscsi create iqn.2020-08.com.westos:share1 ? ##设立对外共享的名称
/iscsi/iqn.2020-08.com.westos:share1/tpg1/luns create /backstores/block/westos_share1
? ?##对外共享名称与设备关联
/iscsi/iqn.2020-08.com.westos:share1/tpg1/acls create iqn.2020-08.com.westos:key1
? ?##设定访问key
exit
firewall-cmd --permanent --add-port=3260/tcp ? ##开放端口
firewall-cmd --reload

客户端
dnf install iscsi-initiator-utils.x86_64
iscsiadm -m discovery -t st -p 172.25.254.150 ? ?##查询共享信息
vim /etc/iscsi/initiatorname.iscsi
---InitiatorName=iqn.2020-08.com.westos:key1 ? ? ##指定共享key
systemctl restart iscsid ? ? ? ?##重启控制配置的服务
iscsiadm -m node -T iqn.2020-08.com.westos:share1 -p 172.25.254.150 -l##-l登陆共享设备
fdisk -l
若想让该设备永久挂载编写/etc/fstab时,因为是通过网络访问,所以需要设定defaults,_netdev。使连接好网络后再挂载。

客户端取消登陆 服务器删除共享资源:

客户端
iscsiadm -m node -T iqn.2020-08.com.westos:share1 -p 172.25.254.150 -u ? ##退出登陆,但数据依旧存在,重启iscsi服务会重新出现
iscsiadm -m node -T iqn.2020-08.com.westos:share1 -p 172.25.254.150 -o delete ?##-u后执行此命令,删除数据即可永久退出

服务器
targetcli
clearconfig confirm=True ? ##清除共享数据

  开发工具 最新文章
Postman接口测试之Mock快速入门
ASCII码空格替换查表_最全ASCII码对照表0-2
如何使用 ssh 建立 socks 代理
Typora配合PicGo阿里云图床配置
SoapUI、Jmeter、Postman三种接口测试工具的
github用相对路径显示图片_GitHub 中 readm
Windows编译g2o及其g2o viewer
解决jupyter notebook无法连接/ jupyter连接
Git恢复到之前版本
VScode常用快捷键
上一篇文章      下一篇文章      查看所有文章
加:2021-08-12 16:48:40  更:2021-08-12 16:51:19 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/16 11:54:00-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码