nfs和samba

​webserver 服务器:作用是发布nginx的web项目

1、安装nginx(只下载不安装)

root@web_server \~\]# yum -y install --downloadonly --downloaddir=./soft/ nginx 2、配置一个本地的nginx仓库 \[root@web_server \~\]# yum -y install createrepo 用于创建本地仓库 使用createrepo生成仓库文件 \[root@web_server \~\]# createrepo ./soft/ 3、soft目录中生成一个repodata目录检测soft目录中是否保存了一个repo文件 \[root@web_server \~\]# tree ./soft/ ​编辑 4、在/etc/yum.repos.d/新建一个repo文件,文件名字叫nginx \[root@web_server \~\]# vim /etc/yum.repos.d/nginx.repo ​编辑 5、建立缓存 \[root@web_server \~\]# yum clean all \[root@web_server \~\]# yum makecache ​下载nginx 启动并查看nginx \[root@localhost \~\]# nginx \[root@localhost \~\]# netstat -lnput \| grep nginx tcp 0 0 0.0.0.0:80 0.0.0.0:\* LISTEN 1802/nginx: master tcp6 0 0 :::80 :::\* LISTEN 1802/nginx: master \[root@localhost \~\]# 远程访问 向web页面中添加图片和视频 上传图片和视频 到/usr/bin/nginx/html 修改/usr/bin/nginx/html/index.html 在本地物理主机上使用scp上传 scp 路径 root@192.168.2.34:/usr/share/nginx/html/ 上传图片和视频 ![](https://i-blog.csdnimg.cn/direct/dca11c67019e4e8da357c215fb2e263b.png) ![](https://i-blog.csdnimg.cn/direct/1c8978f26899447cbd94bbe1b5faff41.png) ![](https://i-blog.csdnimg.cn/direct/578ff7d6a950429b9a42ad3d0bbedcd5.png) ![](https://i-blog.csdnimg.cn/direct/2d2dc2c4b3374380b1110cd5327d1809.png) ![](https://i-blog.csdnimg.cn/direct/d6fe25b3af64497b86d81789baa13cc7.png) 静态文件和动态文件 需要客户单运行的文件,静态文件 html css js img mp4 安装包不需要在服务器中解析,需要下载到客户端,例如html文件是要求用户下载到本地内存,使用本地浏览器解析并且显示 动态文件,需要服务器先进行计算,再响应给客户端的内容,例如,登录(用户使用浏览器向服务器发送登录信息账号米,阿木等等,服务器对用户信息进行机选,服务器访问数据库,判断是否可以登录,即将计算结结果生成json或者xml格式的数据响应给客户端的浏览器) 用于用户更多的访问静态文件,而动态的服务可能不是很频繁,或者说数据传输数量不是很大,静态文件的流量大,动态数据流量比较小,开发者不希望动态项目和静态项目部署在同一个服务上,静态的访问静态服务,动态的访问动态的服务器 以前部署一个jsp项目就可以了,现在可以需要前端服务,还需要部署后端服务 前端服务器加大流量,后端服务器增加算力 更加节省资源 nfs提供了解决方案,将静态资源单独的放在一个服务器中 nfs主要支持局域网,目前使用阿里云或者其他的云服务 oss(对象存储服务,阿里云oss有永久的40g使用) nfs服务依赖的应用 nfs-toos rp crpcbind ## 安装nfs \[root@localhost \~\]# yum -y install nfs-utils.x86_64 rpcbind.x86_64 nfs配置 **nfs服务器:** 编辑配置文件/etc/exports指定暴露的文件 创建一个目录 配置文件 \[root@nfs-server share\]# vim /etc/exports \[root@nfs-server share\]# systemctl start rpcbind \[root@nfs-server share\]# systemctl start nfs /share \*(rw,sync) ![](https://i-blog.csdnimg.cn/direct/8fcad115ed5d4a1889b572f0e530d508.png) 启动成功后,就可以在webserver查看了 rpc服务的端口号是11 **web服务器:** 创建一个目录,这个目录用来挂载nfs的文件 \[root@localhost \~\]# mkdir /usr/share/nginx/html/static 挂载nfsserver的文件 \[root@localhost \~\]# mount -t nfs 192.168.2.34:/share /usr/share/nginx/html/static rsync同步,将文件复制一份 nfs拿到了一个文件的连接 nfs中的东西被同步过去了 ![](https://i-blog.csdnimg.cn/direct/465710eb4d48466f95fb30480a131a88.png) ![](https://i-blog.csdnimg.cn/direct/f215d1f0d8f6402a955eee8a1644c374.png) 小结: 1.创建了两个虚拟机 2.nfsserver配置静态文件共享 1.停用了防火墙和selinux 2.安装两个应用 rpcbind nfs-utils 3.配置/etc/exports /share \*(rw,sync) 4.启动服务 systemctl start rpmbind systemctlstart nfs 5.查看端口占用 netstat -lnput \| grep 111 6.确定nfs服务区正常启动 3.webserver 发布web项目 1.停用防火墙和selinux 2.安装nginx 3.修改nginx默认的index.html,添加图片和视频 4.在nginx下的html目录中创建一个挂载目录static mkdir /usr/share/nginx/html/static/ 5.挂载nfs服务 mount -a nfs 192.168.2.34:/share/ /usr/share/nginx/html/static 6.查看挂载目录 7.文件的测试 在nfs目录添加东西,在浏览器会查看到 \[root@nfs-server share\]# echo "我是最厉害的" \> /share/a.txt 访问:192.168.2.35/static/a.txt ![](https://i-blog.csdnimg.cn/direct/18dc8dcdd60e463b880552be306e0e86.png) 测试在ststic目录中添加文件,看看nfsserver服务器中的文件是否会更新 ![](https://i-blog.csdnimg.cn/direct/2e013e6eeabb4948ba08ac69cbc70be4.png) 备份 scp cp rsync 当nfs的share目录中的文件发生改变的时候,备份到bakerver bakerver克隆 10分钟 inotify-tools rsync nohup \& 备份静态文件 1.克隆一个备份主机,bakuphost 2.停用selinux和firewalld \[root@bakserver \~\]# systemctl stop firewalld \[root@bakserver \~\]# setenforce 0 3.支持rsync备份同步,安装rsync,bakuphost nfssever两台主机上都应该安装 两台机器都需要安装 \[root@bakserver \~\]# yum -y install rsync \[root@nfs-server share\]# yum -y install rsync \[root@nfs-server share\]# yum -y install inotify-tools 4.在nfs主机上安装inotify-tools监听/share目录 \[root@nfs-server share\]# rsync -av /share/ root@192.168.2.36:/tmp/ 5.先同步一份文件到bakup主机的tmp目录下 6.需要输入密码才会同步过去,为了自动化,设置免密 1.ssh-keygen 2.ssh-copy-id root@192.168.2.36 3.测试 ![](https://i-blog.csdnimg.cn/direct/30e951cb3656414281b866a7ef5fea15.png) ![](https://i-blog.csdnimg.cn/direct/bbbdffb35b42437da65c466ef0a3550e.png) ![](https://i-blog.csdnimg.cn/direct/e3d4c594e2f8419e8cb53182c6f90f35.png) 7.bakuphost主机上创建/bakup目录 8.在nfsserver上创建一个脚本rn.sh 9.脚本的代码 #!/bin/bash inotifwait /share -mrq -e modify,create,delete,attrs,move \| while read events do rsync -av --delete /share/ root@192.168.2.36:/bakup/ #也可以输出日志 done ![](https://i-blog.csdnimg.cn/direct/927cfc15f4704aa0b8d34678f5eb76c0.png) 10.给 添加x权限,执行脚本 ## SAMBA 在bakuphost主机上安装samba \[root@bakserver \~\]# yum -y install samba 修改samba的配置文件 /etc//etc/samba/smb.conf \[root@bakserver \~\]# vim /etc/samba/smb.conf ![](https://i-blog.csdnimg.cn/direct/86676b7244234de4bde882c42174eb4e.png) 设置用户user01 ,samba认证123密码 \[root@bakserver \~\]# useradd user01 \[root@bakserver \~\]# smbpasswd -a user01 New SMB password: Retype new SMB password: Added user user01. windows访问bakup中的数据,必须用user01 123 启动名称管理面 \[root@bakserver \~\]# systemctl start nmb.service \[root@bakserver \~\]# systemctl start smb.service 为共享文件添加写权限 setfacl -m u:user01:rwx /bakup/ 执行完成以后,在windows中可以直接读写 打开一台新机器,安装客户端 \[root@localhost \~\]# yum -y install samba-client \[root@localhost \~\]# smbclient -L 192.168.2.36 -U user01 \[root@localhost \~\]# smbclient //192.168.2.36/smb_share -U user01 \[root@localhost \~\]# yum -y install cifs-utils \[root@localhost \~\]# mount.cifs -o user=user01,pass=123 //192.168.2.36/smb_share \~/aaa/

相关推荐
胡斌附体13 分钟前
linux测试端口是否可被外部访问
linux·运维·服务器·python·测试·端口测试·临时服务器
愚润求学21 分钟前
【Linux】自旋锁和读写锁
linux·运维
大锦终23 分钟前
【Linux】常用基本指令
linux·运维·服务器·centos
IT项目管理34 分钟前
达梦数据库DMHS介绍及安装部署
linux·数据库
知北游天1 小时前
Linux:多线程---深入互斥&&浅谈同步
linux·运维·服务器
Gappsong8741 小时前
【Linux学习】Linux安装并配置Redis
java·linux·运维·网络安全
try2find1 小时前
移动conda虚拟环境的安装目录
linux·运维·conda
码农101号2 小时前
Linux中容器文件操作和数据卷使用以及目录挂载
linux·运维·服务器
PanZonghui2 小时前
Centos项目部署之Nginx 的安装与卸载
linux·nginx
PanZonghui2 小时前
Centos项目部署之安装数据库MySQL8
linux·后端·mysql