精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

優秀運維腳本鑒賞

dyquk4xk2p3d ? 來源:CSDN ? 2023-07-06 10:49 ? 次閱讀

	

	

一、根據PID過濾進程所有信息
#!/bin/bash
#Function:根據用戶輸入的PID,過濾出該PID所有的信息
read-p"請輸入要查詢的PID:"P
n=`ps-aux|awk'$2~/^'$P'$/{print$11}'|wc-l`
if[$n-eq0];then
echo"該PID不存在??!"
exit
fi
echo"--------------------------------"
echo"進程PID:$P"
echo"進程命令:`ps -aux| awk '$2~/^'$P'$/{print$11}'`"
echo"進程所屬用戶:`ps-aux|awk'$2~/^'$P'$/{print$1}'`"
echo"CPU占用率:`ps -aux| awk '$2~/^'$P'$/{print$3}'`%"
echo"內存占用率:`ps -aux| awk '$2~/^'$P'$/{print$4}'`%"
echo"進程開始運行的時刻:`ps -aux| awk '$2~/^'$P'$/{print$9}'`"
echo"進程運行的時間:`ps -aux| awk '$2~/^'$P'$/{print$10}'`"
echo"進程狀態:`ps -aux| awk '$2~/^'$P'$/{print$8}'`"
echo"進程虛擬內存:`ps -aux| awk '$2~/^'$P'$/{print$5}'`"
echo"進程共享內存:`ps -aux| awk '$2~/^'$P'$/{print$6}'`"
echo"--------------------------------"

ea532f1e-1b8c-11ee-962d-dac502259ad0.png

二、根據進程名過濾進程信息
會顯示出該進程名包含的所有線程

#!/bin/bash
#Function:根據輸入的程序的名字過濾出所對應的PID,并顯示出詳細信息,如果有幾個PID,則全部顯示
read-p"請輸入要查詢的進程名:"NAME
N=`ps-aux|grep$NAME|grep-vgrep|wc-l`##統計進程總數
if[$N-le0];then
echo"該進程名沒有運行!"
fi
i=1
while[$N-gt0]
do
echo"進程PID:`ps-aux|grep$NAME|grep-vgrep|awk'NR=='$i'{print$0}'|awk'{print$2}'`"
echo"進程命令:`ps -aux | grep $NAME|grep-vgrep|awk'NR=='$i'{print$0}'|awk'{print$11}'`"
echo"進程所屬用戶:`ps-aux|grep$NAME|grep-vgrep|awk'NR=='$i'{print$0}'|awk'{print$1}'`"
echo"CPU占用率:`ps -aux | grep $NAME|grep-vgrep|awk'NR=='$i'{print$0}'|awk'{print$3}'`%"
echo"內存占用率:`ps -aux | grep $NAME|grep-vgrep|awk'NR=='$i'{print$0}'|awk'{print$4}'`%"
echo"進程開始運行的時刻:`ps -aux | grep $NAME|grep-vgrep|awk'NR=='$i'{print$0}'|awk'{print$9}'`"
echo"進程運行的時間:` ps -aux | grep $NAME|grep-vgrep|awk'NR=='$i'{print$0}'|awk'{print$11}'`"
echo"進程狀態:`ps -aux | grep $NAME|grep-vgrep|awk'NR=='$i'{print$0}'|awk'{print$8}'`"
echo"進程虛擬內存:`ps -aux | grep $NAME|grep-vgrep|awk'NR=='$i'{print$0}'|awk'{print$5}'`"
echo"進程共享內存:`ps -aux | grep $NAME|grep-vgrep|awk'NR=='$i'{print$0}'|awk'{print$6}'`"
echo"***************************************************************"
letN--i++
done

ea85d8e2-1b8c-11ee-962d-dac502259ad0.png

三、根據用戶名查詢該用戶的相關信息

#!/bin/bash
# Function:根據用戶名查詢該用戶的所有信息
read-p"請輸入要查詢的用戶名:"A
echo"------------------------------"
n=`cat/etc/passwd|awk-F:'$1~/^'$A'$/{print}'|wc-l`
if[$n-eq0];then
echo"該用戶不存在"
echo"------------------------------"
else
echo"該用戶的用戶名:$A"
echo"該用戶的UID:`cat /etc/passwd | awk -F:'$1~/^'$A'$/{print}'|awk-F:'{print$3}'`"
echo"該用戶的組為:`id $A|awk{'print$3'}`"
echo"該用戶的GID為:`cat /etc/passwd | awk -F:'$1~/^'$A'$/{print}'|awk-F:'{print$4}'`"
echo"該用戶的家目錄為:`cat /etc/passwd | awk -F:'$1~/^'$A'$/{print}'|awk-F:'{print$6}'`"
Login=`cat/etc/passwd|awk-F:'$1~/^'$A'$/{print}'|awk-F:'{print$7}'`
if[$Login=="/bin/bash"];then
echo"該用戶有登錄系統的權限??!"
echo"------------------------------"
elif[$Login=="/sbin/nologin"];then
echo"該用戶沒有登錄系統的權限?。?
echo"------------------------------"
fi
fi

