diff --git a/zabbix_agentd.d/script/osMonitor.sh b/zabbix_agentd.d/script/osMonitor.sh index dc5b913..5f2a62c 100644 --- a/zabbix_agentd.d/script/osMonitor.sh +++ b/zabbix_agentd.d/script/osMonitor.sh @@ -6,10 +6,9 @@ #1、磁盘根分区剩余百分比 #返回数值,并添加触发器报警 #bug1: lsblk 收集信息问题 function disk() { - local _part _disk - _part=$(lsblk -b | grep "centos-root" | awk '{print $(NF-3)}' | awk -F'G' '{print $1}') - _disk=$(lsblk -b | grep sda | grep disk | awk '{print $(NF-2)}' | awk -F'G' '{print $1}') - echo "scale=2;a=${_part}/${_disk};if (length(a)==scale(a)) print 0;print a " | bc + local _part + _part=$(df -T |grep centos-root |awk '{print $(NF-1)}'|cut -d'%' -f 1) + echo $_part } #2、内存剩余百分比 #返回数值 @@ -45,7 +44,7 @@ function cpuLoad() { #bug3: 没有sudo权限 function fileMD5() { [ ! -f /tmp/md5.hash ] && sudo md5sum /etc/passwd /etc/shadow /etc/sudoers >/tmp/md5.hash && echo "数据收集中" - sudo md5sum -c /tmp/md5.hash | grep -E "FAILED|失败" + sudo md5sum -c /tmp/md5.hash 2>/dev/null | grep -E "FAILED|失败" } #6、系统启动时间 #返回任意类型 @@ -99,11 +98,11 @@ function services() { local s case $1 in servicesList) - s="$(ls /etc/systemd/system/multi-user.target.wants/)" + s="$(systemctl list-unit-files|grep enabled |wc -l)" echo $s ;; service) - ls /etc/systemd/system/multi-user.target.wants/ | wc -l + systemctl list-unit-files|grep enabled |awk '{print $1}' | awk -F '.' '{print $1}' ;; esac }