问题如下    最近登录一台服务器,提示如下错误并截图如下:no matching host key type found. Their offer: ssh-dss。    解决方案    查阅了下资料说是 因为OpenSSH 7.0以后的版本不再支持ssh-dss (DSA)算法,官方的说法是这个算法太弱了。Mac电脑升级之后版本是高于7的。可以通过加参数支持改算法如下ssh -oHostKeyAlgorithms=+ssh-dss user@ip
  问题        最近我们遇到了一个问题,我们有的Job是常驻的,输出的日志是固定为了,例如如下命令(once.sh 是一个死循环的脚本),这样所有的命令都要输出日志到 notice_wechat.log{ /bin/sh jobs/bin/once.sh notice/wechat ;} >> /data/logs/jobs/notice_wechat.log 2>&1        如果使用默认的logrotate【logrotate基础传送门】的配置,就会重命名然后生产一个新文件,例如 notice_wechat.log_20221020 。但是进程是常驻的,切割之后日志会输出到 notice_we
  起因        我在慕课有个flask 入门的课程:点击这里查看慕课课程。当时课程讲解的使用学习的视频网站已经不再提供服务了,为了方便大家学习这里重新找了一个视频源。这里郑重声明:该代码仅用于学习演示,请大家妥善使用,不要给源网站造成任何压力。示例代码新建一个python文件,文件名称是 movie2.py,代码如下# -*- coding: utf-8 -*- from application import app, db import requests, os, time, hashlib, json, re from bs4 import BeautifulSoup from common.libs.DataHelper&
缘由        最近看到了2个项目,促使我再次核查了以下这个软件是什么。这两个项目是 webterminal 和 jumpserver 。这两个项目里面都有一个功能 运维审计,用户行为录像。挺好奇这个录像怎么做的,就去找了下有咩有类似的开源软件。其实以前在上海安居客的时候我们运维也有这种软件,但是具体是不是叫这个名字我不太清楚,我个人觉得这种录屏软件挺神奇了 就想了解下,当然由于种种原因 直到本周我才认真查阅了下,找到了这个可以实现这个功能的软件:asciinema介绍        asciinema 是一个开源命令行终端录制器,它可以将命令行输入输出的任何内容加上时间保存在文件中,同时还提供方法在终端或者web浏览器中进行回放。asciinema的录制和播放都是基于文本的,相比传统的video有很多好处,例如录制
  缘由        最近我们一台高防服务器,在同步服务器时间时报 no server suitable for synchronization found,最后经查实是机房屏蔽了udp端口所致,因为ntpdate同步时间使用的是udp123端口。rdate解决方案        既然ntp不行我们改用rdate 完全可以解决因国内一些高防机房屏蔽UDP端口而造成的时间无法同步问题。同时rdate使用的端口是37安装yum install rdate同步安装完成之后可以先手动同步 : /usr/bin/rdate -s time.nist.gov 。最保险的方式是配置定时任务 每10分钟或者半个小时执行一次*/10 * * * * /usr/bin/rd