eb1dc044-1b8c-11ee-962d-dac502259ad0.png

四、加固系統的一些配置

#!/bin/bash
#Function:對賬戶的密碼的一些加固
read-p"設置密碼最多可多少天不修改:"A
read-p"設置密碼修改之間最小的天數:"B
read-p"設置密碼最短的長度:"C
read-p"設置密碼失效前多少天通知用戶:"D
sed-i'/^PASS_MAX_DAYS/cPASS_MAX_DAYS'$A''/etc/login.defs
sed-i'/^PASS_MIN_DAYS/cPASS_MIN_DAYS'$B''/etc/login.defs
sed-i'/^PASS_MIN_LEN/cPASS_MIN_LEN'$C''/etc/login.defs
sed-i'/^PASS_WARN_AGE/cPASS_WARN_AGE'$D''/etc/login.defs

echo"已對密碼進行加固,新用戶不得和舊密碼相同,且新密碼必須同時包含數字、小寫字母,大寫字母!!"
sed-i'/pam_pwquality.so/cpasswordrequisitepam_pwquality.sotry_first_passlocal_users_onlyretry=3authtok_type=difok=1minlen=8ucredit=-1lcredit=-1dcredit=-1'/etc/pam.d/system-auth

echo"已對密碼進行加固,如果輸入錯誤密碼超過3次,則鎖定賬戶?。?
n=`cat/etc/pam.d/sshd|grep"authrequiredpam_tally2.so"|wc-l`
if[$n-eq0];then
sed-i'/%PAM-1.0/aauthrequiredpam_tally2.sodeny=3unlock_time=150even_deny_rootroot_unlock_time300'/etc/pam.d/sshd
fi

echo"已設置禁止root用戶遠程登錄?。?
sed-i'/PermitRootLogin/cPermitRootLoginno'/etc/ssh/sshd_config

read-p"設置歷史命令保存條數:"E
read-p"設置賬戶自動注銷時間:"F
sed-i'/^HISTSIZE/cHISTSIZE='$E''/etc/profile
sed-i'/^HISTSIZE/aTMOUT='$F''/etc/profile

echo"已設置只允許wheel組的用戶可以使用su命令切換到root用戶!"
sed-i'/pam_wheel.souse_uid/cauthrequiredpam_wheel.souse_uid'/etc/pam.d/su
n=`cat/etc/login.defs|grepSU_WHEEL_ONLY|wc-l`
if[$n-eq0];then
echoSU_WHEEL_ONLYyes>>/etc/login.defs
fi

echo"即將對系統中的賬戶進行檢查...."
echo"系統中有登錄權限的用戶有:"
awk-F:'($7=="/bin/bash"){print$1}'/etc/passwd
echo"********************************************"
echo"系統中UID=0的用戶有:"
awk-F:'($3=="0"){print$1}'/etc/passwd
echo"********************************************"
N=`awk-F:'($2==""){print$1}'/etc/shadow|wc-l`
echo"系統中空密碼用戶有:$N"
if[$N-eq0];then
echo"恭喜你,系統中無空密碼用戶??!"
echo"********************************************"
else
i=1
while[$N-gt0]
do
None=`awk-F:'($2==""){print$1}'/etc/shadow|awk'NR=='$i'{print}'`
echo"------------------------"
echo$None
echo"必須為空用戶設置密碼!!"
passwd$None
letN--
done
M=`awk-F:'($2==""){print$1}'/etc/shadow|wc-l`
if[$M-eq0];then
echo"恭喜,系統中已經沒有空密碼用戶了!"
else
echo"系統中還存在空密碼用戶:$M"
fi
fi

echo"即將對系統中重要文件進行鎖定,鎖定后將無法添加刪除用戶和組"
read-p"警告:此腳本運行后將無法添加刪除用戶和組?。〈_定輸入Y,取消輸入N;Y/N:"i
case$iin
[Y,y])
chattr+i/etc/passwd
chattr+i/etc/shadow
chattr+i/etc/group
chattr+i/etc/gshadow
echo"鎖定成功!"
;;
[N,n])
chattr-i/etc/passwd
chattr-i/etc/shadow
chattr-i/etc/group
chattr-i/etc/gshadow
echo"取消鎖定成功?。?
;;
*)
echo"請輸入Y/yorN/n"
esac

