Shell日常巡檢指令碼大全

2021-10-10 01:56:39 字數 3725 閱讀 7292

[zhen@localhost ~]$ sh shell.sh 

現在登陸的使用者是:zhenhao

語言/編碼:en_us.utf-8

主機名:localhost.localdomain

閘道器:192.168.72.2

本機ip:192.168.72.7

本機的dns如下:

nameserver 223.5.5.5

nameserver 8.8.8.8

shell.sh: line 19: /opt/passwd.md5: permission denied

顯示ok檔案沒有被串改 /etc/passwd: ok

最後啟動:boot 2020-10-28 19:59

執行時間2:03:34:30 6:59

當前系統:gnu/linux

系統型別為:3.10.0-1062.el7.x86_64

系統核心資訊為:3.10.0-1062.el7.x86_64

cpu架構: x86_64

發行版本:centos linux release 7.7.1908 (core)

檢視selinux狀態:enabled

物理cpu個數: 2

邏輯cpu個數: 4

cpu型號: amd ryzen 5 2500u with radeon vega mobile gfx

已經安裝的核心包:kernel-3.10.0-1062.el7.x86_64

以下是普通使用者

polkitd chrony putong zhenhao jenkins dockerroot saslauth

記憶體總量為:4060

記憶體剩餘總量為:2846

使用記憶體:796m

系統磁碟資訊:

磁碟總量為:20g

總共磁碟大小:2.0g

磁碟剩餘總量為:15798408

你不是root使用者

[zhen@localhost ~]$

#!/bin/bash

#模組(如有需要在匯出來)

function_all(

)'`"

#檢視本機ip :ip addr|grep inet|egrep -v 'inet6|127.0.0.1'|awk ''|awk -f/ ''

echo "本機ip:`ifconfig | grep broadcast | awk ''`"

#檢視本機的dns

echo "本機的dns如下: "

echo "`cat

/etc/resolv.conf | grep -v '^#'`"

#把md5sum /etc/passwd碼 生成到/opt.passwd.md5下

md5sum /etc/passwd > /opt/passwd.md5

#顯示ok證明passwd裡沒有被修改過,如果顯示failed證明改動過

echo

"顯示ok檔案沒有被串改 `md5sum -c /opt/passwd.md5`"

#系統時間

%f_%t`"

#系統最後啟動時間

echo "最後啟動:`who -b | awk ''`"

echo "執行時間2:`uptime | awk ''

| sed 's/,//g'`"

#檢視屬於什麼系統

echo "當前系統:`uname -a | awk ''`"

#系統的型別

echo "系統型別為:`uname -r`"

#系統核心資訊

echo "系統核心資訊為:`uname -a|awk ''`"

#顯示計算機硬體架構

echo "cpu架構: `uname -m`"

#系統的版本號

echo "發行版本:`cat

/etc/redhat-release`"

#檢視selinux狀態

echo "檢視selinux狀態:`/usr/sbin/sestatus | grep 'selinux status:'

| awk ''`"

#檢視物理cpu個數

echo "物理cpu個數: `cat

/proc/cpuinfo | grep "physical id"

| awk ''

|sort

| uniq | wc -l`"

#檢視邏輯cpu個數

echo "邏輯cpu個數: `cat

/proc/cpuinfo | grep "processor"

| awk ''

|sort

| uniq | wc -l`"

#cpu的型號資訊

echo "cpu型號: `cat

/proc/cpuinfo | grep "model name"

|sort

| uniq | awk -f":"

''`"

#查詢安裝核心資訊

echo "已經安裝的核心包:`rpm -qa|grep -i ^kernel-

[1-9]`"

#檢視普通使用者

echo "以下是普通使用者"

echo `grep -v nobody /etc/passwd|awk -f: '$3>=500 '`

#記憶體總量以下

echo "記憶體總量為:`free -m|awk '/mem/ '`"

#記憶體的剩餘總量

echo "記憶體剩餘總量為:`free -m|awk '/mem/ '`"

#記憶體的使用量

echo "使用記憶體:`free -mh | awk "nr==2"

| awk ''` "

#磁碟系統資訊

echo "系統磁碟資訊:`fdisk -l 2> /dev/null|grep '^disk /dev/'

|awk -f,

''`"

#磁碟總量:lsblk |awk '/disk/' 也可以如下:

echo "磁碟總量為:`lsblk |awk '/disk/'`"

#磁碟總共的大小

echo "總共磁碟大小:`df -ht | awk "nr==2"

|awk ''`"

#磁碟剩餘的總量

sum=(`df -t|grep -v "tmpfs"|sed '1d'|awk ''`)

int=0

for ((i=0;i<`echo $`;i++))

do int=`expr $int + $`

done

echo "磁碟剩餘總量為:$int

"# 設定檢測環境變數。

source /etc/profile

export lc_all=c

tmp_file=/tmp/check_tmp_file

check_id=$(id|sed -e 's/(.*$//'

-e 's/^uid=//'

)if [ $check_id -ne 0 ]

then

echo -e "你不是root使用者"

exit 0

fi#網路是否可以ping通

echo "網路連線:正常"

else

echo "網路連線:失敗"fi}

function_all

shell指令碼 日常巡檢

以下內容僅為提供思路 對於運維來說,每天對所管理的伺服器進行一次以上的巡檢是最基本的工作,當然,天天free df的敲鍵盤很麻煩,這時候最好寫乙個日常巡檢的指令碼,辛苦一天,輕鬆一年 巡檢指令碼有兩種思路,一種是當你想親眼看一看系統狀況的時候,每台伺服器都親自執行一遍這個指令碼 另一種是將所有功能封...

日常巡檢 指令碼

bin bash function system os time date f t os run time uptime awk awk f,os last reboot time who b awk os hostname hostname echo 系統型別 os type echo 系統版本 ...

企業日常巡檢指令碼

bin bash system shiji date f t yunxin uptime awk awk f congqi who b awk host hostname echo 系統型別 lei xin echo 系統版 本 leixin echo 系統版本 leixin ech o 系統 版本...