萌新的linux之旅25

来源:互联网 发布:vmware虚拟机备份软件 编辑:程序博客网 时间:2024/05/16 11:57

samba 网络文件系统(存储分离)

简介
Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成。SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通信协议,它为局域网内的不同计算机之间提供文件及打印机等资源的共享服务。SMB协议是客户机/服务器型协议,客户机通过该协议可以访问服务器上的共享文件系统、打印机及其他资源。
yum install samba samba-common samba-client -y 安装samba
samba在TCP,UDP上的端口都打开
samba可以挂载,可以运用操作,和apache不一样,apache只是文件传输,而samba可以共享文件,可以操作运用共享文件

/etc/samba/smb.conf samba的主配置文件
可以通过修改里面的配置信息,来实现一些我们需要的功能,不过修改后得重启smb服务才能生效
例如,在samba里建立两个共享目录
vim /etc/samba/smb.conf

这里写图片描述

然后添加用户
[root@localhost ~]# smbpasswd -a student 添加用户,前提是这个用户是在本机真实存在的用户
New SMB password:
Retype new SMB password:
Added user student.
pdbedit -L ##查看用户信息
关闭selinux,不然无法查看
smbclient -L //172.25.254.209 -U student 查看信息
smbclient //172.25.254.209/DATA -U student 以student用户身份登陆/DATA 目录
在另一台主机上直接挂载
mount -o username=student,password=student //172.25.254.209/student /mnt
如果df发现挂载上了,这样,哪怕原来的服务器损坏了,也还可以使用,这就实现了存储分离,也可以登陆使用,不需要挂载
可以开启selinux ,不过得打开相应的selinux权限才可以访问,为了实验方便,建议关闭selinux,因为selinux开启时,samba服务因为安全上下文不符合,导致文件无法查看。而且系统级目录不能随意更改安全上下文,所以要么修改布尔值,要么关闭selinux。
setsebool -P samba_enable_home_dirs on 打开selinux上的samba服务
setsebool -P samba_export_all_ro on 打开samba服务的读功能

这里写图片描述

这里写图片描述

samba是服务,用cifs协议

samba_enable_home_dirs on 只是打开samba服务

需要开启samba_export_all_ro 开启后/westos才能查看

给DATA目录添加设定
browseable = no
是否使你的共享在客户端发现时被发现,no 隐藏
guest ok = yes
是否可以让匿名用户访问,默认值是no,得手动开启

把无身份的bad user映射成 guest匿名用户
map to guest = bad user

这里写图片描述

这里写图片描述

修改完重启服务生效

用匿名用户连接
[root@foundation9 ~]# mount -o username=guest //172.25.254.209/DATA /mnt
Password for guest@//172.25.254.209/DATA:

这里写图片描述

这里写图片描述

打开/etc/fstab,文件类型是cifs
//172.25.254.209/DATA /mnt cifs defaults,username=guest,password=”” 0 0

保存退出后,mount -a 就直接可以挂上了

writable = yes 是否对文件内部可写

如果查看时出问题,先看selinux是否关闭, 系统级的目录只能改布尔值,不能改上下文
samba_export_all_rw 开启
restorecon -RvvF
再看权限是否允许,用student登陆测试,所以文件的使用者student的权限要给
可以直接给777
chmod 777 /westos/
/mnt 本来就是777
下来才是配置文件的写入问题 添加writable = yes

进入smb.conf 之后,可以man smb.conf 查看一些指令帮助

进入输入help查看系统命令
登陆进去没有一些命令,但挂载都有

新建用户lee
将lee添加到smb中
首先设定writadble = no 关闭对所有可写,然后单独给定权限
write list = student
指定用户可写student
+student | @student 用户组
将lee添加到student的附属组
用哪个身份挂载建立的文件就是谁的

admin users = lee ,lee建立的文件所属用户root
挂载之后在挂载的文件中建立文件,查看文件的属性,是root用户lee组

这里写图片描述

这里写图片描述

这里写图片描述

这里写图片描述

