Centos救援模式挂载lvm的方法
进入到系统救援模式的命令行界面,这时你可以遇到一个问题,就是 linux 系统自动无法挂载到 /mnt/sysroot/上面。 you don't have any Linux partitions, Press return to get a shell. Thesystem will reboot automatically when you exit from the shell. 手动挂载也会提示出错。 mount /dev/sdb1 /mnt/sysimage/ mount unknown filesystem type ‘lvm2_member’ 查看当前逻辑卷。 lvdisplay | less 查看VG Name(激活逻辑卷用)和LV Name(挂载用)后面对应的值,我这里是vg_troubleshoot和/dev/vg_troubleshoot/lv_root。 激活逻辑卷(后面这个路径可能不存在,直接运行即可): vgchange -ay /dev/vg_troubleshoot 重新挂载。 mount /dev/vg_troubleshoot/lv_root /mnt/sysimage/ 挂载成功。
服务器巡检及邮件告警脚本
系统资源占用情况获取脚本为python开发: import psutil import sys import os import requests class UtilClass: def __init__(self, argv=None): self.args = argv def prt(self): try: rec = self.args[1] except IndexError: rec = 'help' if rec == 'cpu': print(int (psutil.cpu_percent())) elif rec == 'mem': print(int(psutil.virtual_memory().percent)) elif rec == 'swap': print(int(100 - psutil.swap_memory().percent)) elif rec == 'gen': print (int(psutil.disk_usage('/').percent)) elif rec == 'opt': print (int(psutil.disk_usage('/opt').percent)) elif rec == 'tomcat': tomcat=os.popen("ps aux | grep -w 'Seeyon' | grep -v 'grep' | wc -l").read().replace('\n', '') print (tomcat) elif rec == 'oracle': ...
python获取os.system()的执行结果
不能使用os.system()执行,需要用os.popen(). import os content=os.popen('help').read() print (content)
docker版zabbix请求短信接口脚本
docker版zabbix的系统是一个类似于安卓的操作系统,导致缺少了curl,且请求内容有中文会乱码。 解决办法:用wget请求短信web接口,并且在脚本中将中文转换成urlencode,再请求接口。 脚本如下: var=`echo $3 |tr -d '\n' |od -An -tx1|tr ' ' % | tr -d '\n'` wget 172.17.0.1:8080/$1/$2/$var -P /tmp/zabbbix.tmp
达梦集群重启顺序
进入达梦目录: cd /opt/dmdbms/bin 停止集群 关闭确认监视器: ./DmMonitorServiceDMMONITOR stop 关闭主库守护进程: ./DmWatcherServiceV3X stop 关闭主库数据库服务: ./DmServiceV3X stop 启动集群 启动主库数据库服务: ./DmServiceV3X start 启动主库守护进程: ./DmWatcherServiceV3X start 启动确认监视器: ./DmMonitorServiceDMMONITOR start 启动非确认监视器查看状态: ./dmmonitor /opt/dmdbms/data/DAMENG/dmmonitor_m.ini
达梦dts健康状态检查
该脚本用于zabbix监控达梦dts迁移进程的健康状态,首先查看脚本是否有报错,如果没有就检查日志时间戳,指定时间内有更新视为正常。 format_date=$(date +%s -r /opt/dmdbms/log/dmdts.log) now_date=$(date +%s) result=$(tail -n 20 /opt/dmdbms/log/dmdts.log) result2=$(tail -n 1 /opt/bgtG6NMainSql/runsql_main.log) if [[ ${result} =~ '失败' ]];then echo 'EXECError' elif [[ ${result2} =~ 'at' ]];then echo 'SQLError' else if [ $(($now_date-$format_date)) -gt 600 ];then echo 'RunError' else echo 'Normal' fi fi 推荐python3运行该脚本。