實戰:運維必備Linux巡檢腳本
巡检意义
巡检脚本
vim /root/dean.sh
#! /bin/bash # Author:Dean # Web:https://www.bunian.cn # 微信公众号:不念博客 #color notes NC='33[0m' GREEN='33[0;32m' RED='33[0;31m' YELLOW='33[0;33m' cyan='33[0;36m' yellow='33[0;33m' #Sectioning ......... echo -e "${YELLOW}---------------------------------------------------------------------------------------------------------------${NC}" echo "Server details:" echo -e "${YELLOW}---------------------------------------------------------------------------------------------------------------${NC}" #fetching basic specs from the server(user,ip,os) user=`whoami` echo -e "${cyan}User:${NC} $user" hostname=`hostname` echo -e "${cyan}hostname:${NC} $hostname" ip=`hostname -I` echo -e "${cyan}IP address:${NC} $ip" os=`cat /etc/os-release | grep 'NAME|VERSION' | grep -v 'VERSION_ID' | grep -v 'PRETTY_NAME' | grep NAME` echo -e "${cyan}OS:${NC} $os" #Sectioning..... echo -e "${YELLOW}---------------------------------------------------------------------------------------------------------------${NC}" echo "Service status:" echo -e "${YELLOW}---------------------------------------------------------------------------------------------------------------${NC}" sleep 1 #checking tomcat status echo -e "${yellow}1) Tomcat${NC}" #grepping tomcat status from ps aux pp=`ps aux | grep tomcat | grep "[D]java.util"` if [[ $pp =~ "-Xms512M" ]];then echo -e " Status: ${GREEN}UP${NC}" else echo -e " Status: ${RED}DOWN${NC}" fi echo "" #function to check apache is running or not! function apache(){ echo -e "${yellow}2) Apache-httpd${NC}" #grepping apache status from ps aux httpd=`ps aux | grep httpd | grep apache` if [[ $httpd =~ "apache" ]];then echo -e " Status: ${GREEN}UP${NC}" else echo -e " Status: ${RED}DOWN${NC}" fi } #function to check elastic is running or not function elastic(){ echo -e "${yellow}3) Elasticsearch${NC}" #grepping elasticsearch status from ps aux elastic=`ps aux | grep elasticsearch` if [[ $elastic =~ "elastic+" ]];then echo -e " Status: ${GREEN}UP${NC}" else echo -e "Status: ${RED}DOWN${NC}" fi #function to check mysql is running or not } function mysql(){ echo -e "${yellow}4) Mysql${NC}" #grepping mysql status from ps aux mysql=`ps aux | grep mysqld` if [[ $mysql =~ "mysqld" ]];then echo -e " Status: ${GREEN}UP${NC}" else echo -e " Status: ${RED}DOWN${NC}" fi } function docker(){ echo -e "${yellow}5) Docker${NC}" #grepping docker status from ps aux docker=`systemctl status docker | grep dead` if [[ $docker =~ "dead" ]];then echo -e " Status: ${GREEN}UP${NC}" else echo -e " Status: ${RED}DOWN${NC}" fi } #calling functions apache echo "" elastic echo "" mysql echo "" docker echo "" #Sectioning............ #Fetching mem and cpu informations echo -e "${YELLOW}---------------------------------------------------------------------------------------------------------------${NC}" echo "Memory Details:" echo -e "${YELLOW}---------------------------------------------------------------------------------------------------------------${NC}" sleep 1 #view mem info free -h #get uptime details uptime=$(uptime | awk '{print $3,$4}' | cut -f1 -d,) echo -e "${cyan}System Uptime:${NC} :$uptime" #Fetching the load average loadaverage=$(top -n 1 -b | grep "load average:" | awk '{print $10 $11 $12}') echo -e "${cyan}Load average:${NC}: $loadaverage" echo -e "${cyan}The top 10 services with high resource usage are listed below.${NC}" #Get top services with high resource utilization ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%mem | head #sectioning........... #Fetching server space details! echo -e "${YELLOW}---------------------------------------------------------------------------------------------------------------${NC}" echo "Server space Details:" echo -e "${YELLOW}---------------------------------------------------------------------------------------------------------------${NC}" #View disk space details df -h echo "----------------------------------------------------------------------------------------------------------------"
我们可以将该脚本转换为全局命令,将文件移动到 sbin 目录,并赋予执行权限。
mv /root/dean.sh /usr/sbin chmod +x /usr/sbin/dean.sh
添加至别名里
vim /root/.bashrc alias dean='sh /usr/sbin/dean.sh'
生效
source .bashrc
现在您可以在 shell 的任何位置调用该脚本。
dean
执行效果
优势
- 只需一个命令就可以轻松访问完整的服务器信息,并且还可以在出现问题时安排警报通知。
- 编辑脚本并添加服务非常简单。
- 显示有关正在运行的进程、磁盘空间、宕机时间、内存详细信息、高进程列表等的详细信息。
以上是實戰:運維必備Linux巡檢腳本的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