yum install cifs-utils -y 安装这个软件,可以管理登陆访问的权限
man mount.cifs 查看这个软件的帮助
[root@foundation9 /]# vim /root/smbpassword ##指定认证密码文件
username=lee
password=lee
chmod 600 /root/smbpassword
挂载
mount -o credentials=/root/smbpassword,multiuser,sec=ntlmssp //172.25.254.209/CONFIG /mnt/
此时,kiosk用户就无法查看挂载的/mnt了,需要认证才可以进入

这里写图片描述

这里写图片描述

认证方法: cifscreds
Usage:
cifscreds add [-u username] [-d] < host|domain >
cifscreds clear [-u username] [-d] < host|domain >
cifscreds clearall
cifscreds update [-u username] [-d] < host|domain >

直接输入指令就是查看基本的帮助

这里写图片描述

cifscreds add -u lee 172.25.254.209 ##以lee登陆
在其中建立文件,这里的文件的建立就按lee的相应配置来
client端: touch /mnt/tes
在client端看的时候,文件的所属是kiosk,即客户端的用户,但是实际并不是
在刚刚对CONFIG的设定,新建立的文件的权限在server端查看:
[root@smb_server ~]# ll /mnt/tes
-rw-r–r–. 1 root lee 0 Aug 14 23:43 /mnt/tes

这里写图片描述

这个目录共享可用的用户
valid users = student
@student | +student 用户组
修改时注释掉匿名用户
发现,只有用student用户可以登陆,lee就会被拒绝
变成 +student之后,因为已经设置过lee是student组,所以lee又可以登陆了

这里写图片描述

这里写图片描述

这里写图片描述

samba主要针对windows客户端与linux客户端
linux与linux客户端用NFS

查看samba
1.可以挂载用文件系统看
2.用登陆看
3.用本地看

再次强调,本地chmod设置的权限是针对本地用户的
哪怕就是别人远程登陆共享,权限也是按每个服务器自己的,跟主机chmod设置的没关系

NFS

NFS(Network File System)即网络文件系统,是FreeBSD支持的文件系统中的一种,它允许网络中的计算机之间通过TCP/IP网络共享资源。在NFS的应用中,本地NFS的客户端应用可以透明地读写位于远端NFS服务器上的文件,就像访问本地文件一样。

安装yum install nfs-utils -y
systemctl start nfs 开启服务
systemctl enable nfs-server 开机自启nfs-server
关闭防火墙

查看共享目录,这是里面是空的
[root@smb_server ~]# showmount -e 172.25.254.209
Export list for 172.25.254.209:

这里写图片描述

创建共享目录及文件
mkdir /westosshare
touch /westosshare/file{1..5}

编辑文件/etc/exports配置
man 5 exports查看文件的编辑格式,这个比samba要简单很多
还可以使用正则表达式书写

/westosshare 172.25.254.9(sync) 172.25.254.110(ro)
sync 数据同步 只给172.25.254.9所有权限 给172.25.254.110只读的权限

修改完千万不能重启服务,重启服务的话,会自动重新读取数据,对比两边是否数据同步,这个过程非常缓慢,浪费大量的时间。
可以用exportfs -rv 刷新 (显示v刷新r)
在172.25.254.9进行远程挂载:
mount 172.25.254.209:/westosshare /mnt/
用mount | df 可以看见挂载的相应信息

这里写图片描述

这里写图片描述

用172.25.254.209本机去mount也会失败,因为没有权限
[root@smb_server ~]# mount 172.25.254.209:/westosshare /mnt/
mount.nfs: access denied by server while mounting 172.25.254.209:/westosshare

这里写图片描述

showmount -e 172.25.254.209都可以查看209共享的目录

这里写图片描述

再次编辑/etc/exports
/westosshare 172.25.254.9(sync) 172.25.254.209(rw,sync,anonuid=1000,anongid=1001)
给209添加读写,数据同步,匿名用户创建时文件的uid是1000,gid是1001
no_root_squash 写的时候以root身份操作,出来的文件所属用户所属组都是root

这里写图片描述

存储分离
一台服务器损坏
另一台还可以使用损坏的服务器的数据
例如在/etc/fstab里面写
172.25.254.209:/westosshare /home nfs defaults 0 0
重新登陆之后进去就直接挂载到/home里,也可以直接操作

