nfs(实时共享)---拿到了一个文件的链接
一台nfsserver
该服务器的作用是发布nginx
一台webserver
关闭防火墙和sexlinux
先回顾一下之前的安装nginx
yum -y install --downloadonly --downloaddir./soft/ //只下载不安装
安装完成createrepo,用于创建本地仓库
[root@webservser ~]# yum -y install createrepo
soft目录中生成一个repodata目录
[root@webservser ~]# createrepo ./soft/
在/etc/yum.repos.d新建一个repo文件
[root@webservser ~]# vim /etc/yum.repos.d/nginx.repo
[nginx]
name=nginx
baseurl=/root/soft/
gpgcheck=0
enable=1
建立缓存
[root@webservser ~]# yum clean all
[root@webservser ~]# yum makecache
安装nginx
[root@webservser ~]# yum -y install nginx
找到nginx的资源文件
查看是否安装
[root@webservser ~]# rpm -qa|grep nginx
查看资源文件
[root@webservser ~]# rpm -ql nginx
目前不需要修改nginx,只需要发布一个简单的项目
启动nginx
[root@webservser ~]# nginx
坚持是否启动成功
[root@webservser ~]# netstat -lnput|grep nginx
远程访问
向web页面添加图片和视频
上传图片和视频到/usr/bin/nginx/html/中
修改/usr/bin/nginx/html/index.html
在物理主机上使用scp上传
检查文件是否存在
在页面中插入图片和视频
上传了视频和图片
上传的位置是nginx的html目录中
编辑html文件
Vim /usr/share/nginx/html/index.html
访问web浏览器
静态文件----需要要在客户端运行的文件
Html css js img mp4安装包不需要在服务器中解析,需要用户下载到客户端,例如html文件要求用户下载到本地内存,使用本地浏览器解析并显示
动态文件----需要服务器先进行计算,再响应给客户端的内容,例如,登录(用户使用浏览器向服务器发送登录信息账号密码等,服务器对用户信息进行计算,服务器访问数据库,判断是否可以登录,将计算结果生成json或xml格式的数据响应给客户端的浏览器)
用于用户更多的是静态文件。
nfs服务依赖的应用
nfs-tools r p crpcbind
检查是否安装
rpm -qa|grep nfs
rpm -qa|grep rpc
一.nfsserver的配置:
1.安装
[root@nfsservser ~]# yum -y install nfs-utils.x86_64 rpcbind.x86_64
nfs配置文件 /etc/exports 指定暴露的文件
2.关闭防火墙和sexlinux
3.创建目录
[root@nfsserver ~]# mkdir /share
[root@nfsserver ~]# touch /share/paswd
4.配置文件解读
Vim /etc/exports
/share *(rw,sync)
5.启动服务
[root@nfsserver ~]# systemctl start rpcbind
[root@nfsserver ~]# systemctl start nfs
6.启动之后就可以在webserver中测试了
二.webserver的配置:
- 关闭防火墙和selinux
- 安装nginx
- 修改nginx默认的index.html,添加图片和视频
这三步在此之前已经做好
4.创建一个目录/usr/share/nginx/html/static/用来挂载nfsserver的数据
[root@webservser ~]# mkdir /usr/share/nginx/html/static/
5.挂载nfsserver的文件
[root@webservser ~]# mount -t nfs 192.168.2.12:/share /usr/share/nginx/html/static
如果在webserver中报错,可能是没有安装nfs安装就好了
nfs用于局域网
6.回到webserver,修改index.html 从static目录中应用图片和视频
[root@webservser ~]# vim /usr/share/nginx/html/index.html
向share目录中添加数据
[root@nfsserver ~]# echo "我手指着月" > /share/a.txt
再去webserver是否更新
测试在static目录中添加文件,看nfsserver中的文件是否更新
三.当nfs的share目录中的文件发生改变的时候,备份到bakerver
- 克隆应该备份主机bakuphost
- 关闭防火墙和sexlinux
[root@bakuphost ~]# systemctl stop firewalld
[root@bakuphost ~]# setenforce 0
3.支持rsync备份同步,安装rsync,bakuphost nfsserver两台主机上都应该安装
yum -y install rsync
4.在nfs主机上安装inotify-tools监听/share目录
Yum -y install inotify-tools
5.先同步一份到bakuphost主机的tmp目录下
[root@nfsserver ~]# rsync -av /share/ root@192.168.2.16:/tmp/
6.需要输入密码才会同步,为了自动化,设置免密
[root@nfsserver ~]# ssh-keygen
[root@nfsserver ~]# ssh-copy-id root@192.168.2.16
7.bakuphost主机上创建/bakup
[root@bakuphost ~]# mkdir /bakup
8.nfsserver上创建一个脚本rn.sh
[root@nfsserver ~]# vim rn.sh
9.脚本代码
#!/bin/bash
inotifywait /share -mrq -e modify,create,delete,attrs,move|while read events
do
rsync -av --delete /share/ root@192.168.2.11:/bakup
done
10.给添加x权限,执行脚本
[root@nfsserver ~]# chmod +x rn.sh
[root@nfsserver ~]# nohup ./rn.sh&
在backuphost上查看
四.samba----实现文件共享
是Windows和linux下的文件共享
1.在backuphost上安装samba
[root@bakuphost ~]# yum -y install samba
2.在服务端创建共享目录(已有/bakup)
3.编辑配置文件
[root@bakuphost ~]# vim /etc/samba/smb.conf //在最后直接添加下面的
[smb_share]
comment = samba service
path = /bakup
guest ok = no
writable = yes
4.创建用户user01,samba认证123密码
[root@bakuphost ~]# useradd user01
[root@bakuphost ~]# smbpasswd -a user01
windows要访问bakup中的文件,必须要使用user01这个账号和密码
5.启动名称管理
[root@bakuphost ~]# systemctl start nmb
[root@bakuphost ~]# systemctl start smb
在windows里面找到控制面板然后找到启用或关闭windows功能,在里面再找到SMB勾选
6.右击此电脑有一个映射网络驱动器连接共享文件
7.为共享文件添加写权限
setfacl -m u:user01:rwx /bakup/
执行完后在windows中就可以读写了
8.在linux中安装客户端
yum -y install samba-client
使用smbclient查看信息
[root@webservser ~]# smbclient //192.168.2.16/smb_share -U user01
安装cifs
[root@webservser ~]# yum -y install cifs-utils
创建共享盘
[root@webservser ~]# mkdir aaa
挂载
[root@webservser ~]# mount.cifs -o user01,pass=123 //192.168.2.16/smb_share ~/aaa/