NFS服务
网络文件共享服务NFSNFS工作流程NFS:Network File System 网络文件系统,基于内核的文件系统。Sun 公司开发,通过使用 NFS,用户和程序可以像访问本地文件一样访问远端系统上的文件,基于RPC(Remote Procedure Call Protocol 远程过程调用)实现。 NFS主要功能是通过局域网网络让不同的主机系统之间可以共享文件或者目录。 NFS可以解决前端web静态资源共享 NFS可以解决前端web静态资源一致性 NFS可以解决前端web磁盘空间浪费 由于NFS服务提供网络共享文件,并不能解决访问web资源的延时文件 RPC采用C/S模式,客户机请求程序调用进程发送一个有进程参数的调用信息到服务进程,然后等待应答信息。在服务器端,进程保持睡眠状态直到调用信息到达为止。当一个调用信息到达,服务器获得进程参数,计算结果,发送答复信息,然后等待下一个调用信息,最后,客户端调用进程接收答复信息,获得进程结果,然后调用执行继续进行。
mysql集群
Mysql集群和多实例 这篇用于记录Mysql的集群以及多实例部署方式。在生产中是常见的使用方式。 集群 首先是集群,集群的作用是扩展单台Mysql数据库。将之前一台Mysql数据库与其它Mysql数据库串起来。一是横向扩展数据库性能,比单一的升级服务器成本更便宜。二是当主数据库宕掉时还有从数据库存储着数据库。不会一下损失全部数据造成巨大打击。是增加服务高可用的重要力量 1、主从复制 主从复制是指 主数据库负责写入数据。然后从库从
软件管理
软件运行和编译 在Windows上,我们可以通过exe或者msi格式的安装包来使用指引的方式将我们想要的软件按照我们的需求安装到我们的电脑上,同时还可以设置软件应该放置在哪。软件的全局变量、注册表配置、开机自启等功能都会一并自动配置。 但到了Linux上,也有相应的工具来帮助我们自动安装所需工具。但在Linux的安装却无法指定安装。为什么? Linux的安装包打包后一般为rpm(rhel)或deb(debian)等后缀。在安装包其中已经指定好了二进制程序放置的路径在哪,不可更改。yum,apt,dnf等包管理工具只是执行找到的安装包里的命令,并不能更改其中的具体路径参数。所以Linux中的自动化安装也有自己的缺点。 但Linux中可以二进制安装。即下载对应的压缩包文件而不是安装包文件。自己放置到对应目录后再手动写出配置文件或修改其中自带的配置文件。然后完成安装,这样会提供更大的自定义空间,但操作会更麻烦。 本身使用Linux就是个麻烦 ( ´•̥̥̥ω•̥̥̥` ) 软件接口概念 首先介绍一下应用程序的早期标准,也就是软件是怎么实现统一的。这个接口的...
Shell脚本
Shell脚本 到达了这里,那就是对前面的内容进行了系统学习后,可以开始接触较为简单的脚本执行了。 脚本实际上就是命令的集合,和我们人工去处理Linux系统的基础环境没啥区别。但如果你要部署上百台机器时,那脚本就是一个很好的选择了。 脚本最大的缺点是需要对执行时的正确与否进行判断,不然容易出现某步出错但继续往下走的情况,容易导致环境出问题。在虚拟机上我们可以对环境进行镜像来还原避免,可在实际生产环境中会导致另一个问题:镜像和回滚都需要大量的时间,同时需要大量的存储空间。在商业中存储空间也是钱,老板不太可能给你包这么大的底,所以使用脚本时一定要注意再注意,先在测试环境保证没问题了再去生产环境进行上线! 注:Linux上的脚本也可以使用python或其它方式实现,但本篇专注于Shell脚本 编程基础1Talk is cheap,show me the code --Linus 编写脚本时其实也类似于C、Java、Python等编程语言一样,有一定的共通之处。但在排查问题和询问他人时一定要少描述,将代码和报错给到他人。这样会减少大家的沟通成本,同时大家也能更加融洽的讨论...
压缩和解压缩
压缩和解压缩 为什么需要这部分?因为在工作中我们使用更多的是命令行处理。不可能把文档发到自己电脑上压缩后再上传上去,这对数据来说是十分危险的。所以为了数据安全也为了审计方便,我们将使用命令行来完成压缩和解压缩 注:Linux上的压缩工具只会压缩文件,不会压缩目录。如果想压缩目录需要先打包 zip可以直接压缩目录,但会丢失目录权限,元数据等信息 压缩率排行: xz > bzip2 > gzip > zip > compress compress 和 uncompress 注:此工具来自于ncompress包,此工具目前以及很少使用 对应的文件是.Z后缀 1234567891011#压缩compress [选项] [文件名]#解压uncompress [选项] [文件名]#常用选项-d #解压缩,相当于uncompress-c #结果输出至标准输出,不删除原文件(默认压缩后删除原文件)-f #覆盖已存在的目标文件-v #显示过程-r #递归压缩目录中的所有文件 gzip 和 gunzip 来自于 ...
参数替换
参数替换 xargs 很多时候我们想对大量的文件进行处理。但命令不允许接这么多参数,我们无法一次性传输给它,使用for循环又限制太大了,无法进行我们想要的自动化。但现在有办法了! xargs命令的作用就是替命令接受参数,然后再以规定的数量循环传递给命令!这样就能简洁,贴合实际环境的进行大量处理了。 xargs可以读取标准输入的数据。并使用空格符或回车符将数据进行分割,使其称为另一个命令的参数 123456789101112131415xargs [选项] COMMAND [其它命令的参数]#常用选项-0|--null #用 assic 中的0或 null 作分隔符-a|--arg-file=FILE #从文件中读入数据作为输入-d|--delimiter=CHARACTER #指定分隔符-E END #指定结束符-L|--max-lines=N #从标准输入一次读取N行送给 command 命令-l #作用一样(以行为分割)-n|--max-args=MAX-ARGS #一次执行使用几...
locate查询系统
locate 查找文件在文件系统上查找符合条件的文件 非实时查找(数据库查找) locate 特点命令特点: locate 查询是查询系统自己在系统上预建的文件索引数据库(/var/lib/mlocate/mlocate.db) 索引的构建是在系统较为空闲时自动进行(周期任务),执行updatedb命令可以立刻更新数据库 索引构建过程需要便利整个根文件系统,很消耗资源 locate和update命令来自于locate包 工作特点: 查找速度块 模糊查找 非实时查找 搜索的是文件全路径,不仅仅是文件名 可能只搜索用户具备读取和执行权限的目录 1locate [选项] <参数> 安装方式rhel 系列: 1yum install -y mlocate debian 系列: 12apt updateapt install -y locate
文本处理四剑客
文本处理四剑客命令grep:作用是对文本的行基于**模式(正则表达式)**进行过滤 命令sed:stream editor,文本编辑工具 命令awk:Linux上的实现gawk,文本报告生成器 文本处理四剑客之 grepgrep:Global search REgular expression and Print out the line 作用:文本搜索工具,根据用户指定的”模式”对目标文本逐行进行匹配检查;打印匹配到的行 模式:由正则表达式字符及文本字符所编写的过滤条件(模式就是正则表达式) 官方帮助文档:https://man7.org/linux/man-pages/man1/grep.1.html 12345678常用选项-E #扩展正则,也可以使用egrep-o #只显示匹配到的内容-e #实现多个匹配项的拼接(或关系)-n #显示匹配的行号-r #递归处理,但不处理软链接-l #不显示具体匹配到的内容,只显示匹配到的文件名-i #忽略字符大小写 1234567891011121314151617181920212223242526272829303...
正则表达式
正则表达式 REGEXP:Regular Expressions。由一类特殊字符及文本字符所编写的模式,其中有些字符不表示字符的字面意义,而表示控制或通配的功能,类似增强版的通配符功能。但于通配符不同,通配符的作用是处理文件名,而正则表达式则是处理文本内容中的字符。 正则表达式被很多程序和开发语言所广泛支持:vim、less、grep、sed、awk、nginx、mysql等 正则表达式也分两类: 基本正则表达式:BRE 扩展正则表达式:ERE 正则表达式引擎:采用不同算法,检查处理正则表达式的软件模块。如:PCRE(Perl Compatible Regular Expressions) 正则表达式的元字符分类:字符匹配、次数匹配、位置锚定、分组 如何查看正则表达式的帮助:man 7 regex 基础正则表达式字符匹配[] 作用是匹配其中的任意单个字符 1234567891011121314151617181920212223242526. #匹配任意单个字符[] #匹配指定范围内的任意单个字符[^] #匹配指定范围外的任意单个字符[0-9]...
文本处理工具
文本常见处理工具 文本常见的处理工具,主要的作用是在Linux系统中自动化的将文件或指令的输出(回显)进行切割,筛选。留下我们最想要的部分,便于查看,或监控服务器状态。 这些工具就是我们之后便捷、自动化处理Linux任务的前提条件 1.1 文件内容查看命令1.1.1 查看文本文件内容1.1.1.1 cat 命令cat用于查看文本内容 1234567cat [选项] <文件名>#参数-E #显示文本每行的结束符$-A #显示文本中所有的特殊字符(tab键^I,windows换行^M,结束符$)-n #对显示出的每一行进行编号(行号)-b #只非空行编号(行号)-s #压缩连续的空行为一行(去重) 1.1.1.2 nl 命令nl的作用相当于cat -b,对文本非空行编号显示 1.1.1.3 tac 命令tac的作用也是查看文本内容,但查看的方向与cat相反。是从文本尾部开始读取文件 反向查看(倒序)文件内容 1.1.1.4 rev 命令rev的作用是将文本每行的内容进行反转(reverse 反转) 1.1.2 查...