Expect 远程执行检查函数

需安装 才能正常使用。

 install -y expect;
#!/usr/bin/env 
#expect 功能检查
set -e;

EXPECT_CHECK(){
  local EXUSR=${1}
  local EXHOST=${2}
  local EXPWD=${3}
  #ssh test
  EXP_RST=`
    expect -c "
      set timeout 300
      spawn ssh ${EXUSR}@${EXHOST} \" PASS\"
      expect {
        \"not known\" {send_user \"[exec  -e Erro:Host not known\n];exit\"}
        \"Connection refused\" {send_user \"[exec  -e Erro:Connection refused\n];exit\"}
        \"(yes/no)?\" {send \"yes\r\";exp_continue}
          \"password:\" {send \"${EXPWD}\r\";exp_continue}
        \"Permission denied\" {send_user \"[exec  -e Erro:Wrong \n];exit\"}
      }
    "| -E 'PASS|Erro'| -v echo| 's/\r//g;s/\n//g'
  `
  if [[ ${EXP_RST} && ${EXP_RST} == PASS ]]; then
    echo -e "\nEXPECT CHECK COMPLETE!\n";
    return 0;
  else
    echo -e "\n${EXUSR}@${EXHOST} EXPECT CHECK ERROR!\n";
    echo -e "\n${EXP_RST}\n";
    return 1;
  fi
}
Expect 远程执行检查函数

Linux 使用 autojump 直达目录

介绍这款神器之前,先来确认一个问题。在 的使用过程中,如何快速地到达指定目录?

很多人肯定会说,使用 tab 补全大法啊,笨!

嗯,没错,在没认识到 之前,我也是这么想的,但熟悉使用过这款神器后,才明白什么叫所达即所想。也就是无需考虑中间还有多少层目录,你只需要记住最终目录的名称,就可以快速进入该目录……

Continue reading “Linux 使用 autojump 直达目录”

Linux 使用 autojump 直达目录

Sed 命令详解

之前在《glob 及 grep 正则表达式简介》里面介绍过 egrepfgrep 这些文本过滤器。下面来说说 流编辑器。

简介

Sed(Stream EDitor),流编辑器,行编辑工具,默认不直接编辑文件。每次读出一行数据放入内存,在内存中的模式空间( pattern space )中进行匹配,将匹配到的行进行修改,之后放入保存空间,然后再输出到标准输出;未匹配到的行直接输出到标准输出。

Continue reading “Sed 命令详解”

Sed 命令详解

LAMP 手动安装小结

越来越多的开源工具选择同样开源 PHP 作为其运行环境,比如 ,以及最近在研究的 。要想使用这些个工具,安装 必不可少,而使用 或 apt 来安装又难管理,所以推荐手动安装 。作为使用开源工具必装的工具,觉得拆分开来单独记录很有必要,后续分析其他工具时有需要可直接链接引用,不用再重新记录,遂记录步骤如下。

Continue reading “LAMP 手动安装小结”

LAMP 手动安装小结

shell 使用 expect 编写远程执行脚本

作为自动交互工具,在 里应用广泛,在设置密码的情况下,可以模拟人工流程对远程主机执行指定操作,大大简化了登录流程,降低了运维成本。但如果直接把功能写在一个脚本,密码要明文定义,不是很安全,而且其他地方调用也不方便,既然这样,何不把 远程登录执行写成一个函数,供其他脚本快捷调用呢,在方便的同时,也可以通过权限控制,有效地避免密码泄露。下面就来说说如何把 远程执行功能变成一个可调用的函数。

Continue reading “shell 使用 expect 编写远程执行脚本”

shell 使用 expect 编写远程执行脚本

OwnCloud 开启 ssl 访问

使每个人都有能力创建自己的云服务器,而无需支付服务费用或申请许可。个人云存储提供了更灵活的选择,用户可以完全控制它,而非受制于第三方。这意味着更低的成本,更大的自主性,减少信息外泄风险和广泛的适应性。–wiki

既然是文件服务器,就不得不讨论一下安全性,官方也建议使用https进行访问。由于官方对开启ssl的描述过于简单,所以觉得有必要记录一下。

Continue reading “OwnCloud 开启 ssl 访问”

OwnCloud 开启 ssl 访问

shell 按时间段截取日志

作为运维工作人员,看日志查问题,以及统计日志关键字,是很常见的工作。有时候由于访问量大,加上开发未能很好地控制日志级别,导致日志刷得非常快,不容易实时查问题不说,还会导致日志非常大,后期查询统计也不方便。

现在就来说说,如何使用 命令,截取一段时间内的日志并进行保存分析。

Continue reading “shell 按时间段截取日志”

shell 按时间段截取日志

Hbase 自动重启脚本

前端时间测试 HbaseRegions 总是挂掉,在查找原因的同时,为了防止半夜挂掉而导致数据出问题,遂打算编写个脚本,让其在检测到 HbaseRegions 挂掉时,能自动进行重启。即使不进行重启操作,也权当一个监控工具吧,可以结合《如何自定义 nagios 监控》和《 nagios 实现 QQ群 告警》对 HbaseRegions 进行监控。

Continue reading “Hbase 自动重启脚本”

Hbase 自动重启脚本