这里写图片描述

但是,这样并不合理,自己不用的时候,依然在挂载占用服务器内存
所以得解决这个问题,在客户端上闲置时自动卸载,使用的时候在挂载

autonfs 只支持nfs协议
安装yum install autofs -y
systemctl start autofs.service
开启之后会自动生成一个/net文件
进入后ls没有东西
cd 172.25.254.209 可以直接进入172.25.254.209查看共享的文件
但是出来后df发现还是有挂载,这是因为这个服务默认休眠时间是300秒
所以可以修改他的配置文件
/etc/autofs.conf , 也可能是 /etc/sysconfig/autofs
发现里面timeout = 300 单位为秒
将他修改为3

这里写图片描述

出来之后,等待三秒
df挂载点就取消了 (注,df也会触发使用挂载,所以出来等待三秒再df)

这里写图片描述

让客户端自己直接进入共享的家目录,进自己的家目录,就直接是共享。
比如业务服务器,正常写数据,但是写的,都是用户自己的用户目录都是直接的共享目录,这样即使损坏,也没有任何影响

首先要再主服务器编辑可以共享的目录
这里共享两个用户目录
[root@smb_server /]# cp -rp /home/student/ /westosshare/
[root@smb_server /]# cp -rp /home/lee/ /westosshare/
编辑/etc/exports,
/westosshare/student 172.25.254.0/24(rw,sync,anonuid=1000,anongid=1000)
/westosshare/lee 172.25.254.0/24(rw,sync,anonuid=1001,anongid=1001)
配置好后exportfs -rv 刷新

这里写图片描述

下面是client端,即相当于业务服务器
编辑/etc/auto.master,是编辑它的存放目录
最终挂载点的上一层 /etc/auto.nfs 指定配置文件,这个是自己编写的
/home /etc/auto.nfs ##名称随意
创建/etc/auto.nfs
编辑/etc/auto.nfs
* … /& &后面接着就是*的内容
* 172.25.254.209:/westosshare/& ##这里前面是任意匹配填写,后面的&是替换前面输入的,即*写了什么,它就是什么
或者单独的话
student 172.25.254.209/westosshare/student
这里选择*的写法
重启autofs
在客户端student用户下写的文件就直接同步server端了

部署服务时,一定要搞清你的安装源,和你的版本
yum history 有update更新时,一定要查看你的版本
版本兼容性一定要考虑

原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 孩子不愿意上跆拳道课了怎么办 车座位里面倒了汤怎么办 腿被棍子打肿了怎么办 刚买的手机碎屏怎么办 被木棍么么打到头项怎么办 大王卡用到40g怎么办 王卡40g用完了怎么办 父亲把母亲打成重伤怎么办 狗狗脖子摔歪了怎么办 吃鸡游戏中重伤怎么办 吃鸡游戏摔伤了怎么办 现在没能力偿还网贷怎么办 上海找夜场工作被骗了怎么办? 买了烂尾的楼盘怎么办 孕七个月蛀牙疼怎么办 宝宝只吃一边奶怎么办 实房付了定金后悔了怎么办 开车时遇到意外事故时怎么办 没干过影楼门市怎么办 uplay下载游戏速度0k怎么办 缓刑期间被别人打成轻伤怎么办 缓刑期间被别人打了怎么办 有缓刑被别人打怎么办 检察院不予立案怎么办公安局取保 监外执行过了又犯罪怎么办 监视居住期间再次犯罪怎么办 前妻有贷款跑了怎么办 未成年犯有缓刑罪继续犯罪怎么办 英朗出现检修esc怎么办 照相时奖状拿反了怎么办 wps文档加密后忘记密码怎么办 wps表格文件密码忘记了怎么办 wps表格密码忘记了怎么办 发布的文案缩成一行怎么办 创维电视都是VIP怎么办 挂电视距离太远怎么办 电视离沙发太近怎么办 苹果6更新11.1卡怎么办 苹果升级变卡了怎么办 迅雷被资源举报无法加速怎么办 迅雷的敏感资源无法加速怎么办