分类 linux 下的文章

记grep+wc取值在shell中的结果与手动执行结果不一致的坑

有一个shell脚本来备份mysql数据库,crontab每天凌晨2点启动,但是运行一段时间后发现有时候在备份数据库遇到锁表等情况,导致备份一直在等待,在下一次启动后,又在此处等待了;几天后,后台同时有多个备份脚本在执行;于是打算修改下脚本,在执行备份前判断是否有其他备份脚本在执行,有的话则报错退出并告警;现象下面是mysql_bak.sh脚本的一部分mysql_bak_num=`ps -e...

继续阅读 »

Centos给swap扩容

swap空间介绍swap分区的用处:swap是当物理内存不够用的时候,把数据放到swap中,所以swap起到了一个虚拟内存的作用,在某种意义上来说也算是加大了内存空间。一般swap分区是在安装系统时设置的,如果安装系统时忘记分swap分区或者分区太小,那也没事,还有补救的方法。下面就讲讲安装完CentOS系统后如何给swap分区扩容。场景:安装完CentOS Linux系统后,安装oracl...

继续阅读 »

Putty小工具Plink妙用

提及Putty大家都不陌生,Putty自带的工具Plink同样强大,本文就简单介绍下几种用法。Plink使用参数Usage: plink [options] [user@]host [command] Options: -V print version information and exit -pgpfp print PGP key fingerprints a...

继续阅读 »

linux下使用pmap和ldd查看进程调用了什么lib

在写安装脚本或者其他时候我们想了解某个经常调用了哪些lib,我们可以使用pmap方法,显示出的lib比较全面,当然也可以使用ldd来查看。接下来看看linux下使用pmap和ldd的命令。pmap命令使用方法:pmap 进程pid如下是查看sshd调用了哪些lib[root@localhost ~]# ps -ef|grep sshd root 1588 1 0 16...

继续阅读 »

Centos7下rc.local文件开机不执行

背景centos7以后rc.local和之前的有不太一样了,centos7默认开机不会执行,需要手工调整;解决办法查看rc.local文件cat /etc/rc.d/rc.local #!/bin/bash #这个文件是为兼容性才添加的 # THIS FILE IS ADDED FOR COMPATIBILITY PURPOSES #强烈建议使用systemd服务或udev规则来运行开机启动...

继续阅读 »

RabbitMQ使用分析和高可用集群搭建

RabbitMQ 基础理解​ RabbitMQ,是一个使用 erlang 编写的 AMQP(高级消息队列协议)的服务实现,简单来说,就是一个功能强大的消息队列服务。概念理解:Producer: 消息发送者RabbitMQ:Vhost: 相当于分组,每个vhost下数据是隔离的Exchange: 路由器,接收消息,本根据RoutingKey分发消息headers:消息头类型 路由器,内...

继续阅读 »

Windows和Linux利用原生命令查看文件MD5

背景在网络传输、设备之间转存、复制大文件等时,可能会出现传输前后数据不一致的情况。这种情况在网络这种相对更不稳定的环境中,容易出现。那么校验文件的完整性,也是势在必行的。md5sum命令用于生成和校验文件的md5值。它会逐位对文件的内容进行校验。是文件的内容,与文件名无关,也就是文件内容相同,其md5值相同。md5值是一个128位的二进制数据,转换成16进制则是32(128/4)位的进制值。...

继续阅读 »

maven命令行窗口指定settings.xml

setting.xml是什么从settings.xml的文件名就可以看出,它是用来设置maven参数的配置文件。并且,settings.xml是maven的全局配置文件。而pom.xml文件是所在项目的局部配置。 Settings.xml中包含类似本地仓储位置、修改远程仓储服务器、认证信息等配置

继续阅读 »

ssh port forwarding(ssh端口转发)

SSH的的Port Forward,中文可以称为端口转发,是SSH的一项非常重要的功能。它可以建立一条安全的SSH通道,并把任意的TCP连接放到这条通道中。下面仔细就仔细讨论SSH的这种非常有用的功能。SSH Tunnel有三种,分别是本地Local(ssh -NfL),远程Remote(ssh -NfR),动态Dynamic(ssh -NfD)。(含义参考man ssh)说明:在我们举例说...

继续阅读 »