转载-shell 13问

前言 shell编写入门的时候,有幸看到比较经典的 shell 13问,碰到有大佬整理成 markdown 格式,转载过来 1、为何叫做 Shell? 我们知道计算机的运作离不开硬件,但却无法直接操作硬件,硬件的驱动只能通过一种称之为“操作系统(OS,Opertating System)的软件来管控。Linux 严格来说……

阅读全文

spring cloud gateway的一些细节注意

前言 spring cloud 2.* 的路由用的是 gateway 方案,不再是 1.* 时代的 zuul 了,不过也带来了新问题,这里整理下近期优化 gateway 的鉴权带来的爬坑记录 1、理解 gateway 与 zuul 比较 SpringCloud Gateway 是 Spring Cloud 的一个全新项目,该项目是基于 Spring 5.0,Spring Boot 2.0 和 Project Reactor 等技术开发的网关,它旨在为微服务架构提供一种简单有效的统一的 API 路由管理方式。 SpringCloud Gateway 作……

阅读全文

linux后台执行可用方式整理

前言 最近答疑群友如何后台运行 ssh 连接后的操作,整理了下日常常见的后台执行方式,方便知识梳理。 1、nohup方式 1 2 # nohup sh shell.sh & 查看日志:tail -f nohup.out 2、disown方式 1 2 # sh shell.sh & disown 查看日志:断开终端后,不能再查看日志 3、screen方式 执行screen,如果命令不存在,需要先安装:……

阅读全文

redis日常使用的一些建议

前言 最近处理了几起redis不安全的阿里云服务器,总结下一些建议 1、安全建议 1.1、设置bind 默认bind 0.0.0.0是默认值,相当于不设防 1 2 3 bind 0.0.0.0 建议修改成链接端的IP,比如 bind 192.168.100.101 1.2、设置auth 默认是不设置密码,相当于不需要密码和鉴权就可以访问 1 2 3 requirepass foobared 建议开启密码访……

阅读全文

logrotate日志切割

前言 无意间找到nginx下的日志切割组件,比以前用脚本每日备份好多了,研究了一番用法 1、关于日志切割 日志文件包含了关于系统中发生的事件的有用信息,在排障过程中或者系统性能分析时经常被用到。对于忙碌的服务器,日志文件大小会增长极快,服务器会很快消耗磁盘空间,这成了个问题。除此之外,……

阅读全文

vmstat介绍

前言 vmstat是virtual memory statistics 的缩写,它是Linux下一个非常有用的监控工具,除了内存之外,还提供 块 IO、CPU 时间 等额外的信息 1、语法 vmstat 命令的执行不需要特殊的权限,普通用户就可以执行,其语法形式如下 1 vmstat [options] [delay [count]] delay 表示数据更新间隔,单位是秒,如果没有指定此值,表示系统启动以来……

阅读全文

挖矿病毒4-容器挖矿病毒清理

前言 1月26日,运维同学收到告警邮件,告诉我某台测试服务器中了挖矿病毒,心想怎么最近挖矿这么猖狂… 1、分析准备 仍然下载是busybox 1 2 3 4 wget https://busybox.net/downloads/binaries/1.30.0-i686/busybox chmod +x busybox cp busybox /usr/bin busybox top 2、按步骤排查 剩余步骤跟挖矿病毒2-分析和排查思路一样,只是所有的命令前面是 busybox command 不过这次是容器挖矿,EC……

阅读全文

挖矿病毒3-分析和清理过程

前言 1月23日,公司邮箱收到说阿里云报了挖矿病毒的警告 1、分析 这次思路改进了些,起初有个只是定时任务没被清理,阿里云通过定时任务关键字"pool.minexmr.com:4444"报了蠕虫病毒,但是根据关键字查看,这像挖矿 然后 top 了半天没看到结果,怀疑是top被……

阅读全文

一些正则小细节-不定期补充

前言 记录日常工作碰到的一些正则小细节 1、group分组 需要通过()把提取的参数圈起来,这样才会产生分组 1 2 3 4 5 6 7 8 9 10 private static String collectMapperId(String value) { String result = ""; String regId = "id=\"(.*?)\""; Pattern pattern = Pattern.compile(regId); Matcher matcher = pattern.matcher(value); if (matcher.find()) { result = matcher.group(1); } return result; } 对比如果没有(),是没有分组效果的 1 2 Exception in thread "main" java.lang.IndexOutOfBoundsException: No group 1 at java.util.regex.Matcher.group(Matcher.java:538) 阅读源码和源码中的注释,其实也是s.……

阅读全文

最近文章

分类

标签

其它