ftp?还有人用?其实在没有出来跑以前也觉得FTP应该死绝了,在上海各个比较可以的互联网公司,听到研发用FTP不说都鄙视吧,至少很多人认为没技术追求。但是我不得不说,在研发人员眼里觉得很Low的工具,在非专业人员眼里。需求来源方是:在互联网公司都会有设计或者前端,有很多公司其实只做单页面的,根本不需要什么后端人员。让设计或者前端学习Git 必要性不大,FTP又是一个交互非常有好的GUI工具服务,导致这种需求还是很旺盛的需求每个人元要有单独的账号不同账号可能允许访问的目录不一样记录操作日志配置环境安装vsftp#安装 yum install -y vsftpd #设置开机启动 systemctl enable vsftpd.service命令讲解#启动 systemctl start vsftpd.service #停止 systemctl stop vsftpd.service #查看状态 s
ELK简介ELK是什么?    elk是三个开源软件的缩写,分别是:Elasticsearch、Logstash、Kibana 。由于Logstash 客户端太占用资源,对服务器的要求比较高,后来FileBeat出现了 ,解决了资源问题,官方也推荐这个工具。    Elasticsearch:实时全文搜索和分析引擎,提供搜集、分析、存储数据三大功能    Logstash:日志收集,分析,过滤并转化到对应的存储库    Kibana:一个基于Web的图形界面,用于搜索、分析和可视化存储在 Elasticsearch指标中的日志数据    Filebeat:监控日志文件、转发。 需要收集数据的服务器端需要安装这个架构图如上图你可以看出来,FileBeat 将数据 通过队列 发给 Logstas
起因        最近总是遇到悲催的事情,这次的事情更悲催,某机房提供服务供应商跑路了,早上10点多通知 晚上6点断电,我X你的仙人板板。抱怨归抱怨,但是烂屁股的事情还得擦。 没办法只能换机房了,幸好早都勾搭上了一家高防供应商。但是迁移也是一个麻烦事情。        窘境需要备份的文件过大        目前这边公司的主要提供广告服务,所有各种图片,静态页面比较多,图片总共差不多80G(分别是30G、50G 两个文件夹)待迁移的服务器过多    大概负责3个公司,高防机器总共5台。在相对差不多8个小时(其实不到6个小时,因为整理好这些机器的业务之后差不多12点了)要处理好这些迁移事情,时间总体来说肯定是不够的
悲催的事情    今天下午2点多(时间发生故障的时间是14:14 ,反馈时间却是:14:25 )收到运营推广部门同事告知,网站打不开了,这个烦呀,怎么会打不开了,由于以前的系统有问题,都重新写了,切换到新的系统上面了,打不开就直接报错了,报错页面如下分析过程 找到错误日志               出现错误不可怕,这一点我们必须第一时间明确,千万不要担心,担心解决不了任何问题。 对我们最有帮助的就是各种业务日志。通过查阅日志得出如下的错误,当时出现了大量的错误日志curl: (56) Recv failure: Connection reset by peer       
缘由最近在录制 从不知到全面了解HTTPS  这个视频,在使用acme.sh 申请ssl证书的时候 ,安装脚本出错,错误信息大致如下curl: (7) Failed to connect to raw.githubusercontent.com port 443: Connection refused解决方案绑定hosts的方式  $ vim /etc/hosts 199.232.68.133 raw.githubusercontent.com
  最近使用了acme.sh 生产了 Let's Encrypt 的https 证书,但是在实际服务器上测试遇到如下问题$ curl  "https://www.aaa.com" 如下错误 curl: (60) Peer's Certificate issuer is not recognized. More details here: http://curl.haxx.se/docs/sslcerts.html curl performs SSL certificate verification by default, using a "bundle"  of Certificate&
起因今天登陆服务器想查看一个端口的占用情况,发现好多TIME_WAIT的情况,吓我一跳。如下是TCP 建立连接的示意图缘由time_wait的作用TIME_WAIT状态存在的理由: 1)可靠地实现TCP全双工连接的终止    在进行关闭连接四次挥手协议时,最后的ACK是由主动关闭端发出的,如果这个最终的ACK丢失,服务器将重发最终的FIN, 因此客户端必须维护状态信息允许它重发最终的ACK。如果不维持这个状态信息,那么客户端将响应RST分节,服务器将此分节解释成一个错误(在java中会抛出connection reset的SocketException)。 因而,要实现TCP全双工连接的正常终止,必须处理终止序列四个分节中任何一个分节的丢失情况,主动关闭的客户端必须维持状态信息进入TIME_WAIT状态。   2)允许老的重复分节在网络中消逝  TCP分节可能由于路由器异常而“迷途”,在迷途期间,TCP发送端可能因确认超时而重发
缘由在前面写过一个文章 人生苦短,我用Python  给大家简单介绍了一下Python 能做什么。然后广告了下当时的新课程 Python Flask构建微信小程序订餐系统 。该课程上线之后有些同学反馈没有详细讲解Flask的基础知识 和 课程改造的框架为什么这么来的。基于该原因,重新录制了一门新课程:Python Flask 从入门到精通 。希望大家可以喜欢演示地址:http://movie.54php.cn 大纲课程简介本次课程相对来说比较基础,但是麻雀虽小,五脏俱全。重点是从头到尾的给大家梳理讲解整个Flask 框架的完整知识,并通过演变的方式给大家讲解如何打造构造层次分明的高可用MVC框架。主要是告诉大家为什么?而不是就这样用,让大家明白原理。课程是在双系统下面给大家讲解的,大家可以根据自己喜欢的操作系统进行学习:Windows 和 Linux CentOS7。而Python 我们选择的是3.7版本学习路径【收费
缘由最近由于工作调整,很多基础工作都要准备。对我们研发来讲,代码写完了还需要部署到生产环境。那就无法避免的要部署生产服务器的环境。由于软件一直会有更新迭代。这里我们就说下MySQL8.0在CentOS7安装的一个全过程配置源由于默认源已经不再有MySQL软件信息了,所以需要自己去官方下载并安装wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm  yum localinstall  mysql80-community-release-el7-3.noarch.rpm yum install mysql-community-client mysql-community-server服务操作service mysqld start #启动 service mysqld r
开场白一转眼工作将近7个年头,时间过得好快哇。年少不懂事,上天惩罚我,婚也结了。不要暗恋哥,哥已是传说。恍恍惚惚过了这么多年,想整理下个人技能树,也提醒下自己我的技能树经常看到各种技能树,那我也来一发,我认为作为一个研发人员,不应该只会自己领域内的东西,不要让自己的路越走越窄。熟话说:技多不压身,有精力就多学点了。如下图(点击打开大图:我要看大图)个人实战过得系统工作这么多年,做过了不少东西,想到就列出来,其他零星小的就不说了个人博客地址:http://www.54php.cn 虚拟化Vagrant :http://www.54php.cn/default/26.html RBAC:http://www.54php.cn/default/42.htmlYii2打造后台+微信全栈图书商城: http://book.54php.cn/ Python3 + Flask构建微信小程序订餐系统:https://food.54php.cn/ 快速上手Linux 玩转典型
  查看软件xxx安装内容:dpkg -L xxx 查找软件库中的软件:apt-cache search 正则表达式 查找软件库中的软件:aptitude search 软件包 查找文件属于哪个包:dpkg -S filename 查找文件属于哪个包:apt-file search filename 查询软件xxx依赖哪些包:apt-cache depends xxx 查询软件xxx被哪些包依赖:apt-cache rdepends xxx 增加一个光盘源:sudo apt-cdrom add 系统升级:sudo apt-get update;sudo apt-get dist-upgrade 清除已删除包的残馀配置文件:dpkg -l |grep ^rc|awk&
