- 博客(64)
- 收藏
- 关注
原创 shell当管道符和()遇上 exit
原博链接:https://www.cnblogs.com/Bccd/p/12679164.html 结论:管道符和括号会fork出一个子进程,如果在子进程的工作区间内调用exit则退出的只是当前的子进程,不会退出主进程 测试管道符 cat test.sh #!/bin/bash function work_pipeline(){ seq 3 |while read line; do echo $line if (($line >2));then echo "I'm going to e
2022-02-17 17:24:22
394
原创 删除软链的坑
前一段时间碰到的一个坑,自己本来能避免的,但是差点干了删库跑路的事······ 删除软链应该是该目录的名字即可,手千万不要习惯性按下Tab键······ 正确: rm -rf softlinkfile 错误方法: rm -rf softlinkfile/ 上面错误的操作,这样会把软链接的源文件一同删除,请谨慎操作!!! ...
2021-11-30 14:30:36
341
原创 Shell文本处理工具(grep、sed、awk )
文本处理三剑客1、grep 1、grep grep (global search regular expression_r(RE) and print out the line,全面搜索正则表达式并把行打印出来),用于查找文件里符合条件的字符串。
2021-07-06 12:05:55
559
1
原创 Shell中常用命令整理(diff、patch、cut、sort、uniq、tr、test、&&、||)
文章目录1、diff可以使用vimdiff进行比较:直接使用diff命令进行比较diff常用参数:2、patch3、cut4、sort5、uniq6、tr7、&&和||8、test 1、diff diff命令用于对比两个文件的不同。 demo: 可以使用vimdiff进行比较: 对于实验所用文件,直接使用命令vimdiff xxx.conf xxx.conf.new 来对比两者的不同: 可以看到,两文件在使用vimdiff进行对比时,两文件的不同之处会高亮显示,可用于日常排错。 vimd
2021-07-06 12:05:22
618
1
原创 linux下的火墙管理 (firewalld篇)
文章目录firewalld的开启关于firewalld的域关于firewalld的设定原理及数据存储 firewalld是在rhel7之后新加的对火墙的管理方式。 与iptables不同的是,firewalled里的大部分东西模块化集成。更偏向于“傻瓜化”,趋近于window的火墙管理方式。 firewalld的开启 将iptables的管理方式切换到firewalld的管理方式: 方法同fare...
2020-08-29 23:35:20
1060
原创 mysql管理员密码遗忘处理方法
当你的数据库管理员密码忘记时,它是这样的: 下面就说一下在忘记管理员密码的情况下修改root用户密码 第一步:修改mysql的配置文件/etc/my.cnf: 在配置文件中添加参数skip-grant-tables(跳过授权表) 修改完成后,重启mysqld: [root@server1 etc]# /etc/init.d/mysqld restart Shutting down MySQL.. SUCCESS! Starting MySQL. SUCCESS! [root@server1 ~
2020-08-29 16:00:18
843
1
原创 Redis(持久化、主从复制、主从切换、twemproxy、redis集群)
文章目录Redis Redis redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。在此基础上,redis支持各种不同方式的排序。与memcached一样,为了保证效率,数据都是缓存在内存中。区别的是redis
2020-08-29 00:33:04
1748
原创 TCP/IP的四次挥手过程
文章目录必要的基础知识四次挥手过程为什么挥手需要四次为什么客户端等待2MSL后才进入CLOSE状态 必要的基础知识 FIN:FIN位为1表示结束连接 四次挥手过程 第一次挥手:客户端给服务段发送FIN=1信号,告诉客户端我需要关闭连接。客户端进入FIN_WAIT_1状态。 第二次挥手:服务端受到FIN信号,发送给客户端ACK=1信号,告诉客户端我知道你要关闭连接了,但是我这边数据还没有处理完,数据处理完通知你。服务端进入CLOSE_WAIT状态,客户端受到ACK=1信号进入FIN_WAIT_2状态。 第三
2020-08-27 09:02:21
278
原创 TCP/IP的三次握手过程
文章目录TCP报文格式必要的基础知识三次握手过程为什么需要三次握手 TCP报文格式 必要的基础知识 序号(seq):占 4 字节,序号范围[0,2^32-1], 序号增加到 2^32-1 后,下个序号又回到 0。TCP 是面向字节流的,通过 TCP 传送的字节流中的每个字节都按顺序编号,而报头中的序号字段值则指的是本报文段数据的第一个字节的序号。 确认序号(ack):占 4 字节,期望收到对方下个报文段的第一个数据字节的序号。比如说ack=10,也就是说(0~9)编号的字节已经接收,下一个直接从编号10开
2020-08-27 09:02:00
1212
原创 mysql 8.0安装(源码编译)
文章目录Mysql下载及安装 安装环境:rhel7.6 Mysql MySQL是一种开放源代码的关系型数据库管理系统(RDBMS),使用最常用的数据库管理语言–结构化查询语言(SQL)进行数据库管理。 MySQL是开放源代码的,因此任何人都可以在General Public License的许可下下载并根据个性化的需要对其进行修改。 MySQL因为其速度、可靠性和适应性而备受关注。大多数人都认为在不需要事务化处理的情况下,MySQL是管理内容最好的选择。 下载及安装 安装方式有多种 可在官网https://
2020-08-23 14:34:20
2742
原创 可视化web日志分析工具-GoAccess
文章目录GoAccess下载和安装在terminal进行访问在web界面进行访问 GoAccess GoAccess 是一款开源的且具有交互视图界面的实时 Web 日志分析工具,通过你的 Web 浏览器或者 linux 系统下的终端程序(terminal)即可访问。 能为系统管理员提供快速且有价值的 HTTP 统计,并以在线可视化服务器的方式呈现。 快速, 实时, 毫秒/秒级更新, C 语言编写 仅依赖 ncurses 模块 几乎支持所有 Web 日志 格式 (Apache, Nginx, Amazon
2020-08-23 12:34:12
1211
原创 nginx+tomcat+memcache交叉存储实现的session保持
接着上一篇博客 现在我们是能访问到test.jsp,并且实现了负载均衡,但是子最大的问题是session不能保持,提交的内容在浏览器刷新后,nginx轮询到另外一台tomcat主机,session内容丢失。 首先想到的解决方法: 在nginx定义调度算法为ip_hash,根据源地址进行判断,这个地址只要访问到了一台tomcat主机上,那么他以后访问的还是此台tomcat主机。 但是此想法马上就感觉行不通,此方法可行的前提是:用户直接访问到nginx,再由nginx进行调度。 但是,现实情况是用户直接访问不到
2020-08-23 11:01:35
223
原创 nginx+tomcat实现对jsp动态页面的处理
文章目录tomcat下载安装 环境: nginx(openresty):server1[172.25.5.1]; tomcat主机:server3[172.25.5.3]、server4[172.25.5.4] 之前说过了nginx对于php动态页面的处理,这次说一说nginx对jsp动态页面的处理。 .php页面的处理需要php-fpm,.jsp页面的处理需要tomcat。 tomcat Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很
2020-08-20 17:07:39
1630
原创 openresty实现的高速缓存机制
文章目录nginx动态资源的缓存策略传统缓存策略高速缓存策略memc+scracheopenresty安装配置安装并启动memcached配置nginx(openresty)的反向代理 nginx动态资源的缓存策略 传统缓存策略 客户端通过http协议访问nginx(只能处理静态,动态php资源会调用php-pfm)nginx调用php进行处理,php将处理好的结果暂存在memcache,当外部又有相同处理请求时直接通过memcache将结果返回给php再返回给nginx,nginx再返回给客户端。 问
2020-08-20 15:19:42
986
1
原创 php+memcache /php添加未编译的模块
当我们的php编译后,发现没有memcache的模块? 但是我们需要用到memcache模块,怎么搞? 重新编译将memcache模块加上? nononon! 首先下载安装好memcache。 memcache memcache是一套分布式的高速缓存系统,由LiveJournal的Brad Fitzpatrick开发,但目前被许多网站使用以提升网站的访问速度,尤其对于一些大型的、需要频繁访问数据库的网站访问速度提升效果十分显著 。这是一套开放源代码软件,以BSD license授权发布。 MemCach
2020-08-16 17:35:09
247
原创 nginx+php 对php动态页面的处理
文章目录 在学习完nginx后,我们知道nginx只能处理静态资源,如果需要处理动态页面(.php、.json)的话,需要使用到反向代理功能(将动态页面的请求转发给后端的php、tomcat进行处理) 源码包的下载地址:https://www.php.net/ 解压后进行编译: ./configure --prefix=/usr/local/php --enable-fpm --with-fpm-user=nginx --with-fpm-group=nginx --with-curl --with-ic
2020-08-16 15:21:41
657
原创 七层负载均衡-------nginx
文章目录nginx简介http服务器的发展nginx的优点nginx应用场景nginx下载及安装 nginx简介 Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,由俄罗斯人编写,第一个版本在2004年10月发布。 其特点是占有内存少,并发能力强,但是只能处理静态页面。 http服务器的发展 早期,最流行的http服务器当然是Apache,但是随着互...
2020-08-16 12:19:19
3068
原创 pacemaker+nginx+iscsi实现的nginx服务远程储存高可用
文章目录scsiiscsiiscsi储存配置添加虚拟磁盘(服务端)targetcli的安装(服务端)配置iscsi共享存储输出(服务端)客户端的配置装包:添加认证名称进行扫描注册格式化pacemaker+nginx+iscasi scsi SCSI技术是一种由IBM公司研究开发的,是一个供硬件设备使用的可以在IP协议的上层运行的SCSI指令集,这种指令集合可以实现在IP网络上运行SCSI协议,使其能够在诸如高速千兆以太网上进行路由选择。 iscsi iSCSI(Internet Small Computer
2020-08-13 12:21:53
648
原创 keepalived+haproxy 实现的服务高可用及负载均衡
文章目录 通过对keepalived的学习,我们知道之前的学习LVS+keepalived可以实现一个四层的负载均衡+高可用,这里我们可以用keepalived+haproxy实现一个七层的负载均衡+高可用
2020-08-11 13:36:31
311
原创 haproxy的部署及简单应用
文章目录软件的安装简单调度的实现端口映射在后端所有服务器都挂掉的情况下,访问本机的8080端口监控的添加添加监控的认证访问控制haproxy的日志设置:简单的动静分离 实验环境:haproxy主机:server2[172.25.5.2] 后端真实服务器(httpd):server3[172.25.5.3]、server4[172.25.5.4] haproxy特点:支持四层和七层调度、高并发处理能力强、不后将后端真实服务器暴露 七层调度的一些要求: 对后端具备健康检查能力 软件的安装 [root@serve
2020-08-09 17:04:42
703
原创 pacemaker+corosync+fence实现的服务高可用的保护机制
文章目录Fence设备fence的部署监听端(真实主机)软件安装修改fence配置高可用节点软件安装:fence的添加 实验环境: 高可用节点:[server1、server2] (vm) 后端服务:[server3、server4] (vm) fence的服务节点:foundation5(真实主机) 此次实验内容是在双机热备的基础上添加内部fence实现的一个防止脑裂的保护机制。 高可用是解决服务集群中单点故障问题的发生,但是服务器也会出现一些不可预知的情况。比如说高可用集群中调度节点假死现象(或系统崩溃
2020-08-09 11:10:02
1819
原创 rhel8下的虚拟机封装
文章目录首先你得有所要创建的虚拟机镜像,来创建出一台母机对母机进行安装接着对母机进行仓库、网络的配置,以方便后边虚拟机的克隆使用对母机进行克隆,产生新的虚拟机 在日常学习中,在windows下我们可以使用类似vmware的虚拟机软件,通过创建一台虚拟机后,克隆更多的虚拟机来让我们更好的完成学习和实验。 那么,当身处在linux系统电脑时候,我们该怎么创建虚拟机并克隆它们呢? 首先你得有所要创建的虚拟机镜像,来创建出一台母机 在linux中会自带虚拟机管理工具,我这里使用的rhel8,系统自带 打开 Vir
2020-08-06 16:14:38
379
原创 pacemaker+corosync实现高可用(双机热备)
文章目录pacemakercorosync环境的准备(server1、server2)软件的安装(server1、server2)集群的建立设置建立认证的密码(server1、server2)server1、server2建立认证将server1、server2加入到集群集群的启动集群状态的校验集群状态的查看资源的放置组资源的设置单个服务的资源设置组资源的设置 实验环境:rhel7 高可用集群:server1、server2 pacemaker Pacemaker是一个集群管理器。它利用首选集群基础设施(O
2020-08-06 14:43:53
2619
原创 Python练习(冒泡排序、插入排序)
冒泡排序: #Method1 def sort(nums): for i in range(len(nums) - 1): # 设置冒泡排序进行的次数 for j in range(len(nums) - i - 1): # j为列表下标 if nums[j] > nums[j + 1]: #比较相邻之间两个数大小 nums[j], nums[j + 1] = nums[j + 1], nums[j] #如果前面的比后
2020-07-21 01:16:33
214
原创 Shell执行流控制
文章目录条件判断语句 条件判断语句 test 判断条件是否成立 : 语法: test + 表达式 [ 表达式 ] (注意表达式与中括号有空格!) [[ 表达式 ]] (注意表达式与中括号有空格!) 可以使用man test来查看更多使用方法: test能干什么? 文件类型判断: 判断参数 含义 -e 判断文件是否存在(任何类型文件) -f 判断文件是否存在并且是一个普通文件 -d 判断文件是否存在且是一个目录 -L 判断文件是否存在并
2020-07-16 17:20:49
204
原创 使用Shell脚本搭建NFS
#!/bin/bash echo '1,checking network... ' ping -c1 192.168.1.51 &> /dev/null if [ $? -eq 0 ];then echo 'network is ok!' else echo 'network is not ok! ' exit 1 fi echo '2.Configure selinux and firewalld... ' setenforce 0 &> /dev/null ech
2020-07-16 16:12:19
367
原创 shell脚本练习
一、计算20的阶乘: #!/bin/bash factorial=1 for num in {20..1} do let factorial=$num*$factorial done echo $factorial 二、批量创建用户: 需求:批量加5个新用户,以u1到u5命名,并统一加一个新组,组名为class,统一改密码为123 2.思路 . ● 添加用户的命令 . ● 判断class组是否存在 . ● 根据题意,判断该脚本循环5次来添加用户 . ● 给用户设置密码,应该放
2020-07-11 23:44:30
295
原创 四层负载均衡------LVS + 高可用
文章目录lvs简介:lvs的安装安装ipvsadm配置ipvsadm策略的编写 当数据从客户端出来时,经过cdn再经过四层负载均衡,这里就说说四层负载均衡。 负载均衡可以由硬件提供(F5负载均衡),也可以时由软件提供(lvs haproxy varnish nginx httpd) 从工作协议来说: 传输层(四层)负载均衡均衡一般由lvs haproxy(TCP协议)来做。针对ip地址划分。 应用...
2020-05-09 11:23:26
963
原创 企业高性能缓存----varnish
文章目录cdn加速vanish简介varnish的安装 实验环境:rhel7.6 cdn加速 通常情况下,当访问大型企业时,由于客户所在地址离企业的服务器的距离不同,有些客户距离比较近,有些客户距离比较远,那么距离远的客户访问企业服务器时,客户端数据会经过层层路由,最终访问企业服务器的延时就会相当高,这无疑拉低用户体验。 所以企业一般会在不同地方租用一个服务器来当时缓存企业服务器上的内容,当用户访...
2020-05-09 11:22:15
842
原创 Python中函数的使用
文章目录函数的基本使用方法函数的定义函数的调用函数单的嵌套函数中变量的使用函数中的参数位置参数默认参数可变参数关键字参数返回值变量作用域 函数就是通过关键字,将某些代码实现的功能进行封装。 在使用到该功能时,就不必编写该功能代码,直接利用关键字函数名来使用函数。 优点:方便阅读,简化工作,使代码更加简练。 函数的基本使用方法 函数的定义 定义函数的关键字:def 关键字后接函数名():,括号用来传...
2020-04-26 23:04:16
1199
原创 Python中的内置数据类型
文章目录列表 list列表的嵌套使用列表的特性索引 index切片 slide重复 repeat连接 link成员操作符迭代列表元素的添加普通方法:追加扩展插入列表元素的删除.pop()方法 弹出.remove 删除del 在内存中删除列表元素的修改可通过索引的方式对单个元素进行重新赋值通过切片的方式对多个元素进行重新赋值列表的查看.count()查看元素出现次数.index()查看元素最小索引...
2020-04-23 23:33:12
2433
原创 Python中常用的内置函数
文章目录最大值 max()最小值 min()求和 sum()枚举 enumerate()压缩 zip() 最大值 max() max()可以求最大值 a = max(3,5) print(a) 输出结果: 最小值 min() min()可以求最小值 a = min(3,5) print(a) 输出结果: 求和 sum() sum()可以进行求和 a = sum(range(0,101)) #...
2020-04-23 23:32:27
259
原创 python中字符变量的管理
文章目录字符串的定义字符串的特性索引(index)切片 (cut)连接(link)成员操作符字符元素的判断与操作: 字符串的定义 a = 'westoss' ##定义单个字符串 b = 'hellow' c = what\'s up ##\转译' e=""" ## 用户管理系统 1.添加用户 2.删除...
2020-04-23 23:31:40
318
原创 python中的逻辑判断
文章目录if条件语句if单独使用if~else合用逻辑运算符and 与逻辑or 或逻辑 if条件语句 基本书写方法: if单独使用 if condition: ##条件判断 success thing ##条件成立时做的事情 ... ## 可以多个任务 注意:条件语句后必须加冒号! 演示1:当年龄大于18岁时,输出success,否则不...
2020-04-18 19:01:13
5331
1
原创 python的IDE工具-----pycharm
文章目录pycharm的安装pycharm的基本使用 pycharm的安装 首先下载好pycharm的压缩包,进行解压缩。 进入bin目录,执行安装脚本:pycharm.sh 按照步骤完成安装: pycharm的基本使用 第一次进入pycharm,首先选择新建工程: 自定义工程名称: 可以手动添加解释器: 最后点击create自动船舰虚拟环境: 每一个工程都有单独虚拟环境,彼此独立,...
2020-04-18 18:59:56
428
原创 初识python
文章目录什么是pythonpython的安装使用源码编译方式安装python 什么是python Python是一种跨平台的计算机程序设计语言。 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越多被用于独立的、大型项目的开发。 Python是一种解释型脚本语言,可以应用于以下领域: -Web 和 I...
2020-04-18 18:59:27
166
原创 asible中的事实管理(变量)
文章目录事实介绍事实的调用创建自定义信息魔术变量 事实介绍 所谓“事实”,就是已经存在的,已经被定义好的。 事实包括:主机名称、内核版本、网络接口、IP地址等 。 打印ansible_facts 执行结果: 将事实全部打印了出来。几乎包含了主机的所有信息。 再playbook上的书写中,通常可以使用字典的形式对事实进行动态调用。 也可以使用 setup模块显示主机信息: 事实的调用 演示: ...
2020-04-18 18:58:46
249
原创 ansible中的加密
文章目录ansible-vault加密新文件加密文件的查看对加密码文件的编辑加密现有文件对加密文件进行解密:在解密的同时修改文件名加密文件密码的修改 当playbook中的服务配置文件中含有密码等敏感信息时,一般会对其进行加密。 加密工具:ansible-voault 当playbook被加密后无密码无法执行! ansible-vault 加密新文件 使用ansible-vault creat 目...
2020-04-18 18:57:46
923
原创 ansible中的变量
文章目录变量命名的规则变量的三个范围级别playbook中变量的定义playbook中变量的使用主机变量和组变量主机变量的定义使用已注册变量捕获命令输出 在playbook里,变量可以是用户,可以是安装的软件包,可以是要启动的服务,要删除的文件,查询的文档等等 将playbook中的某些值使用变量代替,从而 简化playbook的编写 变量命名的规则 量可能包含下面这些值: 要创建的用户、 要安装...
2020-04-11 18:59:52
531
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