解決方法:1、檢查電驢設置,確保已輸入正確的伺服器位址和連接埠號碼;2、檢查網路連接,確保電腦已連接到互聯網,並重置路由器;3、檢查伺服器是否在線,如果您的設定和網路連線都沒有問題,則需要檢查伺服器是否在線上;4、更新電驢版本,造訪電驢官方網站,下載最新版本的電驢軟體;5、尋求協助。

RPC伺服器不可用進不了桌面怎麼辦近年來,電腦和網路已經深入到我們的生活中的各個角落。作為一種集中運算和資源共享的技術,遠端過程呼叫(RPC)在網路通訊中起著至關重要的作用。然而,有時我們可能會遇到RPC伺服器無法使用的情況,導致無法進入桌面。本文將介紹一些可能導致此問題的原因,並提供解決方案。首先,我們需要了解RPC伺服器不可用的原因。 RPC伺服器是一種

如何在Linux系統中執行.sh檔?在Linux系統中,.sh文件是一種被稱為Shell腳本的文件,用於執行一系列的命令。執行.sh檔案是非常常見的操作,本文將介紹如何在Linux系統中執行.sh文件,並提供具體的程式碼範例。方法一:使用絕對路徑執行.sh文件要在Linux系統中執行一個.sh文件,可以使用絕對路徑來指定該文件的位置。以下是具體的步驟:打開終

身為LINUX用戶,我們經常需要在CentOS上安裝各種軟體和伺服器,本文將詳細介紹如何在CentOS上安裝fuse和建置伺服器的過程,幫助您順利完成相關操作。 CentOS安裝fuseFuse是一個使用者空間檔案系統框架,允許非特權使用者透過自訂檔案系統實現對檔案系統的存取和操作,在CentOS上安裝fuse非常簡單,只需按照以下步驟操作:1.開啟終端,以root用戶登入。 2.使用下列指令安裝fuse軟體包:```yuminstallfuse3.確認安裝過程中的提示,輸入`y`繼續。 4.安裝完

剪映是影片編輯工具,具有全面的剪輯功能,支援變速,有多元濾鏡和美顏的效果,還有豐富的曲庫資源。在這款軟體中,可以直接對影片進行剪輯,也可以建立剪輯腳本,但是該怎麼操作呢?本篇教學小編就來介紹一下剪映製作腳本的方法。 製作方法 1、在電腦中點選開啟剪映軟體,然後找到「創作腳本」選項,點選開啟。 2、在創作腳本頁面中,輸入“腳本標題”,然後在大綱中輸入拍攝內容的簡介。 3、如何在大綱中就能看到「分鏡描述」選項,在框內可以

DHCP中繼的作用是將接收到的DHCP封包轉送到網路上的另一個DHCP伺服器,即使這兩台伺服器位於不同的子網路中。透過使用DHCP中繼,您可以實現在網路中心部署集中式的DHCP伺服器,並利用它為所有網路子網路/VLAN動態分配IP位址。 Dnsmasq是一種常用的DNS和DHCP協定伺服器,可設定為DHCP中繼伺服器,以協助管理網路中的動態主機設定。在本文中,我們將向您展示如何將dnsmasq配置為DHCP中繼伺服器。內容主題:網路拓樸在DHCP中繼上設定靜態IP位址集中式DHCP伺服器上的D

在網路資料傳輸中,IP代理伺服器扮演著重要的角色,能夠幫助使用者隱藏真實IP位址,保護隱私、提升存取速度等。在本篇文章中,將介紹如何用PHP建立IP代理伺服器的最佳實務指南,並提供具體的程式碼範例。什麼是IP代理伺服器? IP代理伺服器是位於使用者與目標伺服器之間的中間伺服器,它可作為使用者與目標伺服器之間的中轉站,將使用者的請求和回應轉發。透過使用IP代理伺服器

epic伺服器離線進不了遊戲怎麼辦?這個問題想必很多小夥伴都有遇過,出現了此提示就是導致正版的遊戲無法啟動,那麼出現這個問題一般是網絡和安全軟體幹擾導致的,那麼應該怎麼解決呢,本期小編就來和大夥分享解決方法,希望今日的軟體教學可以幫助各位解決問題。 epic伺服器離線進不了遊戲怎麼辦: 1、很可能是被安全軟體幹擾了,將遊戲平台和安全軟體關閉在重啟。 2、其次就是網路波動過大,嘗試重啟一次路由器,看看是否有效,如果條件可以的話,可以嘗試使用5g移動網絡來進行操作。 3、然後有可能是更