接着上一篇博文继续 【No.1】监控Linux性能25个命令行工具10:mpstat -- 显示每个CPU的占用情况该命令可以显示每个CPU的占用情况,如果有一个CPU占用率特别高,那么有可能是一个单线程应用程序引起的mpstat -P ALL 1 Linux 3.13.0-75-generic (lnmp)  06/25/2016  _x86_64_ (2 CPU) 02:28:59 PM  CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest&nb
Docker是什么Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从Apache2.0协议开源。Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低从这个解释我们不知道大家有没有想到一个优点类似的东西,没错就是 Vagrant :  vagrant打造跨平台可移动的开发环境    ,那么这两个东西有什么区别咧?Docker 与 Vagrant的区别从字面意思上来讲,这两个东西都可以实现虚拟化。Vagrant 是基于Virtualbox等虚拟机软件的实现的(Vagrant 本身并不提供虚拟技术,只是调用Virtualbox等提供的接口,进行虚拟机的管理),而Docker是基于LXC轻量级容器虚拟技术。一般我们用Vagrant来部署开发环境,Do
如果你的Linux服务器突然负载暴增,告警短信快发爆你的手机,如何在最短时间内找出Linux性能问题所在?通过以下命令或者工具可以快速定位topvmstatlsoftcpdumpnetstathtopiotopiostatuptimedmesg | tailmpstat -P ALL 1pidstat 1free -msar -n DEV 1sar -n TCP,ETCP 1IPTrafpsacct 或者 acctMonitNetHogsiftopMonitorixArpwatchSuricataVnStat PHPNagios Zabbix1:Top-Linux进程监控Linux下的Top命令是一个性能监控程序,许多系统管理员常常用它来监控Linux性能,在许多Linux或者类Unix操作系统里都有这个命令。Top命令用于按一定的顺序显示所有正在运行而且处于活动状态的实时进程,而且会定期更新显示结果。这条命令显示了CPU的使用率、内存使用率、交换内存使用大小、高速缓存使用大小
  1)判断进程是否存在,如果不存在再执行启动命令,可以避免一个脚本同时启动多份if [ $(ps -ef |grep  bastion_account.sh|grep -v grep|wc -l) -eq 0 ];then     nohup sh bastion_account.sh & fi2)如何批量kill进程?ps -ef|grep 'python' |grep -v grep| awk '{print $2}’ | xargs kill -93)查看端口netstat -lnpt 查看服务 ss -e 
  最近在Quora上看到一个问答题目,关于在高效率Linux用户节省时间Tips。将该题目的回答进行学习总结,加上自己的一些经验,记录如下,方便自己和大家参考。下面介绍的都是一些命令行工具,这些工具在几位回答者的日常工作中都很有用。对于任何不了解的命令,请使用“man <COMMANDNAME>“查看,或者使用Google。有些命令需要先用 yum, apt-get install 命令安装。1、基本命令了解基本的bash通读整个bash man page.学习VIM在Linux系统上,虽然你有Emacs和Eclipse,但是VIM仍然是无出其右的利器。了解SSH,基本的无密码验证方式。例如通过ssh-agent, ssh-add等。 《灵犀志趣》平时都使用如下脚本完成无密码验证,省事省力。执行方式 sh nopasswd USER REMOTE_HOST执行此脚本前,请确认:—本机上已有 id_dsa.pub ,若无。 使用命令 ssh-keygen -t dsa 获得。—远
  • 微信公众号 微信小程序
  • 微信机器人
  • 群1:1046090432
  • 群2:585567981