eb3d963a-1b8c-11ee-962d-dac502259ad0.png


聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • PID
    PID
    +關注

    關注

    35

    文章

    1471

    瀏覽量

    85306
  • 腳本
    +關注

    關注

    1

    文章

    387

    瀏覽量

    14834
  • 運維
    +關注

    關注

    1

    文章

    253

    瀏覽量

    7544

原文標題:優秀運維腳本鑒賞

文章出處:【微信號:良許Linux,微信公眾號:良許Linux】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    Linux shell腳本分享

    今天浩道跟大家分享幾個Linux中常用到的shell腳本
    發表于 07-18 09:53 ?552次閱讀
    Linux shell<b class='flag-5'>腳本</b>分享

    Linux中常用的MySQL腳本

    在Linux中,使用MySQL進行常見的任務時,可以編寫一些腳本來簡化操作。以下是一些常用的MySQL
    發表于 09-07 09:49 ?736次閱讀

    Linux中常用的Shell腳本示例

    當談論一線工作中的常用 Shell 腳本時,以下是一些實用的例子。
    發表于 09-08 09:42 ?606次閱讀

    Linux常用腳本整理

    在日常工作過程中,經常要對服務器進行一些操作,整理了一些常用的一句話shell命令,使人員工作起來更加得心應手,如果您有什么好的一句話腳本,歡迎留言! 1、查找當前目錄下占用為0字節的文件并刪除
    發表于 10-02 21:51

    誠聘高級自動化工程師

    獵頭職位:高級自動化工程師【合肥】工作職責: 1、根據基礎架構管理需求,規劃設計自動
    發表于 12-12 10:37

    學習Linux發展方向

    及丟失等)、對網站的故障進行監控、解決網站運行的潛在安全問題、開發自動化腳本程序提高工作效率、規劃網站架構、程序發布流程和規范,制定工作制度和規范、配合開發人員部署并調試產品研發需要的測試環境、代碼
    發表于 07-25 17:15

    Linux都要會哪些shell技能

    在充斥著各種的互聯網+的數字時代,Linux也越來越趨于自動化方向發展,越來越多的工作者奔跑在了自動化
    發表于 11-30 17:38

    何為智能?

    一、何為智能?生產設備/裝備是工業的重要生產工具,其可靠性、性能對工業生產有重大影響。隨著工業大數據推進,設備的智能被定義為一個重要的應用領域。但何為智能
    發表于 07-12 06:34

    優秀工程師應當具備哪些技能

    對于我們這些剛入門的小白來說,極強的好奇心總會驅使我們去涉獵各種技術,弄到最后很可能該學的知識半懵半解,知識體系混亂,學習毫無章法。因此,我們學習時要有一個明確的目標和知識體系(也是我學習的目標),下面大概向大家介紹以下優秀
    的頭像 發表于 06-28 16:44 ?6753次閱讀

    一個工程師有話說:工作非常忙、很忙、比較忙

    一個狗有話說,經歷了手動、腳本、自動化
    的頭像 發表于 10-19 11:09 ?8378次閱讀

    常用的34個Linux Shell腳本

    Shell 腳本編程是在 Linux 下學習或練習編程的最簡單的方式。尤其對工程師處理著自動化任務,且要開發新的簡單的實用程序或工具等(這里只是僅舉幾例)更是必備技能。
    的頭像 發表于 05-09 15:26 ?1490次閱讀

    這5個常見場景,可以嘗試用Python去解決!

    當然,崗位的具體職責和要求可能因公司而異,有些公司可能并不要求工程師會使用 Python 腳本。但總的來說,學習 Python 可以
    的頭像 發表于 01-16 09:48 ?740次閱讀

    使用Python腳本實現自動化任務

    許多運工程師會使用 Python 腳本來自動化任務。Python 是一種流行的編程語言,具有豐富的第三方庫和強大的自動化能力,適用于許多不同的領域。
    的頭像 發表于 04-08 10:36 ?1637次閱讀

    軟通動力集成方案,助力企業數智化升級

    出席峰會,見證了華為行業服務解決方案Hi-OPS的全新升級,并分享了軟通動力與華為聯合方案優秀實踐。 華為行業
    的頭像 發表于 11-17 22:05 ?609次閱讀

    管理平臺:從基礎到智能的飛躍

    管理平臺為企業提供了從基礎到智能的飛
    的頭像 發表于 04-16 16:26 ?398次閱讀